我在ip 224.2.2.3和端口8888上有java中的MulticastReceiver和MulticastSender。当我在Windows XP上运行接收器时,我无法接收数据包。我所有的linux接收器都按预期接收数据包。当发件人在Windows上时,情况也很好。
还有什么需要调整吗?
答案 0 :(得分:4)
如果您的接收器有多个网卡(例如安装了VirtualBox),请降低第二个以太网卡的优先级。
开始 - >控制面板 - >网络设置 - >更改适配器设置 - >互联网协议属性 - >高级 - >取消选中自动度量标准并提供高值(例如800)
答案 1 :(得分:1)
将套接字绑定到0.0.0.0,以便它可以通过所有接口接收多播。您可能还必须通过所有接口加入组。
绑定到多播地址本身似乎是一个Linux主义。它在Windows上不起作用。
答案 2 :(得分:0)
我在Windows 2008服务器和接收器上使用多播套接字发件人作为包括PC在内的不同网络设备。但是,从来没有遇到过在Windows 7专业版上使用0.0.0.0的挑战(不确定XP)。我使用226.x.x.x地址。大多数224.x.x.x地址都被IP多播空间注册表占用(不确定XP是否已禁止它们),默认情况下我看到它不适用于多播接收器。您的端口号似乎很好,符合允许的范围。