4

我有一个正在广播 UDP 数据包的线程。我有另一个线程正在监听相同的广播。这样我的应用程序就可以检测网络上的其他实例。但是我有一个问题,当一个实例广播时,它会自行拾取并认为它本身就是另一个节点。我的问题是你怎么能可靠地确定一个数据包来自你自己,所以它可以被忽略?我说的很可靠,因为我知道您可以在套接字上调用 setLoopbackMode(true) 以防止环回,但是根据 api 文档,这种方法并不总是有效?

4

1 回答 1

4

检查源 IP 地址。如果它与您自己的地址相同,请丢弃该包裹。如果您无法确定从哪个接口发送,请确保检查所有可能的源地址。

于 2012-03-11T13:24:13.900 回答