Router di jaringan saya membagikan awalan IPv6 yang diberikan oleh ISP saya. Awalan ini dinamis tetapi "cukup lengket".
Saya ingin mesin saya secara otomatis mengambil awalan yang diiklankan di RA, tetapi menggabungkannya dengan bagian lokal yang ditentukan pengguna daripada menghasilkan satu secara acak atau berdasarkan alamat MAC. Apakah ada cara mudah untuk melakukan itu?
Jawaban:
Ada dua cara untuk melakukan ini. Satu adalah cara yang mudah dan satu adalah cara yang sulit.
Cara mudah adalah menjalankan server DHCPv6 di jaringan Anda dan menetapkan sendiri alamat host untuk setiap perangkat. Atau biarkan server memilih bagian host; server DHCPv6 yang saya lihat akan menjaga bagian host yang sama bahkan jika awalannya berubah.
Cara yang sulit adalah menggunakan
ip token
untuk mengatur pengenal antarmuka tokenized. Ini digambarkan sebagai:Alasannya adalah cara yang sulit adalah bahwa sementara Linux menyertakan fungsi ini, tidak ada distribusi Linux yang saya sadari mencakup dukungan untuk membuat konfigurasi seperti itu tetap dan menerapkannya pada saat boot, seperti yang mereka lakukan untuk alamat yang dikonfigurasi secara manual atau DHCP. Jadi itu mungkin tidak akan bekerja dengan baik untuk Anda, sampai beberapa distribusi melakukannya.Perhatikan bahwa sekarang mungkin untuk mengkonfigurasi token IPv6 di NetworkManager dan systemd-networkd; jawaban yang lebih baru memiliki petunjuk konfigurasi khusus.Terakhir, jika ISP Anda sesekali mengubah awalan Anda, pertimbangkan untuk menggunakan Alamat Lokal Unik dalam jaringan Anda. Dengan cara ini, semua perangkat Anda akan selalu memiliki alamat yang tidak akan pernah berubah, yang dengannya mereka dapat berbicara satu sama lain. Beberapa router rumah / SOHO yang mendukung IPv6 (seperti OpenWrt) memiliki opsi untuk mengaktifkan ULA di seluruh jaringan rumah; jika ada beberapa router di rumah, ini harus diaktifkan pada router yang terhubung ke ISP.
sumber
Michael melakukan ringkasan yang sangat baik dan tip plugwash baru-baru ini adalah yang terbaik yang bisa saya temukan setelah berburu selama beberapa jam untuk solusi CentOS 7 / RHEL (juga systemd dan manajer jaringan). Setelah terbiasa dengan nmcli (saya terutama masih menggunakan ifcfg dan ip) - Saya bisa berhasil menerapkannya.
Tetapi menggali lebih dalam menurut https://developer.gnome.org/NetworkManager/stable/settings-ipv6.html NetworkManager secara langsung mendukung IPv6 pengenal antarmuka yang di tokenized sebagai properti (dari rilis 1.4 Agustus 2016 http://news.softpedia.com/ news / networkmanager-1-4-menambahkan-dukungan-untuk-pengaturan-ipv6-tokenized-interface-identifiers-507601.shtml ).
Jadi Anda tidak perlu mengatur pengaturan IPv6 manajer jaringan untuk mengabaikan tetapi Anda harus mengatur pengaturan
yang akan menulis
IPV6_TOKEN=::2
ke / etc / sysconfig / network-scripts / ifcfg-eth0 untuk selamat dari reboot. Untuk segera menerapkan ini restart antarmuka olehsumber
Terima kasih kepada Michael karena mengonfirmasi bahwa Linux mendukung fitur dan menunjuk pada perintah tingkat rendah. Jawaban ini mencakup cara membuatnya bekerja dalam praktik pada desktop bentangan Debian (dengan systemd dan manajer jaringan).
Pertama-tama edit koneksi di manajer jaringan dan atur pengaturan IPv6 untuk diabaikan.
Sekarang buat file /etc/NetworkManager/dispatcher.d/pre-up.d/iptoken. File harus dimiliki oleh root, izin 755 dan dengan konten berikut.
Ganti eth0 dengan perangkat yang Anda inginkan dan :: 2 dengan akhiran yang Anda inginkan.
sumber
Di Linux Anda dapat menggunakan
systemd-network
.Cukup buat
.network
file di bawah/etc/systemd/network/somename.network
:alih-alih
e*
mencocokkan semua antarmuka yang dimulai dengane
, Anda dapat memasukkan nama antarmuka lengkap. Ini memungkinkan DHCP {v4, v6} dan digunakan::1
sebagai akhiran. Anda dapat memilih alamat IPv6 apa pun, tetapi 64 bit pertama harus disetel ke nol.Setelah ini aktifkan dan mulai
systemd-networkd.service
.sumber