【发布时间】:2013-02-06 15:54:37
【问题描述】:
参考Java 6 API docs for the DatagramSocket 类:
UDP 广播发送始终在 DatagramSocket 上启用。为了 要接收广播数据包,DatagramSocket 应该绑定到 通配符地址。在一些实现中,广播包也可以 当 DatagramSocket 绑定到更具体的地址时接收。
谁能告诉我“通配符地址”是什么?以下对于侦听 UDP 广播是否有效:
MulticastSocket socket = new MulticastSocket(new InetSocketAddress(InetAddress.getByName("0.0.0.0"),4445);
【问题讨论】:
-
这里rhyshaden.com/ipadd.htm 是关于通配符的一整节 :) 对于收听广播,一个通配符绑定的 DatagramSocket 就足够了。
-
Carlo,这确实是我上面示例的基础,但我想知道使用 0.0.0.0 是否是“好习惯”..
-
嗯,这是收听来自任何发件人的广播的唯一做法。
标签: java network-programming broadcast multicast datagram