我正在使用 lua 套接字库与多播组通信。我遇到的问题是,每当主机向组发送数据包时,监听该组的套接字将接收自己的流量。
起初,我认为我需要做的就是,在第一次发送数据包后,获取地址:端口,并将其与匹配的消息进行udpSocket:getsocketname()
比较,udpSocket:receivefrom()
并且不处理匹配的消息。但是,这些根本不匹配。 :getsocketname()
将报告"0.0.0.0"作为 ip,而来自的 ip:receivefrom()
是我的实际 ip ("something.not.all.zeroes")。
除了尝试发送一些数据以及可以唯一识别它的每个数据包之外,我不知道处理这个问题的好方法,并且不处理来自同一主机的数据包。