当我记录回显请求数据包的长度时,
iptables -A OUTPUT -p icmp -m icmp --icmp-type 8 -j LOG
我看到长度是LEN=84
,但是在wireshark中,捕获的数据包大小是0x60
,为什么不同?
答案1
是LEN
十进制,其中输出0x
中的wireshark
表示十六进制。 16 * 6 = 96
如果您正在查看Ethernet
帧,那么您必须从中减去14
或18
(带有 vlan 标记),留下82
或78
。如果这是封装数据包的大小IP
,那么这将相当大,并导致我假设您调整了大小ping -s
通常,由不带参数的 Linux ipv4 ping 生成的 icmp 类型 8 数据包包含48
“数据”16
字节ICMP
和字节头,20
字节IP
头留下一个84
字节数据IP
包。那么您确定在wireshark中查看的数字正确吗?
(这并不是真正的答案,但评论太长了,没有意义)