我正在编写一个多线程 ping 程序。我在每个线程(针对每个 IP)上创建了 rawsocket,并使用 sendto() 向每个线程发送了 ICMP Echo Request,然后在每个线程中执行了 recvfrom()。我从各种套接字中的 IP 获取消息(例如,如果我使用套接字 S1 发送到 IP1,我会收到从 IP1 到 S1、S2 等的回显回复)。我需要做绑定吗?
另一个问题是,即使我只发送了 1 个 ICMP 请求,我也会从目标收到许多回显回复。有什么办法可以限制这个吗?这导致我错过了一些其他 ICMP 数据包。有没有办法让我的程序要求目标停止发送 ICMP 回显?
谢谢,