Haruskah router menggunakan SLAAC untuk penetapan alamat IPv6?

11

Saya sedikit bingung dengan 2 RFC berikut yang berkaitan dengan IPv6:

  • RFC 4862 (Konfigurasi Alamat Stateless IPv6)
  • RFC 7084 (Persyaratan Router IPv6)

RFC 4862 menyatakan:

Proses konfigurasi otomatis yang ditentukan dalam dokumen ini hanya berlaku untuk host dan bukan router. Karena konfigurasi otomatis host menggunakan informasi yang diiklankan oleh router, router perlu dikonfigurasi dengan beberapa cara lain.

RFC 7084 mencantumkan salah satu persyaratan Konfigurasi WAN-Side untuk penetapan alamat sebagai:

WAA-1: Router IPv6 CE HARUS mendukung Stateless Address Autoconfiguration (SLAAC) [RFC4862].

Apakah ada kontradiksi di sini?

Haruskah router dapat mengkonfigurasi alamat IPv6 untuk antarmuka WAN?


Mengapa RFC 4862 mengatakan

Karena konfigurasi otomatis host menggunakan informasi yang diiklankan oleh router, router perlu dikonfigurasi dengan beberapa cara lain.

Jika saya menggunakan router untuk menghubungkan LAN saya ke ISP misalnya, bukankah ada router di jaringan ISP yang berbicara dengan router saya?

Saya akan berpikir itu sangat masuk akal untuk memiliki 2 (atau lebih) router dirantai bersama. Dalam hal ini, mengapa tidak menggunakan SLAAC pada antarmuka WAN router kedua?


Mungkin masalahnya bermuara pada perbedaan buatan antara host dan router? Dari RFC 4862:

simpul - perangkat yang mengimplementasikan IP.

router - node yang meneruskan paket IP tidak secara eksplisit ditujukan untuk dirinya sendiri.

host - sembarang simpul yang bukan router.

Tapi tidak bisakah sebuah host (yaitu mesin yang menjadi hosting server atau aplikasi) juga memiliki tabel routing, dan berfungsi sebagai router? Dan kita secara efektif merantai 2 router bersama lagi.


Edit : beberapa informasi tambahan yang kemudian saya temukan ...

Kernel Linux menangani SLAAC, dan mengikuti RFC 4862 dengan cermat. Langsung ke perbedaan antara host dan router. Lihat dokumentasi kernel di ip-sysctl :

  • Perilaku HOST diasumsikan. Yang berarti Pengajuan Router akan dikirim, dan Iklan Router akan digunakan untuk konfigurasi otomatis alamat.
  • Hanya jika penerusan diaktifkan ( /proc/sys/net/ipv6/conf/all/forwarding), perangkat dianggap sebagai ROUTER . Yang berarti tidak ada Permintaan Router akan dikirim, dan Iklan Router akan diabaikan.

Ternyata perbedaan ini berjalan jauh ke belakang, sebelum IPv6. Lihat parameternya /proc/sys/net/ipv4/ip_forward:

Variabel ini spesial, perubahannya mengatur ulang semua parameter konfigurasi ke status default ( RFC1122 untuk host, RFC1812 untuk router)

banjaxed
sumber

Jawaban:

7

Dalam RFC 7084, itu juga menyatakan:

W-1: Ketika router terhubung ke tautan antarmuka WAN, itu HARUS bertindak sebagai host IPv6 untuk keperluan penetapan alamat antarmuka stateless [RFC4862] atau stateful [RFC3315].

Jadi singkatnya, ya - router harus bisa mengonfigurasi alamat IPv6 untuk antarmuka WAN-nya.

Pada kenyataannya, sebagian besar ISP menerapkan DHCPv6 dan DHCPv6-PD ( RFC3633 ) untuk alokasi alamat hilir, bersama dengan delegasi awalan.

Ini memastikan bahwa router Anda tidak hanya menerima alamat pada antarmuka WAN itu, tetapi juga menerima awalan yang dapat digunakan pada antarmuka LAN internal itu juga.

Benjamin Dale
sumber
6

