Java-UDP组播接口:许多IP

时间:2019-01-27 22:48:10

标签: java networking multicast inetaddress multicastsocket

我已经编写了一个多播本地服务器,并且正在检测多个网络接口。这样,来自客户端的每条消息都会在每个接口中发送到服务器一次,从而导致同一条消息被发送多次。

这是代码:

Enumeration<NetworkInterface> faces = NetworkInterface.getNetworkInterfaces();

    while (faces.hasMoreElements()) {
        NetworkInterface iface = faces.nextElement();
        if (iface.isLoopback() || !iface.isUp())
            continue;

        Enumeration<InetAddress> addresses = iface.getInetAddresses();

        while (addresses.hasMoreElements()) {
            InetAddress addr = addresses.nextElement();
            socket.setInterface(addr);
            socket.send(sending);
        }
    }

如何检测消息何时已通过(到达服务器)发送,因此消息仅发送一次?有什么想法吗?

谢谢。

0 个答案:

没有答案