我如何通过 JPCAP 等待特定类型的数据包(ICMP 回显请求)。我使用以下代码来监听到达的数据包:
PacketCapture m_pcap = new PacketCapture();
m_pcap.open("\\Device\\NPF_{007262BD-....-7EE83D72EBEA}", true);
m_pcap.setFilter("proto ICMP", true);
m_pcap.addPacketListener(new PacketHandler());//PacketHandler just displays the packet contents
m_pcap.capture(-1);
现在由于使用了 m_pcap.capture(-1),捕获将永远阻塞。我想要的是它应该等到从特定 IP 地址收到 ICMP 回显请求消息,然后阻塞应该结束。