RFC 4862 benar-benar menggambarkan router dalam satu kontrol administratif. RFC 7084 mengklarifikasi bagaimana seharusnya perilaku pelanggan. Ini memberi ISP kebebasan dalam mendukung IPv6 bagi pelanggannya.

Untuk router PE, router CE adalah tuan rumah. Dari perspektif LAN (layer-2 domain, termasuk tautan dari PE ke CE), router benar-benar hanyalah host lain di jaringan. Dalam kebanyakan kasus, alamat tautan WAN akan ditentukan secara statis, melalui DHCP, atau melalui PPP, tidak benar-benar menggunakan SLAAC.

Saya pikir Anda melewatkan bagian dalam RFC 7084 yang mendahului apa yang Anda kutip:

Persyaratan sisi WAN:

W-1: Ketika router terhubung ke tautan antarmuka WAN, itu HARUS bertindak sebagai host IPv6 untuk keperluan penetapan alamat antarmuka stateless [ RFC4862 ] atau stateful [ RFC3315 ].

Ron Maupin
sumber
1
Banyak ISP juga menjalankan interkoneksi WAN tanpa nomor (hanya tautan-lokal). Semua yang terjadi pada tautan WAN adalah router ISP yang mengirim paket ke CPE dan paket pengirim CPE ke gateway default. Keduanya biasanya menggunakan alamat tautan-lokal.
Sander Steffann
5

Mengapa RFC 4862 mengatakan "Karena konfigurasi otomatis host menggunakan informasi yang diiklankan oleh router, router harus dikonfigurasi dengan beberapa cara lain."

Orang-orang yang menulis dokumen itu (dan pendahulunya RFC 2462) hampir pasti memiliki pandangan dunia bahwa ada dua jenis perangkat. "host" yang banyak dan beban untuk mengelola dan "router" yang dikelola oleh admin jaringan yang kompeten.

Pada awal 2000-an kami mengalami peningkatan koneksi DSL / kabel yang selalu aktif dan juga peningkatan jumlah orang yang memiliki lebih dari satu komputer di rumah yang dapat menggunakan koneksi internet. Karena banyak ISP hanya akan memberikan satu alamat IP kepada pelanggan (setidaknya tanpa membebankan biaya tambahan), kami melihat peningkatan besar-besaran dalam penggunaan "router rumah" dengan NAT untuk menyembunyikan banyak komputer di belakang koneksi semacam itu. NAT mengizinkan "router rumah" untuk menyembunyikan sifat asli dari ISP, sejauh ISP prihatin, "router rumah" sama seperti host.

Penggunaan seperti itu pada awalnya hanya "ditoleransi" oleh ISP tetapi akhirnya mereka memutuskan itu bukan hal yang buruk dan mulai benar-benar memberikan / menjual "router rumah" kepada pelanggan mereka. Sebagai hasilnya, kami berakhir dengan sejumlah besar perangkat ini berada di rumah dan bisnis kecil.

Baru-baru ini IETF telah mulai mengeksplorasi dengan benar bagaimana "router rumah" dan ISP yang melayani mereka harus berperilaku dalam konteks IPv6. Jawabannya adalah bahwa antarmuka "sisi WAN" harus bahave seperti tuan rumah sedangkan antarmuka "sisi LAN" harus berperilaku seperti router biasa. Karena tidak ada NAT, ada kebutuhan untuk beberapa detail tambahan untuk menangani penyediaan alamat untuk sisi LAN.


Mengenai kernel Linux, memang secara default mengabaikan RA ketika routing diaktifkan, tetapi perilaku ini dapat diganti jika diperlukan.

Peter Green
sumber
Anda gagal menyebutkan cara menimpa. Saya memiliki yang berikut ini di post-up file / etc / network / interfaces saya sysctl -w net.ipv6.conf.eth0.accept_ra = 2 yang saya percaya adalah pengaturan untuk mengaktifkan RA.
tgunr
Yap, 0 dinonaktifkan, 1 adalah mode normal (diaktifkan untuk host tetapi tidak router) dan 2 diaktifkan secara paksa.
Peter Green