如何强制完全校验UDP数据?

时间:2011-02-11 01:06:54

标签: linux networking udp

根据http://kerneltrap.org/mailarchive/linux-netdev/2007/9/23/272755,Linux不会为发往环回接口的数据包生成完整校验和。我想强制UDP校验和。我怎么能这样做?

2 个答案:

答案 0 :(得分:0)

UDP的校验和是可选的,您也可以将其设置为0。

如果由于某种原因需要它,为什么不自己创建校验和? E.g:

http://www.netfor2.com/udpsum.htm

然后(至少如果您使用原始套接字,我不确定您是否可以使用普通UDP套接字执行此操作)只需使用计算的校验和更新数据包。

答案 1 :(得分:0)

问题在于您的NIC具有硬件校验和支持,并且Linux正在使用它,因此永远不会在内核中设置校验和。尝试禁用硬件校验和,但要注意性能开销。