IPv6 地址的伯克利数据包过滤器 (BPF) 语法

IPv6 地址的伯克利数据包过滤器 (BPF) 语法

我有一个 pcap 文件,我正在使用一个实用程序来处理其数据包。此实用程序接受 Berkeley 数据包过滤器 (BPF) 过滤器来过滤要处理哪些数据包。

我只想操作具有特定目标或源地址的 IPv6 数据包,例如:2001:4f8:3:d::61 或 2607:f2c0:f00f:b001::face:b00c。

此处应写入什么正确的 BPF 过滤器?

答案1

你有没有尝试过ip6 net <your_ipv6_network_prefix>https://www.tcpdump.org/manpages/pcap-filter.7.html

如果数据包的 IPv4/v6 目标地址的网络号为 net,则为真。Net 可以是来自网络数据库(/etc/networks 等)的名称,也可以是网络号。IPv4 网络号可以写成点分四组(例如 192.168.1.0)、点分三组(例如 192.168.1)、点分对(例如 172.16)或单个数字(例如 10);点分四组的网络掩码为 255.255.255.255(这意味着它实际上是主机匹配),点分三组为 255.255.255.0,点分对为 255.255.0.0,单个数字为 255.0.0.0。IPv6 网络号必须完整写出;网络掩码为 ff:ff:ff:ff:ff:ff:ff:ff,因此 IPv6“网络”匹配实际上始终是主机匹配,并且网络匹配需要网络掩码长度。

相关内容