【问题标题】:How can I see the full snaplen capture using tcpdump?如何使用 tcpdump 查看完整的 snaplen 捕获?
【发布时间】:2011-07-22 17:48:07
【问题描述】:

使用 tcpdump 时,我似乎看不到捕获的所有数据。具体来说,我似乎缺少帧头部的 6 个字节,我想知道是否有人可以解释原因。

为了说明,我在 VMWare 上以仅主机的网络配置设置了一个 Ubuntu 实例。为了生成流量,我 ping VMWare 网关……在我的例子中:

$ ping 192.168.153.1

现在捕获并打印数据:

$ tcpdump -i eth0 -x -s 64
...
10:23:24.419067 IP 192.168.153.1 > ubuntu.local: ICMP echo reply, id 2959, seq 137, length 64
    0x0000:  4500 0054 2313 4000 4001 63bf c0a8 9901
    0x0010:  c0a8 9984 0000 af80 0b8f 0089 0cb2 294e
    0x0020:  1d64 0600 0809 0a0b 0c0d 0e0f
10:23:25.418807 IP ubuntu.local > 192.168.153.1: ICMP echo request, id 2959, seq 138, length 64
    0x0000:  4500 0054 0000 4000 4001 86d2 c0a8 9984
    0x0010:  c0a8 9901 0800 df7f 0b8f 008a 0db2 294e
    0x0020:  e463 0600 0809 0a0b 0c0d 0e0f

正如预期的那样,此时显示的总字节数不是 64;数据链路标头被隐藏,IP 字节最先出现,即“4500”。为了显示数据链接头字节,我添加了另一个 x。

$ tcpdump -i eth0 -xx -s 64
...
10:29:29.523043 IP 192.168.153.1 > ubuntu.local: ICMP echo reply, id 2959, seq 501, length 64
    0x0000:  000c 292a 4f6c 0050 56c0 0001 0800 4500
    0x0010:  0054 b305 4000 4001 d3cc c0a8 9901 c0a8
    0x0020:  9984 0000 007d 0b8f 01f5 79b3 294e 5cfa
    0x0030:  0700 0809 0a0b 0c0d 0e0f
10:29:30.522884 IP ubuntu.local > 192.168.153.1: ICMP echo request, id 2959, seq 502, length 64
    0x0000:  0050 56c0 0001 000c 292a 4f6c 0800 4500
    0x0010:  0054 0000 4000 4001 86d2 c0a8 9984 c0a8
    0x0020:  9901 0800 f77b 0b8f 01f6 7ab3 294e 5cfa
    0x0030:  0700 0809 0a0b 0c0d 0e0f

现在显示更多字节。我认为它们是以太网帧头的 14 个字节(目标,源 MAC + ethertype = 14 个字节)。相应地,IP 标头现在开始下一行的 14 个字节。

但是为什么仍然缺少 6 个字节?请注意,只显示了 58 个字节 - 我原本希望 64 个字节可见。

【问题讨论】:

    标签: tcpdump


    【解决方案1】:

    尝试使用带有-s0的tcpdump

    我试过了,它对我有用..(这只是你只需要 -s0 的一个例子)

    tcpdump -X -s0 port 21

    【讨论】:

    • 感谢您的建议。这也适用于我显示数据包的完整尾部(比 64 字节多得多),但即使使用 -s0 ,头部似乎仍然缺少 6 个字节。我误解你的回答了吗?
    【解决方案2】:

    最小以太网帧大小为 64 字节。当有效载荷太小时,以太网将填充其内容。 IP 头的总长度值将用于确定填充的开始位置,该填充将被丢弃,因此不会被 Tcpdump 显示。

    【讨论】:

      猜你喜欢
      • 2016-06-28
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2022-01-04
      • 1970-01-01
      相关资源
      最近更新 更多