Saat ini saya memiliki pengaturan di mana, karena konfigurasi yang akan membutuhkan waktu lama untuk memperbaikinya, saya memiliki server yang hanya dapat diakses oleh ipv4. Saya juga memiliki server yang dapat diakses oleh ipv6. Saya bertanya-tanya apakah saya bisa menggunakan iptables untuk meneruskan lalu lintas ipv6 pada port tertentu dari salah satu server ke server lain menggunakan lalu lintas ipv4.
15
Jawaban:
Saat ini IPtables tidak dapat melakukan ini, jadi Anda memerlukan proses userspace untuk mem-proxy koneksi. socat adalah alat yang cocok untuk ini:
sumber
Seperti disebutkan dalam komentar pada pertanyaan Anda , NAT64 jauh dari siap, bahkan 3 tahun kemudian.
Namun, Anda bisa mencoba
6tunnel
, seperti yang disarankan oleh kebingungan.Untungnya, ia ada di repositori Debian dan Ubuntu, sehingga Anda dapat menginstalnya dengan sangat mudah
sudo apt-get install 6tunnel
. Jika Anda menggunakan sistem lain, Anda harus membuatnya dari sumber .Membangun dari sumber sebenarnya tidak sulit, dan hanya menjalankan beberapa perintah (sebagai root):
Berikut ini sintaksnya, disederhanakan:
[-4|-6]
opsional dan memungkinkan Anda menentukan apakah Anda akan mengikat (mendengarkan) pada IPv4 atau IPv6 (masing-masing).-l
juga opsional. Ini memungkinkan Anda memilih alamat mana (IPv4 atau IPv6) yang ingin Anda ikat.Misalnya, jika Anda ingin mengizinkan server khusus IPv4, mendengarkan pada port 1337, dapat diakses melalui IPv6, gunakan:
Perintah di atas akan mendengarkan pada port 1337 pada IPv6, dan meneruskan lalu lintas ke port 1337 pada mesin yang sama melalui IPv4. Ini kemudian akan berjalan di latar belakang, sehingga Anda tidak perlu khawatir tentang hal itu.
Sebenarnya, Anda harus mengatur pekerjaan cron untuk memastikan bahwa itu masih berjalan.
6tunnel
memberikan contoh untuk kenyamanan Anda! Menjalankannya saat boot juga bukan ide yang buruk.Untuk dokumentasi lebih lanjut, jalankan
6tunnel -h
atauman 6tunnel
.sumber
Versi terbaru dari
xinetd
juga dapat mendengarkan pada IPv6 dan kemudian meneruskan koneksi ke alamat IPv4.Konfigurasi sampel yang mendengarkan koneksi IPv6 pada port 3389 dan meneruskannya ke port 3389 dari alamat IPv4 internal:
Ini mungkin berguna dalam lingkungan yang lebih terbatas karena
xinetd
kemungkinan akan diinstal dengan sistem pangkalan Anda atau tersedia di repositori vendor yang disetujui.sumber
Saya ingin mengomentari jawaban dan dukungan Leo Lams, tetapi saya tidak memiliki reputasi yang cukup. Pertama-tama: Terima kasih banyak Leo Lam!
Bagi siapa pun yang mengikuti utas ini: ISP saya mengubah koneksi saya dari IPv4 ke IPv6 dengan Dual Stack Lite, yang berarti saya tidak memiliki alamat IPv4 saya sendiri lagi. Ini adalah masalah karena saya ingin mengakses Kamera IP saya dari mana pun yang tidak mendukung IPv6. Untuk mengatasi ini saya mencoba yang berikut:
sudo 6tunnel -6 99 192.168.178.35 80
sudo 6tunnel -4 99 IPV6PREFIXROUTER:IPV6INTERFACEIDUUBUNTUMACHINE 99
Awalan ipv6 dilambangkan di router saya dan antarmuka id dipetakan dalam proses penerusan IPv6.
Sekarang saya dapat mengakses kamera dari mana saja menggunakan domain vServer example.com:99 .. Sempurna! Saya berencana untuk mendapatkan raspberry yang akan memenuhi pekerjaan ini atau pisang pi m3 untuk tugas-tugas lain juga.
sumber
Lebih untuk kepentingan orang menemukan halaman ini daripada OP (saya datang ke sini mencari solusi untuk konektivitas IPv6 untuk aplikasi IPv4 (Twisted)), satu kemungkinan adalah aplikasi 6tunnel, mendengarkan IPv6 dan meneruskan permintaan ke antarmuka lain dan Pelabuhan.
sumber