UDP Client empfängt nichts

delphinis

Mitglied
Hallo,
ich habe einen UDP-Server und versuche dem verzweifelt ein UDP-Packet zu senden und die antwort zu empfangen.
Das ganze hab ich mit dem Wireshark untersucht. Das Senden funktioniert, ich bekomme auch eine Antwort (Wireshark) aber das Java Programm bleibt beim socket.receive() stecken!

Den Code hab ich mehr oder weniger von
Galileo Computing :: Java 7 - Mehr als eine Insel - 11 Netzwerkprogrammierung

Ich habe den code auf das nötigste reduziert:
Java:
import java.io.IOException;
import java.net.DatagramPacket;
import java.net.DatagramSocket;
import java.net.InetAddress;

public class Main {
  static DatagramSocket socket;

  public static void main(String[] args) {
    try {
      open();
      send();
      receive();
      close();
    } catch (IOException e) {
        e.printStackTrace();
    }
  }
	
  static void open() throws IOException {
    socket = new DatagramSocket(50101);    
  }
  
  static void close() throws IOException {
    socket.close();
  }
  
  static void send() throws IOException {
    // send data
    byte[] remoteIp = {16, 0, 0, 1};
    InetAddress remoteAddress = InetAddress.getByAddress(remoteIp); 
    int remotePort = 50100;
    byte[] sendData = {0x20, 0x30};
    DatagramPacket packet = new DatagramPacket(sendData, sendData.length, remoteAddress, remotePort);
    socket.send(packet );    
   }
 
  static void receive() throws IOException {
    byte[] recData = new byte[ 1024 ];
    DatagramPacket packet = new DatagramPacket( recData, recData.length );
    socket.receive(packet);
    System.out.println(packet.getData());
  }
 
}


hier noch ein Printscreen vom Wireshark (receive ist erweitert):
udp.jpg

ist es vielleicht ein Problem, dass da nur 4 byte zurückkommen?

Weiss jemand rat?
 
Zuletzt bearbeitet:

Zurück
Oben