UDP Multicastproblem

Status
Nicht offen für weitere Antworten.

renek

Mitglied
Hallo zusammen

Ich habe folgenden Code als Test geschrieben:

Code:
DatagramSocket socket = new DatagramSocket( 4711 ); 
 
    while ( true ) 
    { 
      // Auf Anfrage warten 
 
      
      DatagramPacket packet = new DatagramPacket( new byte[1024], 1024 ); 
      socket.receive( packet ); 
 
      // Empfänger auslesen 
 
      InetAddress address = packet.getAddress(); 
      int         port    = packet.getPort(); 
      int         len     = packet.getLength(); 
      byte[]      data    = packet.getData(); 
 
	  
      System.out.println( "Daten von " + address + 
                          " vom Port " + port + 
                          " Länge " + len + 
                          "\n" + new String( data, 0, len ) ); 
    }

Das Programm wartet solange bis es Daten auf Port 4711 empfängt. Nur leider reagiert es sowohl auf direkt adressierte als auch Broadcast Datenpakete.
Wie kann ich herausfinden, ob die Daten NUR für diesen einen Client bestimmt waren und kein Broadcast.

Gruß René
 

renek

Mitglied
Morgen

Auf die Idee bin ich auch schon gekommen. Nur wie komme ich an den IP-Header ran? Im UDP-Header steht ja nur die Quell-IP. Welche Funktion muss ich dafür aufrufen?

Gruß René
 

HoaX

Top Contributor
blöd wenn das wirklich nicht drinnen steht. bleibt dir wohl nur je ip einen eigenen serversocket zu binden.
 
Status
Nicht offen für weitere Antworten.

Neue Themen


Oben