【问题标题】:Wireshark Capture Filter ExampleWireshark 捕获过滤器示例
【发布时间】:2016-06-25 16:45:26
【问题描述】:

这是关于 Wireshark 数据包捕获过滤器的。

  1. IP版本不是4的IP包

解决方案:

过滤器:

ip[0] & 0xF0      != 0x40
ip[0] & 1111 0000 != 64

谁能说明如何推断出上述解决方案?

提前致谢, 亚当

【问题讨论】:

  • 如果我的回答对你有用,mark it as accepted。如果没有,请在需要时添加评论以要求澄清或更正(我想您只能根据您当前的声誉对您自己的问题发表评论,但不用担心我会阅读它)。

标签: hex wireshark ipv6 packet packet-capture


【解决方案1】:

根据IPv4包结构:

你有第一个八位字节的版本,在上半字节。如您在图片中看到的,IPv4 数据包的版本是“4”,但请记住它必须在上半字节,因此过滤器中的 0x40(十进制为 64)。

所以您的过滤器所做的就是抓取 IP 标头的第一个字节,并与 0xF0 AND 以确保它保留版本部分(上半字节)然后检查它是否与0x40IPv4数据包)不同。

您还可以做的是: ip[0] & 0xf0 == 0x60

这和说的一样,只保留IPv6 数据包。 IPv6包中的版本等于6。版本信息的位置与IPv4包头相同:

【讨论】:

    猜你喜欢
    • 2017-08-08
    • 2015-09-10
    • 2011-11-15
    • 1970-01-01
    • 1970-01-01
    • 2022-01-04
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多