IPv6 (singkatan dari Internet Protocol version 6) adalah versi terbaru dari Protokol Internet (IP), protokol komunikasi yang menyediakan sistem identifikasi dan lokasi untuk komputer di jaringan dan merutekan lalu lintas di Internet. IPv6 dikembangkan oleh Internet Engineering Task Force (IETF) untuk menangani masalah kelelahan alamat IPv4 yang telah lama diantisipasi. IPv6 dimaksudkan untuk menggantikan IPv4.[1] Pada Desember 1998, IPv6 menjadi Draft Standar untuk IETF,[2] yang kemudian meratifikasinya sebagai Standar Internet pada 14 Juli 2017.[3]
IPv6 memberikan manfaat teknis lainnya selain ruang pengalamatan yang lebih besar. Secara khusus, ini memungkinkan metode alokasi alamat hirarkis yang memfasilitasi agregasi rute di Internet, dan dengan demikian membatasi perluasan tabel routing. Penggunaan pengalamatan multicast diperluas dan disederhanakan, dan memberikan optimisasi tambahan untuk pengiriman layanan. Aspek mobilitas perangkat, keamanan, dan konfigurasi telah dipertimbangkan dalam desain protokol.
Alamat IPv6 direpresentasikan sebagai delapan grup, dipisahkan oleh titik dua, dari empat digit heksadesimal. Representasi penuh dapat disederhanakan dengan beberapa metode notasi; misalnya, 2001: 0db8: 0000: 0000: 0000: 8a2e: 0370: 7334 menjadi 2001: db8 :: 8a2e: 370: 7334.
Fitur utama
IPv6 adalah protokol Lapisan Internet untuk pengerjaan paket-switched internet dan menyediakan transmisi datagram ujung-ke-ujung di beberapa jaringan IP, erat mengikuti prinsip-prinsip desain yang dikembangkan dalam versi protokol sebelumnya, Internet Protocol Version 4 (IPv4).
Selain menawarkan lebih banyak alamat, IPv6 juga mengimplementasikan fitur yang tidak ada di IPv4. Ini menyederhanakan aspek-aspek konfigurasi alamat, jumlah jaringan, dan pengumuman router ketika mengubah penyedia konektivitas jaringan. Ini menyederhanakan pemrosesan paket dalam router dengan menempatkan tanggung jawab untuk fragmentasi paket ke titik akhir. Ukuran subnet IPv6 distandarisasi dengan memperbaiki ukuran porsi pengidentifikasi host alamat menjadi 64 bit.
Arsitektur pengalamatan IPv6 didefinisikan dalam RFC4291 dan memungkinkan tiga jenis transmisi: unicast, anycast dan multicast.[4]:210
Perbandingan dengan IPv4
Di Internet, data ditransmisikan dalam bentuk paket jaringan. IPv6 menentukan format paket baru, yang dirancang untuk meminimalkan pemrosesan header paket oleh router.[5] Karena header paket IPv4 dan paket IPv6 berbeda secara signifikan, kedua protokol tersebut tidak dapat dioperasikan. Namun, sebagian besar protokol transport dan lapisan aplikasi perlu sedikit atau tidak ada perubahan untuk beroperasi melalui IPv6; pengecualian adalah protokol aplikasi yang menyematkan alamat lapisan Internet, seperti File Transfer Protocol (FTP) dan Network Time Protocol (NTP), di mana format alamat baru dapat menyebabkan konflik dengan sintaksis protokol yang ada.
Ruang alamat lebih besar
Keuntungan utama dari IPv6 dibandingkan IPv4 adalah ruang alamatnya yang lebih besar. Ukuran alamat IPv6 adalah 128 bit, dibandingkan dengan 32 bit di IPv4.[6] Oleh karena itu ruang alamat memiliki 2128 = 340,282,366,920,938,463,463,374,607,431,768,211,456 alamat (sekitar3,4×1038). Beberapa blok ruang ini dan beberapa alamat khusus digunakan untuk penggunaan khusus.
Meskipun ruang alamat ini sangat besar, bukan maksud para perancang IPv6 untuk memastikan kejenuhan geografis dengan alamat yang dapat digunakan. Sebaliknya, alamat yang lebih panjang menyederhanakan alokasi alamat, memungkinkan agregasi rute yang efisien, dan memungkinkan implementasi fitur pengalamatan khusus. Dalam IPv4, metode Classless Inter-Domain Routing (CIDR) yang kompleks dikembangkan untuk memanfaatkan ruang alamat kecil dengan sebaik-baiknya. Ukuran standar subnet di IPv6 adalah 264 alamat, kuadrat dari ukuran seluruh ruang alamat IPv4, atau sekitar empat miliar kali lebih besar. Dengan demikian, pemanfaatan ruang alamat aktual akan kecil dalam IPv6, tetapi manajemen jaringan dan efisiensi perutean ditingkatkan oleh ruang subnet yang besar dan agregasi rute hierarkis.
Multicasting
Multicasting, transmisi pengiriman paket ke berbagai tujuan dalam satu operasi pengiriman, merupakan bagian dari spesifikasi dasar dalam IPv6. Dalam IPv4 ini adalah fitur opsional (meskipun umum diterapkan).[7] IPv6 multicast addressing memiliki fitur dan protokol yang sama dengan IPv4 multicast, tetapi juga memberikan perubahan dan peningkatan dengan menghilangkan kebutuhan akan protokol tertentu. IPv6 tidak mengimplementasikan siaran IP tradisional, yaitu pengiriman paket ke semua host pada tautan terlampir menggunakan alamat siaran khusus, dan oleh karena itu tidak menentukan alamat siaran. Dalam IPv6, hasil yang sama dicapai dengan mengirimkan paket ke semua node tautan-lokal grup multicast di alamat ff02 :: 1, yang dianalogikan dengan IPv4 multicasting ke alamat 224.0.0.1. IPv6 juga menyediakan implementasi multicast baru, termasuk menyematkan alamat titik pertemuan di alamat grup multicast IPv6, yang menyederhanakan penyebaran solusi antar-domain.[8]
Dalam IPv4 sangat sulit bagi organisasi untuk mendapatkan bahkan satu penugasan kelompok multicast yang dapat dialihkan secara global, dan implementasi solusi antar-domain bersifat misterius.[9] Penugasan alamat Unicast oleh registri Internet lokal untuk IPv6 memiliki setidaknya awalan perutean 64-bit, menghasilkan ukuran subnet terkecil yang tersedia di IPv6 (juga 64 bit). Dengan penugasan semacam itu, dimungkinkan untuk menyematkan awalan alamat unicast ke dalam format alamat multicast IPv6, sambil tetap memberikan blok 32-bit, bit paling tidak signifikan dari alamat, atau sekitar 4,2 miliar pengidentifikasi grup multicast. Dengan demikian setiap pengguna subnet IPv6 secara otomatis memiliki satu set grup multicast khusus sumber yang dapat dialihkan secara global untuk aplikasi multicast.[10]
IPsec
Internet Protocol Security (IPsec) pada awalnya dikembangkan untuk IPv6, tetapi menemukan penyebaran luas pertama di IPv4, di mana ia direkayasa ulang. IPsec adalah bagian wajib dari semua implementasi protokol IPv6, dan Internet Key Exchange (IKE) direkomendasikan, tetapi dengan RFC 6434 dimasukkannya IPsec dalam implementasi IPv6 diturunkan ke rekomendasi karena dianggap tidak praktis untuk memerlukan implementasi IPsec penuh untuk semua jenis perangkat yang mungkin menggunakan IPv6. Namun, pada implementasi protokol IPv6 RFC 4301 yang mengimplementasikan IPsec perlu mengimplementasikan IKEv2 dan perlu mendukung sekumpulan algoritma kriptografi minimum. Persyaratan ini akan membantu untuk membuat implementasi IPsec lebih dapat dioperasikan antara perangkat dari vendor yang berbeda. Header Otentikasi IPsec (AH) dan header Payload Keamanan Enkapsulasi (ESP) diimplementasikan sebagai header ekstensi IPv6.[11]
Mobilitas
Tidak seperti IPv4 seluler, IPv6 seluler menghindari perutean segitiga dan karenanya sama efisiennya dengan IPv6 asli. Router IPv6 juga dapat memungkinkan seluruh subnet untuk pindah ke titik koneksi router baru tanpa memberi nomor baru.[12]
Ekstensi header
Header paket IPv6 memiliki ukuran minimum 40 oktet (320 bit). Opsi diterapkan sebagai ekstensi. Ini memberikan peluang untuk memperluas protokol di masa depan tanpa mempengaruhi struktur paket inti. Namun, RFC 7872 mencatat bahwa beberapa operator jaringan menjatuhkan paket IPv6 dengan header ekstensi ketika mereka melintasi sistem otonom transit.
Jumbograms
IPv4 membatasi paket menjadi 65,535 (216−1) oktet muatan. Sebuah node IPv6 secara opsional dapat menangani paket di atas batas ini, disebut sebagai jumbogram, yang dapat sebesar 4,294,967,295 (232−1) oktet. Penggunaan jumbogram dapat meningkatkan kinerja melalui tautan MTU tinggi. Penggunaan jumbogram ditunjukkan oleh tajuk ekstensi Opsi Payload Jumbo.[13]
Paket IPv6 memiliki dua bagian: header dan payload.
Header terdiri dari bagian tetap dengan fungsionalitas minimal yang diperlukan untuk semua paket dan dapat diikuti oleh ekstensi opsional untuk mengimplementasikan fitur-fitur khusus.
Header tetap menempati 40 oktet pertama (320 bit) dari paket IPv6. Ini berisi sumber dan alamat tujuan, opsi klasifikasi lalu lintas, hop hop, dan jenis ekstensi opsional atau payload yang mengikuti header. Bidang Next Header ini memberi tahu penerima cara menafsirkan data yang mengikuti tajuk. Jika paket berisi opsi, bidang ini berisi jenis opsi dari opsi berikutnya. Bidang "Next Header" dari opsi terakhir, menunjuk ke protokol lapisan atas yang dibawa dalam muatan paket.
Ekstensi header membawa opsi yang digunakan untuk perlakuan khusus paket di jaringan, mis., Untuk perutean, fragmentasi, dan untuk keamanan menggunakan kerangka IPsec.
Tanpa opsi khusus, payload harus kurang dari 64kB. Dengan opsi Jumbo Payload (dalam header ekstensi Hop-By-HopOptions), payloadnya harus kurang dari 4 GB.
Berbeda dengan IPv4, router tidak pernah memecah sebuah paket. Host diharapkan untuk menggunakan Path MTU Discovery untuk membuat paket mereka cukup kecil untuk mencapai tujuan tanpa harus terfragmentasi. Lihat fragmentasi paket IPv6.
Pengalamatan
Alamat IPv6 memiliki 128 bit. Desain ruang alamat IPv6 mengimplementasikan filosofi desain yang berbeda dari IPv4, di mana subnetting digunakan untuk meningkatkan efisiensi pemanfaatan ruang alamat kecil. Dalam IPv6, ruang alamat dianggap cukup besar untuk masa mendatang, dan subnet area lokal selalu menggunakan 64 bit untuk bagian host dari alamat, yang ditunjuk sebagai pengenal antarmuka, sedangkan 64 bit yang paling signifikan digunakan sebagai prefix routing.[14] Sementara mitos telah ada mengenai subnet IPv6 tidak mungkin untuk memindai, RFC 7707 mencatat bahwa pola yang dihasilkan dari beberapa teknik dan algoritma konfigurasi alamat IPv6 memungkinkan pemindaian alamat dalam banyak skenario dunia nyata.
Representasi alamat
128 bit alamat IPv6 diwakili dalam 8 grup masing-masing 16 bit. Setiap kelompok ditulis sebagai empat digit heksadesimal (kadang-kadang disebut hextets[15][16] atau lebih formal hexadectets[17] dan secara informal quibble atau quad-nibble[17]) dan grup dipisahkan oleh titik dua (:). Contoh representasi ini adalah 2001: 0db8: 0000: 0000: 0000: ff00: 0042: 8329.
Untuk kenyamanan dan kejelasan, representasi alamat IPv6 dapat disingkat dengan aturan berikut.
Satu atau lebih nol di depan dari grup mana saja dari digit heksadesimal dihilangkan, yang biasanya dilakukan ke semua nol di depan. Misalnya, grup 0042 diubah menjadi 42.
Bagian nol berturut-turut diganti dengan dua titik dua (::). Ini hanya dapat digunakan sekali dalam satu alamat, karena beberapa penggunaan akan membuat alamat tersebut tidak pasti. RFC 5952 mensyaratkan bahwa titik dua ganda tidak digunakan untuk menunjukkan satu bagian nol yang dihilangkan.[18]
Setelah menghapus semua awalan nol di setiap grup: 2001:db8:0:0:0:ff00:42:8329
Setelah menghilangkan bagian nol berturut-turut: 2001:db8::ff00:42:8329
Alamat loopback 0000: 0000: 0000: 0000: 0000: 0000: 0000: 0001 didefinisikan dalam RFC 5156 dan disingkat menjadi :: 1 dengan menggunakan kedua aturan tersebut.
Semua antarmuka host IPv6 memerlukan alamat tautan-lokal. Alamat tautan-lokal IPv6 memiliki awalan fe80 :: / 10. Awalan ini dikombinasikan dengan sufiks 64 bit, yang dapat dihitung dan / atau ditetapkan sendiri oleh tuan rumah — tanpa konfigurasi dan tanpa kehadiran atau kerja sama komponen jaringan eksternal seperti server DHCP.
64 bit yang lebih rendah dari alamat tautan lokal (suffix) aslinya berasal dari alamat MAC dari kartu antarmuka jaringan yang mendasarinya. Karena metode pemberian alamat ini akan menyebabkan perubahan alamat yang tidak diinginkan ketika kartu jaringan yang salah diganti, dan juga mengalami sejumlah masalah keamanan dan privasi, RFC 8064 telah mengganti metode berbasis MAC asli dengan metode berbasis hash yang ditentukan dalam RFC 7217.
Pengalamatan global
Prosedur penugasan untuk alamat global mirip dengan konstruksi alamat lokal. Awalan disediakan dari iklan router di jaringan. Beberapa pengumuman awalan menyebabkan beberapa alamat dikonfigurasikan.[19]
Konfigurasi alamat stateless (SLAAC) memerlukan blok alamat / 64, sebagaimana didefinisikan dalam RFC 4291. Registri Internet lokal ditugaskan setidaknya / 32 blok, yang mereka bagi di antara jaringan bawahan.[20] Rekomendasi awal menyatakan penugasan sebuah / 48 subnet ke situs konsumen akhir (RFC3177). Ini digantikan oleh RFC6177,yang "merekomendasikan memberikan situs beranda secara signifikan lebih dari satu / 64, tetapi tidak merekomendasikan bahwa setiap situs beranda diberikan / 48 baik". / 56 secara khusus dipertimbangkan. Masih harus dilihat apakah ISP akan menghormati rekomendasi ini. Misalnya, selama uji coba awal, pelanggan Comcast diberi jaringan tunggal / 64.[21]
IPv6 dalam Sistem Nama Domain
Dalam Sistem Nama Domain (DNS), nama host dipetakan ke alamat IPv6 oleh catatan sumber daya AAAA ("quad-A"). Untuk resolusi terbalik, IETF mencadangkan domain ip6.arpa, di mana ruang nama secara hierarkis dibagi oleh representasi 1-digit heksadesimal dari unit nibble(4 bit) dari alamat IPv6. Skema ini didefinisikan dalam RFC 3596
Ketika sebuah host dual-stack menanyakan sebuah server DNS untuk menyelesaikan fully qualified domain name (FQDN), klien DNS dari host tersebut mengirimkan dua permintaan DNS, satu query A record dan yang lainnya query aaaa records. Sistem operasi host dapat dikonfigurasi dengan preferensi untuk aturan pemilihan alamat RFC 6724.[22]
Tipe catatan alternatif digunakan dalam implementasi DNS awal untuk IPv6, yang dirancang untuk memfasilitasi penomoran ulang jaringan, catatan A6 untuk pencarian maju dan sejumlah inovasi lain seperti label bit-string dan catatan DNAME. Ini didefinisikan dalam RFC 2874 dan rujukan-rujukannya (dengan diskusi lebih lanjut mengenai pro dan kontra dari kedua skema dalam RFC 3364), tetapi telah tidak digunakan lagi dalam status eksperimental (RFC 3363).
IPv6 tidak diramalkan akan menggantikan IPv4 secara instan. Kedua protokol akan terus beroperasi secara bersamaan untuk beberapa waktu. Oleh karena itu, mekanisme transisi IPv6 diperlukan untuk memungkinkan host IPv6 untuk mencapai layanan IPv4 dan memungkinkan host dan jaringan IPv6 yang terisolasi untuk saling menjangkau melalui infrastruktur IPv4.[23]
Menurut Silvia Hagen, implementasi dual-stack dari IPv4 dan IPv6 pada perangkat adalah cara termudah untuk bermigrasi ke IPv6.[22] Banyak mekanisme transisi lainnya menggunakan tunneling untuk merangkum lalu lintas IPv6 dalam jaringan IPv4 dan sebaliknya. Ini adalah solusi yang tidak sempurna, yang mengurangi unit transmisi maksimum (MTU) dari sebuah tautan dan karenanya mempersulit Path MTU Discovery, dan dapat meningkatkan latensi.[24]
Pelanggan ISP dengan IPv6 yang menghadap publik
Penyedia layanan Internet (ISP) semakin memberikan kepada pelanggan bisnis dan pribadi mereka alamat IPv6 global yang dihadapi publik. Namun, jika di jaringan area lokal (LAN) IPv4 masih digunakan, dan ISP hanya dapat menyediakan publik yang menghadapi IPv6, alamat IPv4 LAN diterjemahkan ke publik yang menghadap alamat IPv6 menggunakan NAT64, sebuah mekanisme terjemahan alamat jaringan (NAT). Beberapa ISP tidak dapat menyediakan pelanggan mereka dengan alamat IPv4 dan IPv6 yang menghadap publik, sehingga mendukung jaringan dual stack, karena beberapa ISP telah menghabiskan kumpulan alamat IPv4 yang dapat dirutekan secara global. Sementara itu, pelanggan ISP masih mencoba untuk mencapai server web IPv4 dan tujuan lainnya.[25]
Keamanan
Sejumlah implikasi keamanan mungkin timbul dari penggunaan IPv6. Beberapa dari mereka mungkin terkait dengan protokol IPv6 sendiri, sementara yang lain mungkin terkait dengan kelemahan implementasi.[26]
Jaringan bayangan
Penambahan node yang mengaktifkan IPv6 secara default oleh produsen perangkat lunak, dapat mengakibatkan pembuatan jaringan bayangan secara tidak sengaja, menyebabkan lalu lintas IPv6 mengalir ke jaringan yang hanya memiliki manajemen keamanan IPv4. Ini juga dapat terjadi dengan peningkatan sistem operasi, ketika sistem operasi yang lebih baru mengaktifkan IPv6 secara default, sedangkan yang lebih lama tidak. Gagal untuk memperbarui infrastruktur keamanan untuk mengakomodasi IPv6 dapat menyebabkan lalu lintas IPv6 menerobosnya.[27] Shadow network telah terjadi pada jaringan bisnis di mana perusahaan mengganti sistem Windows XP yang tidak memiliki tumpukan IPv6 diaktifkan secara default, dengan sistem Windows 7, yang melakukannya.[28] Beberapa implement IPv6 stack karenanya merekomendasikan untuk menonaktifkan alamat IPv4 yang dipetakan dan sebagai gantinya menggunakan jaringan dual-stack di mana mendukung IPv4 dan IPv6 diperlukan.[29]
Fragmentasi paket IPv6
Penelitian telah menunjukkan bahwa penggunaan fragmentasi dapat dimanfaatkan untuk menghindari kontrol keamanan jaringan, mirip dengan IPv4. Akibatnya, RFC 7112 mensyaratkan bahwa fragmen pertama dari paket IPv6 berisi seluruh rantai header IPv6, sehingga beberapa kasus fragmentasi yang sangat patologis dilarang. Selain itu, sebagai hasil dari penelitian tentang penghindaran RA-Guard di RFC 7113, RFC 6980 telah mencela penggunaan fragmentasi dengan Neighbor Discovery, dan mengecilkan penggunaan fragmentasi dengan Secure Neighbor Discovery (SEND).