是否有一个 wireshark 显示过滤器可以查找没有答复的 ICMP 回显请求?
答案1
在 Wireshark 中,您可以使用 MATE 插件来实现此功能。我刚刚使用最新版本 (1.6.0) 进行了测试,它包含在默认安装包中。
首先,创建一个文本文件来保存 MATE 的以下配置:
Pdu ping_pdu Proto icmp Transport ip {
Extract addr From ip.addr;
Extract icmp_type From icmp.type;
Extract icmp_seq From icmp.seq;
};
Gop ping_pair On ping_pdu Match (addr, addr, icmp_seq) {
Start (icmp_type=8);
Stop (icmp_type=0);
};
在 Wireshark 中,转到“首选项”并在协议列表中找到 MATE。它有一个配置参数,即配置文件的位置。将其指向您保存使用上述内容创建的文件的位置。
此时,您可以重新启动 Wireshark 并确保 MATE 正确解析配置。
现在您可以打开捕获,所有 ping 请求和响应都应该在详细信息窗格中有一些标题为“MATE”的额外数据。每个“ping_pdu”都与其对应项分组为“ping_pair”。
现在应用以下过滤器:
mate.ping_pair.NumOfPdus==1
这将选出只有 1 个成员(即没有响应的请求)的“ping_pairs”。