为什么 iptables 日志中的 echo-r​​equest ping 数据包是 84 字节?

为什么 iptables 日志中的 echo-r​​equest ping 数据包是 84 字节?

当我记录回显请求数据包的长度时,

iptables -A OUTPUT -p icmp -m icmp --icmp-type 8 -j LOG

我看到长度是LEN=84,但是在wireshark中,捕获的数据包大小是0x60,为什么不同?

答案1

LEN十进制,其中输出0x中的wireshark表示十六进制。 16 * 6 = 96

如果您正在查看Ethernet帧,那么您必须从中减去1418(带有 vlan 标记),留下8278。如果这是封装数据包的大小IP,那么这将相当大,并导致我假设您调整了大小ping -s

通常,由不带参数的 Linux ipv4 ping 生成的 icmp 类型 8 数据包包含48“数据”16字节ICMP和字节头,20字节IP头留下一个84字节数据IP包。那么您确定在wireshark中查看的数字正确吗?

(这并不是真正的答案,但评论太长了,没有意义)

相关内容