IPv6
Mengapa dinamai IPv6 ? IP yang kita pakai sekarang
disebut IPv4, menunjukkan versi protokol IP tersebut, yaitu versi 4.
IPv6 dinamai demikian untuk menunjukkan bahwa protokol IP tersebut
adalah protokol IP versi 6.
Sangat disadari bahwa IPv4 yang ada
sekarang tidak mungkin dipindah secara langsung menjadi IPv6. Oleh
karena itu IPv6 memiliki mekanisme transisi yang dirancang untuk
memudahkan pengguna IPv4 untuk menjalankan IPv6 diatas IPv4 untuk
sementara waktu tanpa perubahan yang berarti.
Fitur yang dimiliki IPv6
IPv6 memiliki beberapa fitur yang mampu mengantisipasi perkembangan
aplikasi masa depan dan mengatasi kekurangan yang dimiliki pendahulunya,
yaitu IPv4. Fitur-fitur tersebut adalah :
1. Jumlah IP address yang
sangat banyak. IPv6 terdiri dari 128 bit, dengan jumlah IP address yang
dapat dipakai mencapai 3.4 x 10^38 IP address. Jumlah ini sangatlah
besar, sehingga apabila nantinya setiap penduduk dunia (7 milyar)
memiliki 10 milyar IP address, dan manusia sudah menjadikan Mars sebagai
planet tempat tinggal kedua setelah Bumi, maka IP address ini masih
dapat dipakai oleh seluruh penduduk Mars (asumsi jumlahnya sama-sama 7
milyar, dan masing-masing memiliki 10 milyar), maka alokasi IP address
bagi penduduk Bumi dan Mars ini baru mencakup 1 persen dari alokasi
alamat IPv6 yang ada! Alokasi IP address yang sangat banyak ini berguna
untuk memberikan IP address kepada hampir semua perangkat yang ada di
sekitar anda, mulai dari mobil, lemari es, jam tangan, pintu, jendela,
bahkan pada celana anda!
2. Autoconfiguration. IPv6 dirancang agar
penggunanya tidak dipusingkan dengan konfigurasi IP address. Komputer
pengguna yang terhubung dengan jaringan IPv6 akan mendapatkan IP address
langsung dari router, sehingga nantinya DHCP server tidak diperlukan
lagi. Autoconfiguration nantinya sangat berguna bagi peralatan mobile
Internet karena pengguna tidak direpotkan dengan konfigurasi sewaktu ia
berpindah tempat dan jaringan.
3. Sekuriti. IPv6 telah dilengkapi
dengan protokol IPSec, sehingga semua aplikasi telah memiliki sekuriti
yang optimal bagi berbagai aplikasi yang membutuhkan keamanan, misalnya
transaksi e-commerce.
4. Quality of Service. IPv6 memiliki protokol
QoS yang terintegrasi dengan baik, sehingga semua aplikasi yang berjalan
diatas IPv6 memiliki jaminan QoS, terutama bagi aplikasi yang sensitif
terhadap delay seperti VoIP dan streaming video.
Pengalamatan IPv6 didefinisikan dalam RFC 2373.
Dalam IPv6, alamat 128-bit akan dibagi ke dalam 8 blok berukuran
16-bit, yang dapat dikonversikan ke dalam bilangan heksadesimal
berukuran 4-digit. Setiap blok bilangan heksadesimal tersebut akan
dipisahkan dengan tanda titik dua (:). Karenanya, format notasi yang
digunakan oleh IPv6 juga sering disebut dengan colon-hexadecimal format, berbeda dengan IPv4 yang menggunakan dotted-decimal format.
Berikut ini adalah contoh alamat IPv6 dalam bentuk bilangan biner:
00100001110110100000000011010011000000000000000000101111001110110000001010
101010000000001111111111111110001010001001110001011010
Untuk menerjemahkannya ke dalam bentuk notasi colon-hexadecimal format, angka-angka biner di atas harus dibagi ke dalam 8 buah blok berukuran 16-bit:
0010000111011010 0000000011010011 0000000000000000 0010111100111011 00000010
10101010 0000000011111111 1111111000101000 1001110001011010
Lalu, setiap blok berukuran 16-bit tersebut harus dikonversikan ke
dalam bilangan heksadesimal dan setiap bilangan heksadesimal tersebut
dipisahkan dengan menggunakan tanda titik dua. Hasil konversinya adalah
sebagai berikut:
21DA:00D3:0000:2F3B:02AA:00FF:FE28:9C5A
Penyederhanaan bentuk alamat
Alamat di atas juga dapat disederhanakan lagi dengan membuang angka 0 pada awal setiap blok yang berukuran 16-bit di atas, dengan menyisakan satu digit terakhir. Dengan membuang angka 0, alamat di atas disederhanakan menjadi:
21DA:D3:0:2F3B:2AA:FF:FE28:9C5A
Konvensi pengalamatan IPv6 juga mengizinkan penyederhanaan alamat lebih jauh lagi, yakni dengan membuang banyak karakter 0, pada sebuah alamat yang banyak angka 0-nya. Jika sebuah alamat IPv6 yang direpresentasikan dalam notasi colon-hexadecimal format mengandung beberapa blok 16-bit dengan angka 0, maka alamat tersebut dapat disederhanakan dengan menggunakan tanda dua buah titik dua (:).
Untuk menghindari kebingungan, penyederhanaan alamat IPv6 dengan cara
ini sebaiknya hanya digunakan sekali saja di dalam satu alamat, karena
kemungkinan nantinya pengguna tidak dapat menentukan berapa banyak bit 0 yang direpresentasikan oleh setiap tanda dua titik dua (:) yang terdapat dalam alamat tersebut. Tabel berikut mengilustrasikan cara penggunaan hal ini.
| Alamat asli |
Alamat asli yang disederhanakan |
Alamat setelah dikompres |
FE80:0000:0000:0000:02AA:00FF:FE9A:4CA2 |
FE80:0:0:0:2AA:FF:FE9A:4CA2 |
FE80::2AA:FF:FE9A:4CA2 |
FF02:0000:0000:0000:0000:0000:0000:0002 |
FF02:0:0:0:0:0:0:2 |
FF02::2 |
Untuk menentukan berapa banyak bit bernilai 0 yang
dibuang (dan digantikan dengan tanda dua titik dua) dalam sebuah alamat
IPv6, dapat dilakukan dengan menghitung berapa banyak blok yang
tersedia dalam alamat tersebut, yang kemudian dikurangkan dengan angka
8, dan angka tersebut dikalikan dengan 16. Sebagai contoh, alamat FF02::2 hanya mengandung dua blok alamat (blok FF02 dan blok 2). Maka, jumlah bit yang dibuang adalah (8-2) x 16 = 96 buah bit.
Dalam IPv4, sebuah alamat dalam notasi dotted-decimal format dapat
direpresentasikan dengan menggunakan angka prefiks yang merujuk kepada subnet mask.
IPv6 juga memiliki angka prefiks, tapi tidak didugnakan untuk merujuk
kepada subnet mask, karena memang IPv6 tidak mendukung subnet mask.
Prefiks adalah sebuah bagian dari alamat IP, di mana bit-bit memiliki
nilai-nilai yang tetap atau bit-bit tersebut merupakan bagian dari
sebuah rute atau subnet identifier. Prefiks dalam IPv6 direpesentasikan dengan cara yang sama seperti halnya prefiks alamat IPv4, yaitu [alamat]/[angka panjang prefiks].
Panjang prefiks menentukan jumlah bit terbesar paling kiri yang
membuat prefiks subnet. Sebagai contoh, prefiks sebuah alamat IPv6
dapat direpresentasikan sebagai berikut:
3FFE:2900:D005:F28B::/64
Pada contoh di atas, 64 bit pertama dari alamat tersebut dianggap sebagai prefiks alamat,
sementara 64 bit sisanya dianggap sebagai interface ID.
Jenis-jenis Alamat IPv6
IPv6 mendukung beberapa jenis format prefix, yakni sebagai berikut:
- Alamat Unicast, yang menyediakan komunikasi secara point-to-point, secara langsung
antara dua host dalam sebuah jaringan.
- Alamat Multicast, yang menyediakan metode untuk mengirimkan sebuah paket data ke
banyak host yang berada dalam group yang sama. Alamat ini digunakan dalam komunikasi
one-to-many.
- Alamat Anycast, yang menyediakan metode penyampaian paket data kepada anggota
terdekat dari sebuah group. Alamat ini digunakan dalam komunikasi one-to-one-of-many.
Alamat ini juga digunakan hanya sebagai alamat tujuan (destination address) dan diberikan
hanya kepada router, bukan kepada host-host biasa.
Jika dilihat dari cakupan alamatnya, alamat unicast dan anycast terbagi menjadi alamat-alamat berikut:
- Link-Local, merupakan sebuah jenis alamat yang mengizinkan sebuah komputer agar dapat
berkomunikasi dengan komputer lainnya dalam satu subnet.
- Site-Local, merupakan sebuah jenis alamat yang mengizinkan sebuah komputer agar dapat
berkomunikasi dengan komputer lainnya dalam sebuah intranet.
- Global Address, merupakan sebuah jenis alamat yang mengizinkan sebuah komputer agar
dapat berkomunikasi dengan komputer lainnya dalam Internet berbasis IPv6.
Sementara itu, cakupan alamat multicast dimasukkan ke dalam struktur alamat.
Unicast Address
Alamat IPv6 unicast dapat diimplementasikan dalam berbagai jenis alamat, yakni:
- Alamat unicast global
- Alamat unicast site-local
- Alamat unicast link-local
- Alamat unicast yang belum ditentukan (unicast unspecified address)
- Alamat unicast loopback
- Alamat unicast 6to4
- Alamat unicast ISATAP
Unicast global addresses
Alamat unicast global IPv6 mirip dengan alamat publik dalam alamat IPv4. Dikenal juga sebagai
Aggregatable Global Unicast Address. Seperti halnya alamat publik IPv4 yang dapat secara
global dirujuk oleh host-host di Internet dengan menggunakan proses routing, alamat ini juga
mengimplementasikan hal serupa. Struktur alamat IPv6 unicast global terbagi menjadi topologi
tiga level (Public, Site, dan Node).
| Field |
Panjang |
Keterangan |
001 |
3 bit |
Berfungsi sebagai tanda pengenal alamat, bahwa alamat ini adalah sebuah alamat IPv6 Unicast Global. |
| Top Level Aggregation Identifier (TLA ID) |
13 bit |
Berfungsi sebagai level tertinggi dalam hierarki routing. TLA ID diatur oleh Internet Assigned Name Authority (IANA), yang mengalokasikannya ke dalam daftar Internet registry, yang kemudian mengolasikan sebuah TLA ID ke sebuah ISP global. |
| Res |
8 bit |
Direservasikan untuk penggunaan pada masa yang akan datang (mungkin untuk memperluas TLA ID atau NLA ID). |
| Next Level Aggregation Identifier (NLA ID) |
24 bit |
Berfungsi sebagai tanda pengenal milik situs (site) kustomer tertentu. |
| Site Level Aggregation Identifier (SLA ID) |
16 bit |
Mengizinkan hingga 65536 (216) subnet dalam sebuah situs individu. SLA ID ditetapkan di dalam sebuah site. ISP tidak dapat mengubah bagian alamat ini. |
| Interface ID |
64 bit |
Berfungsi sebagai alamat dari sebuah node dalam subnet yang spesifik (yang ditentukan oleh SLA ID). |
Unicast site-local addresses
Alamat unicast site-local IPv6 mirip dengan alamat privat dalam IPv4. Ruang lingkup dari sebuah alamat terdapat pada Internetwork dalam sebuah site milik sebuah organisasi. Penggunaan alamat unicast global dan unicast site-local dalam sebuah jaringan adalah mungkin dilakukan. Prefiks yang digunakan oleh alamat ini adalah FEC0::/48.
| Field |
Panjang |
Keterangan |
111111101100000000000000000000000000000000000000 |
48 bit |
Nilai ketetapan alamat unicast site-local |
| Subnet Identifier |
16 bit |
Mengizinkan hingga 65536 (216) subnet dalam sebuah struktur subnet datar. Administrator juga dapat membagi bit-bit yang yang memiliki nilai tinggi (high-order bit) untuk membuat sebuah infrastruktur routing hierarkis. |
| Interface Identifier |
64 bit |
Berfungsi sebagai alamat dari sebuah node dalam subnet yang spesifik. |
Unicast link-local address
Alamat unicast link-local adalah alamat yang digunakan oleh host-host dalam subnet yang sama. Alamat ini mirip dengan konfigurasi APIPA (Automatic Private Internet Protocol Addressing) dalam sistem operasi Microsoft Windows XP ke atas. host-host yang berada di dalam subnet yang sama akan menggunakan alamat-alamat ini secara otomatis agar dapat berkomunikasi. Alamat ini juga memiliki fungsi resolusi alamat, yang disebut dengan Neighbor Discovery. Prefiks alamat yang digunakan oleh jenis alamat ini adalah FE80::/64.
| Field |
Panjang |
Keterangan |
1111111010000000000000000000000000000000000000000000000000000000 |
64 bit |
Berfungsi sebagai tanda pengenal alamat unicast link-local. |
| Interface ID |
64 bit |
Berfungsi sebagai alamat dari sebuah node dalam subnet yang spesifik. |
Unicast unspecified address
Alamat unicast yang belum ditentukan adalah alamat yang belum ditentukan oleh seorang administrator atau tidak menemukan sebuah DHCP Server untuk meminta alamat. Alamat ini sama dengan alamat IPv4 yang belum ditentukan, yakni 0.0.0.0. Nilai alamat ini dalam IPv6 adalah 0:0:0:0:0:0:0:0 atau dapat disingkat menjadi dua titik dua (::).
Unicast Loopback Address
Alamat unicast loopback adalah sebuah alamat yang digunakan untuk mekanisme interprocess communication (IPC) dalam sebuah host. Dalam IPv4, alamat yang ditetapkan adalah 127.0.0.1, sementara dalam IPv6 adalah 0:0:0:0:0:0:0:1, atau ::1.
Alamat unicast 6to4 adalah alamat yang digunakan oleh dua host IPv4 dan IPv6 dalam Internet IPv4 agar dapat saling berkomunikasi. Alamat ini sering digunakan sebagai pengganti alamat publik IPv4. Alamat ini aslinya menggunakan prefiks alamat 2002::/16, dengan tambahan 32 bit dari alamat publik IPv4 untuk membuat sebuah prefiks dengan panjang 48-bit, dengan format 2002:WWXX:YYZZ::/48, di mana WWXX dan YYZZ adalah representasi dalam notasi colon-decimal format dari notasi dotted-decimal format w.x.y.z dari alamat publik IPv4. Sebagai contoh alamat IPv4 157.60.91.123 diterjemahkan menjadi alamat IPv6 2002:9D3C:5B7B::/48.
Meskipun demikian, alamat ini sering ditulis dalam format IPv6 Unicast global address, yakni 2002:WWXX:YYZZ:SLA ID:Interface ID.
Unicast ISATAP Address
Alamat Unicast ISATAP adalah sebuah alamat yang digunakan oleh dua host IPv4 dan IPv6 dalam sebuah Intranet IPv4 agar dapat saling berkomunikasi. Alamat ini menggabungkan prefiks alamat unicast link-local, alamat unicast site-local atau alamat unicast global (yang dapat berupa prefiks alamat 6to4) yang berukuran 64-bit dengan 32-bit ISATAP Identifier (0000:5EFE), lalu diikuti dengan 32-bit alamat IPv4 yang dimiliki oleh interface atau sebuah host. Prefiks yang digunakan dalam alamat ini dinamakan dengan subnet prefix. Meski alamat 6to4 hanya dapat menangani alamat IPv4 publik saja, alamat ISATAP dapat menangani alamat pribadi IPv4 dan alamat publik IPv4.
Multicast Address
Alamat multicast IPv6 sama seperti halnya alamat multicast pada IPv4. Paket-paket yang ditujukan ke sebuah alamat multicast akan disampaikan terhadap semua interface yang dikenali oleh alamat tersebut. Prefiks alamat yang digunakan oleh alamat multicast IPv6 adalah FF00::/8.
| Field |
Panjang |
Keterangan |
11111111 |
8 bit |
Tanda pengenal bahwa alamat ini adalah alamat multicast. |
| Flags |
4 bit |
Berfungsi sebagai tanda pengenal apakah alamat ini adalah alamat transient atau bukan. Jika nilainya 0, maka alamat ini bukan alamat transient, dan alamat ini merujuk kepada alamat multicast yang ditetapkan secara permanen. Jika nilainya 1, maka alamat ini adalah alamat transient. |
| Scope |
4 bit |
Berfungsi untuk mengindikasikan cakupan lalu lintas multicast, seperti halnya interface-local, link-local, site-local, organization-local atau global. |
| Group ID |
112 bit |
Berfungsi sebagai tanda pengenal group multicast |
Alamat Anycast dalam IPv6 mirip dengan alamat anycast dalam IPv4, tapi diimplementasikan dengan cara yang lebih efisien dibandingkan dengan IPv4. Umumnya, alamat anycast digunakan oleh Internet Service Provider (ISP) yang memiliki banyak klien. Meskipun alamat anycast menggunakan ruang alamat unicast, tapi fungsinya berbeda daripada alamat unicast. IPv6 menggunakan alamat anycast untuk mengidentifikasikan beberapa