Networking IP头校验和:0x0000

Networking IP头校验和:0x0000,networking,header,ip,checksum,traffic,Networking,Header,Ip,Checksum,Traffic,我有一个JAX-RSWeb服务,它通过TLS进行保护。因此,加密非常重要。我决定使用RawCap检查网络流量,并使用WireShark进行分析。这样做,我无意中发现了以下信息: Header checksum: 0x0000 [incorrect, should be 0xac15 (may be caused by "IP checksum offload"?)] 这条消息的原因是什么 还有什么后果吗 我很确定我的RESTEasy客户端没有问题,因为通过FireFox检索ressource会

我有一个JAX-RSWeb服务,它通过TLS进行保护。因此,加密非常重要。我决定使用RawCap检查网络流量,并使用WireShark进行分析。这样做,我无意中发现了以下信息:

Header checksum: 0x0000 [incorrect, should be 0xac15 (may be caused by "IP checksum offload"?)]
  • 这条消息的原因是什么
  • 还有什么后果吗

  • 我很确定我的RESTEasy客户端没有问题,因为通过FireFox检索ressource会产生相同的消息。

    这是传出的数据包吗

    如错误消息所示,已启用IP校验和卸载。这意味着计算机的TCP/IP堆栈不计算校验和。相反,NIC硬件在发送数据包之前进行计算


    这不是一个真正的错误。你可以放心地忽略它

    这不是来自您的应用程序-它是由TCP/IP堆栈引起的。许多实现不(或不总是)填写报头校验和,将其保留为0x0000

    正如Wireshark所指出的,其中一个原因是,操作系统和NIC驱动程序的某些组合使操作系统认为校验和将由NIC(硬件加速)填充,但事实上并非如此


    这不是一个真正的问题,只要您的传输路径是可靠的。好吧,这不是一个安全风险。

    在这种情况下,校验和字段被忽略,没有任何后果。然而,校验和字段通常用于验证数据包的完整性。不正确的校验和通常表示错误(可能是EMI)或完整性损失,并可能表示存在妥协

    @Eugene你是说校验和为0x0000的IP数据包是可交付/可接受的吗?当然可以!有些操作系统可以设置为拒绝它们,但这是一个非常奇特的设置。0x0000是完全合法的,意味着“未计算校验和”@djf I站更正!我只是查了一下,“0x0000==未计算”仅对UDP有效,而对TCP无效。很抱歉。@Eugene Thx重复检查。是的,从客户端发送到服务器。但两者都在本地主机上运行。