Java-Multicast-Lebensdauer ist immer 0

8

Ich habe ein Problem mit dem Setzen der TTL auf meine Datagram-Pakete. Ich rufe die Methode setTTL (...) für das Paket auf, bevor ich das Paket an den MulticastSocket sende, aber wenn ich das Paket mit ethereal aufnehme, wird das TTL-Feld immer auf 0 gesetzt

    
Mark Harrison 26.09.2008, 14:34
quelle

2 Antworten

6

Komisch, dass Sie das fragen sollten, weil ich gerade schrieb gestern darüber , hatte ich das gleiche Problem vor 6 Monaten. Grundsätzlich müssen Sie eine spezielle Systemeigenschaft festlegen, die der JVM die Verwendung eines IPv4-Stacks mitteilt:

%Vor%     
pfranza 26.09.2008, 14:35
quelle
0

Um Pfranzas Korrektur in Oracle zu implementieren, wo Sie keine Befehlszeile haben:

Setzen Sie die Eigenschaft java.net.preferIPv4Stack=true in jeder Oracle-Sitzung wie folgt, bevor Sie den Java-Code aufrufen, der den Multicast-Aufruf mit dem folgenden PL / SQL-Code enthält:

%Vor%

Wenn der Aufruf erfolgreich ist, wird NULL zurückgegeben.

    
Mark Harrison 02.12.2013 19:36
quelle

Tags und Links