繁体   English   中英

使用原始套接字创建 IP、IGMP 数据包时,如何在这些数据包中填充十六进制值?

[英]While creating IP, IGMP packets using Raw Sockets, How to fill the hex value in those packets?

我有一个 IP 数据包,其中包括 IGMP 数据包。 我想使用 RAW 套接字编程来模拟这一点。 IP数据包的校验和字段是e1c9,现在如何在编程中分配这个值。 我试过 iphdr->iph_chksum="e1c9";

还有 iphdr->iph_chksum=57801;

以上是对的吗?

它无法正常工作,请告诉我确切的方法?

在这种情况下,十六进制值的 C 语法是0xe1c9 但是,您应该确保使用正确的字节顺序,您可能需要通过htons传递值

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM