Domanda

Ho un problema con l'impostazione del TTL sui miei pacchetti Datagram. Sto chiamando il metodo setTTL (...) sul pacchetto prima di inviare il pacchetto a multicastSocket ma se acquisisco il pacchetto con etereo il campo TTL è sempre impostato su 0

È stato utile?

Soluzione

Divertente che dovresti chiederlo, perché ho solo ha scritto su questo ieri , stavo avendo lo stesso problema circa 6 mesi fa. Fondamentalmente devi impostare una proprietà di sistema speciale che dice alla JVM di usare uno stack IPv4:

-Djava.net.preferIPv4Stack=true

Altri suggerimenti

Per implementare la correzione di pfranza in Oracle, dove non hai una riga di comando:

Imposta la proprietà java.net.preferIPv4Stack = true in ogni sessione Oracle come segue prima di chiamare il codice java contenente la chiamata multicast con il seguente frammento PL / SQL:

ret := dbms_java.set_property('java.net.preferIPv4Stack','true');

Se la chiamata ha esito positivo, verrà restituito NULL.

Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a StackOverflow
scroll top