本人写了个捕获并分析UDP数据报的程序,遇到下面一些问题:
(1)捕获到一个数据包,用packet_handler函数处理,有个参数pcap_pkthdr *header,header->caplen和header->len都比较小,但本人把IP首部的净荷长度和UDP首部的净荷长度提取出来,它们都是好几万,这是怎么回事?(下图)
(2)IP首部中的净荷长度为什么比UDP首部中的数据长度始终大5100?既然UDP数据报作为IP的载荷,它们不应相等吗?(下图,IP_len-20-UDP_len=5100,其中20是IP首部长度)
解决方案:40分
你确定你没提取错吗? UDP 的长度不可能那么大的