Lua如何检测从同一主机发送到多播组的数据包?

我正在使用Lua Socket库与一个多播组通信。问题在于每当一个主机向该组发送数据包时,监听该组的套接字都会接收到自己的流量。

起初,我认为我只需要在第一次发送数据包后,通过udpSocket:getsocketname()获取地址:端口,并将其与udpSocket:receivefrom()进行比较,不处理相匹配的消息。但是,这两个根本不匹配。:getsocketname()将报告“0.0.0.0”作为IP,而来自:receivefrom()的IP是我的实际IP (“ something.not.all.zeroes”)

除了尝试在每个数据包中发送一些可以唯一识别其来源的数据并不处理来自同一主机的数据包之外,我不知道如何处理这个问题。

点赞