Ich habe eine einfache Testklasse geschrieben, die auf Eth hören und alle Daten empfangen soll. UDP Pakete, die an den Hafen gehen 5001
:
public class Main {
public static void main(String[] args) throws SocketException, UnknownHostException, IOException {
DatagramSocket socket = new DatagramSocket(5001, InetAddress.getByName("255.255.255.255"));
socket.setBroadcast(true);
System.out.println("Listen on " + socket.getLocalAddress() + " from " + socket.getInetAddress() + " port " + socket.getBroadcast());
byte[] buf = new byte[512];
DatagramPacket packet = new DatagramPacket(buf, buf.length);
while (true) {
System.out.println("Waiting for data");
socket.receive(packet);
System.out.println("Data received");
}
}
}
Es funktioniert nicht mehr. Er druckt aus Waiting for data
tcpdump zeigt mir, dass UDP-Broadcast-Pakete kommen. Was mache ich falsch? Ich danke Ihnen vielmals.