Я написал Multicast Local Server и обнаружил несколько сетевых интерфейсов.Таким образом, каждое сообщение от клиента отправляется на сервер один раз для каждого интерфейса, что приводит к тому, что одно и то же сообщение отправляется несколько раз.
Это код:
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);
}
}
Как я могу обнаружитькогда сообщение было отправлено (и достигло сервера), чтобы сообщения были отправлены только один раз?Есть идеи?
Спасибо.