Bagaimana cara memaksa Java untuk menggunakan IPv4, bukan IPv6?

39

Plug-in browser Java saya tidak lagi berfungsi. Ketika saya membuka halaman yang memiliki elemen Java, Java tidak dapat terhubung ke server.

Setelah diselidiki, saya menemukan bahwa Java mencoba menggunakan IPv6, sementara jaringan saya tidak mendukung IPv6, jadi Java selalu gagal terhubung.

Saya mencoba mencari di Google dan menemukan bahwa saya harus menjalankan Java -Djava.net.preferIPv4Stack=true, tetapi bagaimana saya bisa meneruskan ini ke browser?

Saya menggunakan Google Chrome dan pembaruan Java 7 5.

nyongrand
sumber
Mengapa Anda tidak menonaktifkan protokol IPv6 sehingga Java tidak akan memiliki opsi ini.
harrymc
ini adalah cerita lama, saya tidak tahu apakah saya telah menonaktifkan protokol IPv6, sepertinya sudah, saya sudah lupa, yang saya ingat adalah saya menghapus Java 7 dan menggantinya dengan Java 6
nyongrand
1
Menonaktifkan itu mudah: lihat ini .
harrymc
@harrymc selalu menyalin konten: tautan itu mati.
javadba
@javadba: Tautan tidak pernah mati: lihat Mesin Wayback , tapi sudah usang. Lebih baik google "Nonaktifkan IPv6 Pada Windows" untuk setengah juta hasil.
harrymc

Jawaban:

66

Masukkan opsi dalam _JAVA_OPTIONSvariabel lingkungan. Cara melakukan ini sudah dijelaskan di berbagai pos lainnya - meskipun mereka biasanya berbicara tentang pengaturan PATH, tetapi semuanya sama.

Misalnya, di Linux, masukkan yang berikut ini di ~/.profileatau ~/.bash_profile:

export _JAVA_OPTIONS="-Djava.net.preferIPv4Stack=true"
grawity
sumber
1
ok, terima kasih atas balasan Anda, meskipun saya menggunakan windows tetapi solusi Anda menginspirasi saya, terima kasih
nyongrand
1
Lihat misalnya posting ini untuk pengaturan variabel lingkungan: superuser.com/questions/284342/…
user2428118
1
Mengapa Java 'lebih suka' IPV6? Tampaknya memecah kode yang berfungsi.
Ribo
Bagaimana cara mengaturnya di Windows?
Adnan Ali
1
@Ribo: Secara default, Java menggunakan dual-stack IPv6 bila memungkinkan, yaitu menggunakan soket IPv6 yang juga mendukung alamat IPv4. Soket ini masih kompatibel dengan aplikasi IPv4 dengan menggunakan alamat yang dipetakan IPv4. Oleh karena itu, ini adalah perilaku yang kompatibel ke belakang.
Dr. Koutheir Attouchi