IPv6-ready kernel

From OnnoWiki
Jump to navigation Jump to search

Di distribusi Linux modern biasanya kernel sudah siap IPv6. Kemampuan IPv6 biasanya di compile sebagai modul. Akan tetapi sangat mungkin, modul tersebut tidak di load secara automatis,

Catatan: sebaiknya tidak menggunakan kernel seri 2.2.x lagi, karena IPv6 tidak update. Juga dukungan IPv6 di kernel 2.4.x tidak lagi sesuai dengan definisi RFC. Lebih di rekomendasikan menggunakan kernel seri 2.6.x atau yang terbaru sekalian.

Cek dukungan IPv6 di kernel yang berjalan

Untuk mencek apakah kernel yang berjalan mendukung IPv6, file berikut harus ada

/proc/net/if_inet6

atau kalau mau automatis dapat menggunakan script berikut

# test -f /proc/net/if_inet6 && echo "Running kernel is IPv6 ready"

Jika tidak jalan, kemungkinan modul IPv6 tidak di load.

Meload Module IPv6

Kita dapat mencoba me-load module IPv6 dengan menjalankan

# modprobe ipv6

Jika load tersebut berhasil, maka module IPv6 harusnya terdaftar dan dapat di test menggunakan script berikut secara automatis

# lsmod |grep -w 'ipv6' && echo "IPv6 module successfully loaded"

Harusnya jalan dengan baik

Catatan: unload module IPv6 saat ini masih belum jalan dengan baik. Mungkin akan terjadi crash kernel.

Load Module Secara Automatis

Alternatif lain adalah meload modul IPv6 secara automatis / on demand. Kita hanya perlu menambahkan kalimat berikut di file konfigurasi untuk kernel modul loader (biasanya /etc/modules.conf atau /etc/conf.modules atau /etc/modules) :

alias net-pf-10 ipv6  # untuk load IPv6 module on demand secara automatis

Juga kita bisa men-disable load IPv6 module secara automatis menggunakan kalinat berikut:

alias net-pf-10 off   # disable load IPv6 module on demand secara automatis

Catatan: di kernel 2.6.x, mekanisme load module di ubah. File konfigurasi di namakan /etc/modprobe.conf atau /etc/modprobe.d/*conf tidak lagi /etc/modules.conf.

Compile kernel dengan kemampuan IPv6

Pada saat ini sebagian besar kernel yang digunakan sudah mendukung IPv6. Jika langkah di atas memperlihatkan hasil yang negatif, dan kernel yang kita gunakan tidak mendukung IPv6, maka kita mempunyai pilihan berikut:

  • Update distribusi yang kita gunakan ke distribusi yang mendukung IPv6 (sangat di sarankan untuk pemula).
  • Compile kernel yang baru (mudah, jika kita mengetahui optipn yang harus di aktifkan).
  • Recompile kernel source bawaan distro anda (kadang tidak begitu mudah)
  • Compile kernel dengan USAGI extension

Jika kita memutuskan untuk compile kernel, kita ada baiknya mempunyai pengalaman compile kernel sebelumnya.


Network Device yang Siap IPv6

Tidak semua network device yang ada mendukung (akan mendukung) kemampuan untuk membawa paket IPv6.

Masalah utama yang ada karena struktur lapisan jaringan dari implementasi kernel yang ada. IPv6 paket tidak di kenali dengan nomor IP header (6 bukan 4). Tapi di kenali oleh nomor protokol di protokol lapisan ke 2. Oleh karenanya, protokol transport yang tidak mengggunakan nomor protokol tersebut tidak akan bisa melepaskan paket IPv6. Catatan: paket akan tetap dikirim melalui link, akan tetapi di bagian penerima, proses pengiriman / pelepasan paket tidak akan bekerja. Kita dapat melihat hal ini menggunakan tcpdump.

Link yang tidak akan pernah mampu IPv6

  • Serial Line IP (SLIP, RFC 1055 / SLIP), sebaiknya di sebut SLIPv4, nama device: slX
  • Parallel Line IP (PLIP), sama dengan SLIP, nama device: plipX
  • ISDN dengan enkapsulasi rawip, nama device: isdnX

Link yang tidak mendukung IPv6

ISDN dengan enkapsulasi syncppp, nama device: ipppX (masalah disain dari ipppd, akan digabungkan dengan lapisan PPP di kernel seri 2.5.x)