**Alamat IP versi 4** (atau **IPv4**) adalah versi keempat dari Protokol Internet (IP). Ini adalah salah satu protokol inti dari metode internetworking berbasis standar di Internet dan jaringan packet-switched lainnya. IPv4 adalah versi pertama yang digunakan untuk produksi di ARPANET pada tahun 1983. IPv4 masih merutekan sebagian besar lalu lintas Internet saat ini, meskipun penerapan protokol penerus, IPv6 sedang berlangsung. IPv4 dijelaskan dalam publikasi IETF RFC 791 (September 1981), menggantikan definisi sebelumnya (RFC 760, Januari 1980).

IPv4 menggunakan ruang alamat 32-bit yang menyediakan 4.294.967.296 (232) alamat unik, tetapi blok besar digunakan untuk metode jaringan khusus.

Kegunaan
--------

Protokol internet adalah protokol yang mendefinisikan dan memungkinkan antarjaringan pada lapisan internet dari Internet Protocol Suite. Intinya itu membentuk Internet. Ini menggunakan sistem pengalamatan logis dan melakukan routing, yang merupakan penerusan paket dari host sumber ke router berikutnya yang satu hop lebih dekat ke host tujuan yang dituju di jaringan lain.

IPv4 adalah protokol tanpa koneksi, dan beroperasi pada model pengiriman upaya terbaik, dalam hal itu tidak menjamin pengiriman, juga tidak menjamin urutan yang tepat atau menghindari pengiriman duplikat. Aspek-aspek ini, termasuk integritas data, ditangani oleh protokol transportasi lapisan atas, seperti Transmission Control Protocol (TCP).

Pengalamatan
------------

Dekomposisi representasi alamat IPv4 kuadrat ke nilai binernya
IPv4 menggunakan alamat 32-bit yang membatasi ruang alamat ke alamat 4294967296 (232).

IPv4 meluangkan blok alamat khusus untuk jaringan pribadi (~ 18 juta alamat) dan alamat multicast (~ 270 juta alamat).

### Representasi alamat

Alamat IPv4 dapat direpresentasikan dalam notasi apa pun yang menyatakan nilai integer 32-bit. Mereka paling sering ditulis dalam notasi titik-desimal, yang terdiri dari empat oktet dari alamat yang dinyatakan secara individual dalam angka desimal dan dipisahkan oleh titik.

Misalnya, alamat IP titik-titik *192.0.2.235* mewakili angka desimal 32-bit 3221226219, yang dalam format heksadesimal adalah 0xC00002EB. Ini juga dapat dinyatakan dalam format hex bertitik sebagai 0xC0.0x00.0x02.0xEB, atau dengan nilai bita oktal sebagai 0300.0000.0002.0353.

Notasi CIDR menggabungkan alamat dengan awalan perutean dalam format ringkas, di mana alamat diikuti oleh karakter garis miring (/) dan jumlah 1 bit berturut-turut dalam awalan perutean (subnet mask).

Representasi alamat lain yang umum digunakan ketika jaringan berkelas (*classful*) dipraktikkan. Misalnya, alamat *loopback* 127.0.0.1 umumnya ditulis sebagai 127.1, mengingat bahwa itu milik jaringan kelas-A dengan delapan bit untuk topeng jaringan dan 24 bit untuk nomor host. Ketika kurang dari empat angka ditentukan dalam alamat dalam notasi bertitik, nilai terakhir diperlakukan sebagai bilangan bulat sebanyak bita yang diperlukan untuk mengisi alamat menjadi empat oktet. Dengan demikian, alamat *127.65530* setara dengan *127.0.255.250*.

### Alokasi

Dalam desain asli IPv4, alamat IP dibagi menjadi dua bagian: pengidentifikasi jaringan adalah oktet paling signifikan dari alamat, dan pengidentifikasi host adalah sisa alamat. Yang terakhir juga disebut *bidang istirahat*. Struktur ini diizinkan maksimum 256 pengidentifikasi jaringan, yang dengan cepat ditemukan tidak memadai.

Untuk mengatasi batas ini, oktet alamat paling signifikan didefinisikan ulang pada tahun 1981 untuk membuat *kelas jaringan*, dalam suatu sistem yang kemudian dikenal sebagai jaringan berkelas. Sistem yang direvisi mendefinisikan lima kelas. Kelas A, B, dan C memiliki panjang bit yang berbeda untuk identifikasi jaringan. Alamat lainnya digunakan seperti sebelumnya untuk mengidentifikasi host dalam jaringan. Karena ukuran bidang yang berbeda di kelas yang berbeda, setiap kelas jaringan memiliki kapasitas yang berbeda untuk menangani host. Selain tiga kelas untuk pengalamatan host, Kelas D didefinisikan untuk pengalamatan multicast dan Kelas E digunakan untuk aplikasi masa depan.

### Alamat penggunaan khusus

Internet Engineering Task Force (IETF) dan IANA telah membatasi penggunaan umum berbagai alamat IP yang digunakan untuk keperluan khusus. Khususnya alamat ini digunakan untuk lalu lintas multicast dan untuk menyediakan ruang pengalamatan untuk penggunaan tidak terbatas pada jaringan pribadi.

Blok alamat khusus| Alamat blok | Jarak alamat | Jumlah alamat | Cakupan | Deskripsi |
| --- | --- | --- | --- | --- |
| 0.0.0.0/8 | 0.0.0.0–0.255.255.255 | 16.777.216 | Perangkat lunak | Jaringan saat ini (hanya valid sebagai alamat sumber). |
| 10.0.0.0/8 | 10.0.0.0–10.255.255.255 | 16.777.216 | Jaringan pribadi | Digunakan untuk komunikasi lokal dalam jaringan pribadi. |
| 100.64.0.0/10 | 100.64.0.0–100.127.255.255 | 4.194.304 | Jaringan pribadi | Ruang alamat bersama untuk komunikasi antara penyedia layanan dan pelanggannya saat menggunakan NAT tingkat operator. |
| 127.0.0.0/8 | 127.0.0.0–127.255.255.255 | 16.777.216 | Host | Digunakan untuk alamat loopback ke host lokal. |
| 169.254.0.0/16 | 169.254.0.0–169.254.255.255 | 65.536 | Subnet | Digunakan untuk alamat lokal antara dua host pada satu tautan ketika tidak ada alamat IP yang ditentukan, seperti yang biasanya diambil dari peladen DHCP. |
| 172.16.0.0/12 | 172.16.0.0–172.31.255.255 | 1.048.576 | Jaringan pribadi | Digunakan untuk komunikasi lokal dalam jaringan pribadi. |
|
| 192.0.0.0/24 | 192.0.0.0–192.0.0.255 | 256 | Jaringan pribadi | Penugasan Protokol IETF. |
| 192.0.2.0/24 | 192.0.2.0–192.0.2.255 | 256 | Dokumentasi | Ditugaskan sebagai TEST-NET-1, dokumentasi dan contoh. |
| 192.88.99.0/24 | 192.88.99.0–192.88.99.255 | 256 | Internet | digunakan. Sebelumnya digunakan untuk relay IPv6 ke IPv4 (termasuk IPv6 blok alamat 2002 :: / 16). |
| 192.168.0.0/16 | 192.168.0.0–192.168.255.255 | 65.536 | Jaringan pribadi | Digunakan untuk komunikasi lokal dalam jaringan pribadi. |
| 198.18.0.0/15 | 198.18.0.0–198.19.255.255 | 131.072 | Jaringan pribadi | Digunakan untuk pengujian benchmark komunikasi antar-jaringan antara dua subnet yang terpisah. |
| 198.51.100.0/24 | 198.51.100.0–198.51.100.255 | 256 | Dokumentasi | Ditugaskan sebagai TEST-NET-2, dokumentasi dan contoh. |
| 203.0.113.0/24 | 203.0.113.0–203.0.113.255 | 256 | Dokumentasi | Ditugaskan sebagai TEST-NET-3, dokumentasi dan contoh. |
| 224.0.0.0/4 | 224.0.0.0–239.255.255.255 | 268.435.456 | Internet | Digunakan untuk IP multicast. (Bekas jaringan Kelas D). |
| 240.0.0.0/4 | 240.0.0.0–255.255.255.254 | 268.435.455 | Internet | digunakan untuk penggunaan di masa mendatang. (Bekas jaringan Kelas E). |
| 255.255.255.255/32 | 255.255.255.255 | 1 | Subnet | digunakan untuk alamat tujuan "terbatas siaran". |

### Jaringan pribadi

Dari sekitar empat miliar alamat yang ditentukan dalam IPv4, sekitar 18 juta alamat dalam tiga rentang digunakan untuk penggunaan dalam jaringan pribadi. Alamat paket dalam rentang ini tidak dapat dirutekan di Internet publik; mereka diabaikan oleh semua perute publik. Oleh karena itu, host pribadi tidak dapat secara langsung berkomunikasi dengan jaringan publik, tetapi memerlukan penerjemah alamat jaringan pada gerbang perutean untuk tujuan ini.

Rentang jaringan IPv4 pribadi yang dipakai| Nama | Blok CIDR | Kisaran alamat | Jumlah alamat | Deskripsi kelas |
| --- | --- | --- | --- | --- |
| Blok 24-bit | 10.0.0.0/8 | 10.0.0.0 – 10.255.255.255 | 16.777.216 | Kelas tunggal A. |
| Blok 20-bit | 172.16.0.0/12 | 172.16.0.0 – 172.31.255.255 | 1.048.576 | Kisaran 16 blok B yang berdekatan. |
| Blok 16-bit | 192.168.0.0/16 | 192.168.0.0 – 192.168.255.255 | 65.536 | Kisaran 256 blok C yang berdekatan. |

Karena dua jaringan pribadi, misalnya, dua kantor cabang, tidak dapat secara langsung beroperasi melalui Internet publik, kedua jaringan harus dijembatani di Internet melalui jaringan pribadi virtual (VPN) atau terowongan IP, yang merangkum paket, termasuk tajuk yang berisi alamat pribadi, dalam lapisan protokol selama transmisi di jaringan publik. Selain itu, paket enkapsulasi dapat dienkripsi untuk transmisi di jaringan publik untuk mengamankan data.

### Alamat subnet pertama dan terakhir

Alamat pertama di subnet digunakan untuk mengidentifikasi subnet itu sendiri. Di alamat ini semua bit host adalah *0*. Untuk menghindari ambiguitas dalam representasi, alamat ini dicadangkan. Alamat terakhir mengatur semua bit host ke *1*. Ini digunakan sebagai alamat siaran lokal untuk mengirim pesan ke semua perangkat di subnet secara bersamaan. Untuk jaringan berukuran /24 atau lebih besar, alamat siaran selalu diakhiri dengan 255.

Sebagai contoh, dalam subnet 192.168.5.0/255.255.255.0 (192.168.5.0/24) pengidentifikasi 192.168.5.0 biasanya digunakan untuk merujuk ke seluruh subnet. Untuk menghindari ambiguitas dalam representasi, alamat yang diakhiri dengan oktet *0* dimiliki.

|  | Bentuk biner | Notasi titik-desimal |
| --- | --- | --- |
| Ruang jaringan | `11000000.10101000.00000101.**00000000**` | 192.168.5.0 |
| Alamat siaran | `11000000.10101000.00000101.**11111111**` | 192.168.5.255 |
| Dalam huruf tebal, ditampilkan bagian host dari alamat IP; bagian lainnya adalah awalan jaringan. Host akan terbalik (TIDAK logis), tetapi prefix jaringan tetap utuh. |

Namun, ini tidak berarti bahwa setiap alamat yang diakhiri dengan 0 atau 255 tidak dapat digunakan sebagai alamat host. Misalnya, dalam subnet 192.168.0.0/255.255.0.0, yang setara dengan kisaran alamat 192.168.0.0–192.168.255.255, alamat broadcast adalah 192.168.255.255. Seseorang dapat menggunakan alamat berikut untuk host, meskipun berakhir dengan 255: 192.168.1.255, 192.168.2.255, dll. Juga, 192.168.0.0 adalah pengidentifikasi jaringan dan tidak boleh ditugaskan ke antarmuka. Alamat 192.168.1.0, 192.168.2.0, dll. Dapat ditetapkan, meskipun diakhiri dengan 0.

Di masa lalu, konflik antara alamat jaringan dan alamat siaran muncul karena beberapa perangkat lunak menggunakan alamat siaran non-standar dengan nol bukan satu.

Dalam jaringan yang lebih kecil dari / 24, alamat broadcast tidak harus diakhiri dengan 255. Misalnya, subnet CIDR 203.0.113.16/28 memiliki alamat broadcast 203.0.113.31.

|  | Bentuk biner | Notasi titik-desimal |
| --- | --- | --- |
| Ruang jaringan | `11001011.00000000.01110001.0001**0000**` | 203.0.113.16 |
| Alamat siaran | `11001011.00000000.01110001.0001**1111**` | 203.0.113.31 |
| Dalam huruf tebal, ditampilkan bagian host dari alamat IP; bagian lainnya adalah awalan jaringan. Host akan terbalik (TIDAK logis), tetapi prefix jaringan tetap utuh. |

Sebagai kasus khusus, jaringan / 31 memiliki kapasitas hanya untuk dua host. Jaringan ini biasanya digunakan untuk koneksi point-to-point. Tidak ada pengidentifikasi jaringan atau alamat broadcast untuk jaringan ini.

### Tautan alamat lokal

RFC 3927 mendefinisikan blok alamat khusus 169.254.0.0/16 untuk pengalamatan tautan-lokal. Alamat-alamat ini hanya valid pada tautan (seperti segmen jaringan lokal atau koneksi point-to-point) yang terhubung langsung ke host yang menggunakannya. Alamat-alamat ini tidak dapat dirutekan. Seperti alamat pribadi, alamat ini tidak dapat menjadi sumber atau tujuan paket yang melintasi internet. Alamat ini terutama digunakan untuk konfigurasi otomatis alamat (Zeroconf) ketika sebuah host tidak dapat memperoleh alamat IP dari server DHCP atau metode konfigurasi internal lainnya.

Ketika blok alamat digunakan, tidak ada standar untuk konfigurasi otomatis alamat. Microsoft menciptakan sebuah implementasi yang disebut Automatic Private IP Addressing (APIPA), yang digunakan pada jutaan mesin dan menjadi standar *de facto*. Bertahun-tahun kemudian, pada Mei 2005, IETF menetapkan standar formal dalam RFC 3927, yang berjudul *Dynamic Configuration of IPv4 Link-Local Addresses*.

### Loopback

Jaringan kelas A 127.0.0.0 (jaringan tanpa kelas 127.0.0.0/8) disediakan untuk loopback. Paket IP yang alamat sumbernya milik jaringan ini seharusnya tidak pernah muncul di luar host. Paket yang diterima pada antarmuka non-loopback dengan sumber loopback atau alamat tujuan harus dibuang.

### Resolusi alamat

Artikel utama: Sistem Penamaan Domain
Host di Internet biasanya dikenal dengan nama, mis. Www.example.com, bukan terutama berdasarkan alamat IP mereka, yang digunakan untuk perutean dan identifikasi antarmuka jaringan. Penggunaan nama domain membutuhkan penerjemahan, disebut *penyelesaian*, untuk alamat dan sebaliknya. Ini analog dengan mencari nomor telepon di buku telepon menggunakan nama penerima.

Terjemahan antara alamat dan nama domain dilakukan oleh Domain Name System (DNS), sistem penamaan terdistribusi hierarkis yang memungkinkan subdelegasi ruang nama ke server DNS lain.

Struktur paket
--------------

Paket IP terdiri dari bagian header dan bagian data. Sebuah paket IP tidak memiliki checksum data atau catatan kaki lain apa pun setelah bagian data. Biasanya lapisan taut data merangkum paket IP dalam bingkai dengan footer CRC yang mendeteksi sebagian besar kesalahan, dan biasanya checksum lapisan TCP ujung-ke-ujung mendeteksi sebagian besar kesalahan lainnya.

### Header

Header paket IPv4 terdiri dari 14 bidang, di mana 13 diperlukan. Bidang 14 adalah opsional dan diberi nama: opsi. Bidang-bidang dalam header dikemas dengan bita paling signifikan pertama (*big endian*), dan untuk diagram dan diskusi, bit paling signifikan dianggap lebih dulu (penomoran bit 0 MSB). Bit yang paling signifikan adalah bernomor 0, jadi bidang versi sebenarnya ditemukan dalam empat bit paling signifikan dari bita pertama, misalnya.

Format Header IPv4| *Offset* | Oktet | 0 | 1 | 2 | 3 |
| --- | --- | --- | --- | --- | --- |
| Oktet | Bit | 0 | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | 14 | 15 | 16 | 17 | 18 | 19 | 20 | 21 | 22 | 23 | 24 | 25 | 26 | 27 | 28 | 29 | 30 | 31 |
| 0 | 0 | Versi | IHL | DSCP | ECN | Total Panjang |
| 4 | 32 | Identifikasi | Flag | Offset Fragmen |
| 8 | 64 | Time To Live | Protokol | Checksum Header |
| 12 | 96 | Sumber Alamat IP |
| 16 | 128 | Alamat Tujuan IP |
| 20 | 160 | Opsi (jika IHL > 5) |
| 24 | 192 |
| 28 | 224 |
| 32 | 256 |

Versi
Bidang header pertama dalam paket IP adalah bidang versi empat-bit. Untuk IPv4, ini selalu sama dengan 4.
Internet Header Length (IHL)
Header IPv4 adalah variabel dalam ukuran karena bidang 14 opsional (opsi). Bidang IHL berisi ukuran header IPv4, memiliki 4 bit yang menentukan jumlah kata 32-bit di header. Nilai minimum untuk bidang ini adalah 5, yang menunjukkan panjang 5 × 32 bit = 160 bit = 20 bita. Sebagai bidang 4-bit, nilai maksimum adalah 15, ini berarti bahwa ukuran maksimum header IPv4 adalah 15 × 32 bit, atau 480 bit = 60 bita.
Differentiated Services Code Point (DSCP)
Awalnya didefinisikan sebagai type of service (ToS), bidang ini menentukan differentiated services (DiffServ) per RFC 2474. Streaming data waktu nyata memanfaatkan bidang DSCP. Sebuah contoh adalah Voice over IP (VoIP), yang digunakan untuk layanan suara interaktif.
Explicit Congestion Notification (ECN)
Bidang ini didefinisikan dalam RFC 3168 dan memungkinkan pemberitahuan ujung ke ujung tentang kemacetan jaringan tanpa menurunkan paket. ECN adalah fitur opsional tersedia ketika kedua titik akhir mendukungnya dan efektif bila juga didukung oleh jaringan yang mendasarinya.
Total panjang
Bidang 16-bit ini mendefinisikan seluruh ukuran paket dalam byte, termasuk header dan data. Ukuran minimum adalah 20 bita (header tanpa data) dan maksimum adalah 65.535 bita. Semua host diharuskan untuk menyusun kembali datagram ukuran hingga 576 bita, tetapi kebanyakan host modern menangani paket yang jauh lebih besar. Terkadang tautan memaksakan pembatasan lebih lanjut pada ukuran paket, di mana datagram harus terfragmentasi. Fragmentasi dalam IPv4 ditangani di host atau di router.
Identifikasi
Bidang ini adalah bidang identifikasi dan terutama digunakan untuk mengidentifikasi secara unik kelompok fragmen datagram IP tunggal. Beberapa karya eksperimental telah menyarankan penggunaan bidang ID untuk tujuan lain, seperti untuk menambahkan informasi penelusuran paket untuk membantu melacak datagram dengan alamat sumber palsu, tetapi RFC 6864 sekarang melarang penggunaan semacam itu.
Flag
Bidang tiga-bit mengikuti dan digunakan untuk mengontrol atau mengidentifikasi fragmen. Mereka (dalam urutan, dari yang paling signifikan hingga yang paling tidak signifikan):
* bit 0: Dicadangkan; harus nol.
* bit 1: Don't Fragment (DF)
* bit 2: Lebih Banyak Fragmen (MF)

Jika flag DF diatur, dan fragmentasi diperlukan untuk merutekan paket, maka paket tersebut dijatuhkan. Ini dapat digunakan saat mengirim paket ke host yang tidak memiliki sumber daya untuk menangani fragmentasi. Itu juga dapat digunakan untuk jalur penemuan MTU, baik secara otomatis oleh perangkat lunak IP host, atau secara manual menggunakan alat diagnostik seperti ping atau traceroute. Untuk paket yang tidak dibagi, bendera MF dihapus. Untuk paket terfragmentasi, semua fragmen kecuali yang terakhir memiliki flag MF yang ditetapkan. Fragmen terakhir memiliki bidang Fragmen Offset tidak ada-nol, membedakannya dari paket yang tidak terfragmentasi.

Fragment Offset
Bidang ini menentukan offset dari fragmen tertentu relatif terhadap awal datagram IP asli yang tidak terfragmentasi dalam unit blok delapan bita. Fragmen pertama memiliki offset nol. Bidang 13 bit memungkinkan offset maksimum (213 – 1) × 8 = 65,528 bita, yang, dengan menyertakan panjang header (65,528 + 20 = 65,548 bita), mendukung fragmentasi paket yang melebihi panjang IP maksimum 65.535 bita.
Header Checksum
Bidang checksum header IPv4 16-bit digunakan untuk pemeriksaan kesalahan pada header. Saat paket tiba di router, router menghitung checksum dari header dan membandingkannya dengan kolom checksum. Jika nilainya tidak cocok, router akan membuang paket tersebut. Kesalahan dalam bidang data harus ditangani oleh protokol yang dienkapsulasi. Baik UDP dan TCP memiliki kolom checksum.
Ketika sebuah paket tiba di sebuah router, router tersebut menurunkan bidang TTL. Akibatnya, router harus menghitung checksum baru.
Protokol
Bidang ini mendefinisikan protokol yang digunakan dalam bagian data datagram IP. IANA menyimpan daftar nomor protokol IP seperti yang diarahkan oleh RFC 790.
Alamat sumber
Bidang ini adalah alamat IPv4 pengirim paket. Perhatikan bahwa alamat ini dapat diubah saat transit oleh perangkat terjemahan alamat jaringan.
Alamat tujuan
Bidang ini adalah alamat IPv4 penerima paket. Lain halnya dengan alamat sumber, ini dapat diubah saat transit oleh perangkat terjemahan alamat jaringan.

Mengatasi kehabisan alamat
--------------------------

Sejak 1980-an, tampak jelas bahwa kumpulan alamat IPv4 yang tersedia semakin menipis pada tingkat yang pada awalnya tidak diantisipasi dalam desain asli jaringan. Kekuatan pasar utama yang mempercepat penipisan alamat termasuk meningkatnya jumlah pengguna Internet, yang semakin banyak menggunakan perangkat komputasi mobile, seperti komputer laptop, asisten digital pribadi (PDA), dan ponsel pintar dengan layanan data IP. Selain itu, akses Internet kecepatan tinggi didasarkan pada perangkat yang selalu aktif. Ancaman kehabisan memotivasi pengenalan sejumlah teknologi remedial, seperti metode Classless Inter-Domain Routing (CIDR) pada pertengahan 1990-an, penggunaan yang luas dari terjemahan alamat jaringan (NAT) dalam sistem penyedia akses jaringan, dan penggunaan yang ketat- kebijakan alokasi berdasarkan pada pendaftar Internet regional dan lokal.

Kumpulan alamat utama Internet, dikelola oleh IANA, habis pada 3 Februari 2011, ketika lima blok terakhir dialokasikan ke lima RIR. APNIC adalah RIR pertama yang menghabiskan kumpulan regionalnya pada 15 April 2011, kecuali untuk sejumlah kecil ruang alamat yang disediakan untuk teknologi transisi ke IPv6, yang akan dialokasikan berdasarkan kebijakan terbatas.

Solusi jangka panjang untuk mengatasi kehabisan alamat adalah spesifikasi 1998 dari versi baru dari Protokol Internet, IPv6. Ini memberikan ruang alamat yang sangat meningkat, tetapi juga memungkinkan peningkatan agregasi rute di Internet, dan menawarkan alokasi subnetwork besar dengan minimal 264 alamat host untuk pengguna akhir. Namun, IPv4 tidak secara langsung dapat dioperasikan dengan IPv6, sehingga host hanya IPv4 tidak dapat berkomunikasi secara langsung dengan host khusus IPv6. Dengan penghentian jaringan eksperimental 6bone yang dimulai pada tahun 2004, penyebaran formal permanen IPv6 dimulai pada tahun 2006. Penyelesaian penyebaran IPv6 diperkirakan akan memakan waktu yang cukup lama, sehingga teknologi transisi menengah diperlukan untuk memungkinkan host berpartisipasi di Internet menggunakan kedua versi protokol.

Fragmentasi dan penyusunan kembali
----------------------------------

Protokol Internet memungkinkan lalu lintas antar jaringan. Desainnya mengakomodasi jaringan-jaringan fisik yang beragam; itu tidak tergantung pada teknologi transmisi yang digunakan dalam lapisan tautan. Jaringan dengan perangkat keras yang berbeda biasanya bervariasi tidak hanya dalam kecepatan transmisi, tetapi juga dalam unit transmisi maksimum (MTU). Ketika satu jaringan ingin mengirimkan datagram ke jaringan dengan MTU yang lebih kecil, itu dapat fragmentasi datagram-nya. Dalam IPv4, fungsi ini ditempatkan di Lapisan Internet, dan dilakukan di router IPv4, yang karenanya tidak memerlukan implementasi lapisan yang lebih tinggi untuk fungsi routing paket IP.

### Fragmentasi

Ketika router menerima paket, itu memeriksa alamat tujuan dan menentukan antarmuka keluar untuk digunakan dan MTU antarmuka itu. Jika ukuran paket lebih besar dari MTU, dan bit Do not Fragment (DF) di header paket diatur ke 0, maka router dapat memecah-mecah paket.

Router membagi paket menjadi beberapa bagian. Ukuran maksimum setiap fragmen adalah MTU minus ukuran header IP (minimum 20 bita; maksimum 60 bita). Router menempatkan setiap fragmen ke dalam paketnya masing-masing, setiap paket fragmen memiliki perubahan berikut:

* *Bidang panjang* total adalah ukuran fragmen.
* Lebih banyak *bendera* fragmen (MF) diatur untuk semua fragmen kecuali yang terakhir, yang diatur ke 0.
* *Bidang offset* fragmen diatur, berdasarkan offset fragmen dalam muatan data asli. Ini diukur dalam satuan blok delapan bita.
* *Bidang checksum* header dihitung ulang.

Misalnya, untuk MTU 1.500 bita dan ukuran header 20 bita, offset fragmen akan menjadi kelipatan dari {\displaystyle {\frac {1500-20}{8}}=185}. Kelipatannya adalah 0, 185, 370, 555, 740, ...

Ada kemungkinan bahwa suatu paket terfragmentasi pada satu router, dan bahwa fragmen-fragmen tersebut selanjutnya terfragmentasi pada router lain. Misalnya, paket 4.520 bita, termasuk 20 bita header IP (tanpa opsi) terfragmentasi menjadi dua paket pada tautan dengan MTU 2.500 bita:

| Fragmen | Ukuran(bita) | Ukuran header(bita) | Ukuran data(bita) | Flag*lebih banyak fragmen* | Offset fragmen(Blok 8 bita) |
| --- | --- | --- | --- | --- | --- |
| 1 | 2500 | 20 | 2480 | 1 | 0 |
| 2 | 2040 | 20 | 2020 | 0 | 310 |

Ukuran data total dipertahankan: 2480 bita + 2020 bita = 4.500 bita. Offsetnya adalah {\displaystyle 0} dan {\displaystyle {\frac {0+2480}{8}}=310}.

Pada tautan dengan MTU 1.500 bita, setiap fragmen menghasilkan dua fragmen:

| Fragmen | Ukuran(bita) | Ukuran header(bita) | Ukuran data(bita) | Flag*lebih banyak fragmen* | Offset fragmen(Blok 8 bita) |
| --- | --- | --- | --- | --- | --- |
| 1 | 1500 | 20 | 1480 | 1 | 0 |
| 2 | 1020 | 20 | 1000 | 1 | 185 |
| 3 | 1500 | 20 | 1480 | 1 | 310 |
| 4 | 560 | 20 | 540 | 0 | 495 |

Sekali lagi, ukuran data dipertahankan: 1480 + 1000 = 2480, dan 1480 + 540 = 2020.

Juga dalam kasus ini, bit *Fragmen Lainnya* tetap 1 untuk semua fragmen yang datang dengan 1 di dalamnya dan untuk fragmen terakhir yang tiba, itu berfungsi seperti biasa, yaitu bit MF diatur ke 0 hanya di yang terakhir. Dan tentu saja, bidang Identifikasi terus memiliki nilai yang sama di semua fragmen yang terfragmentasi. Dengan cara ini, bahkan jika fragmen-fragmen ulang, penerima tahu bahwa mereka semua awalnya dimulai dari paket yang sama.

Offset terakhir dan ukuran data terakhir digunakan untuk menghitung ukuran data total: {\displaystyle 495\times 8+540=3960+540=4500}.

### Penyusunan kembali

Penerima tahu bahwa sebuah paket adalah sebuah fragmen, jika setidaknya salah satu dari kondisi berikut ini benar:

* Flag "lebih banyak fragmen" diatur, yang berlaku untuk semua fragmen kecuali yang terakhir.
* Bidang "offset fragmen" adalah bukan nol, yang berlaku untuk semua fragmen kecuali yang pertama.

Penerima mengidentifikasi fragmen yang cocok menggunakan alamat asing dan lokal, ID protokol, dan bidang identifikasi. Penerima menyusun kembali data dari fragmen dengan ID yang sama menggunakan offset fragmen dan bendera fragmen yang lebih banyak. Ketika penerima menerima fragmen terakhir, yang memiliki bendera "fragmen lebih" diatur ke 0, ia dapat menghitung ukuran muatan data asli, dengan mengalikan offset fragmen terakhir dengan delapan, dan menambahkan ukuran data fragmen terakhir. Dalam contoh yang diberikan, perhitungan ini adalah 495 \* 8 + 540 = 4.500 bita.

Ketika penerima memiliki semua fragmen, mereka dapat disusun kembali dalam urutan yang benar sesuai dengan offset, untuk membentuk datagram asli.

Protokol bantu
--------------

Alamat IP tidak terikat secara permanen dengan identifikasi perangkat keras dan, memang, antarmuka jaringan dapat memiliki beberapa alamat IP dalam sistem operasi modern. Host dan perute memerlukan mekanisme tambahan untuk mengidentifikasi hubungan antara antarmuka perangkat dan alamat IP, agar dapat mengirimkan paket IP dengan benar ke host tujuan pada tautan. Address Resolution Protocol (ARP) melakukan penafsiran alamat IP ke alamat MAC untuk IPv4. Selain itu, korelasi terbalik sering kali diperlukan. Misalnya, ketika host IP di-*boot* atau terhubung ke jaringan, ia perlu menentukan alamat IP-nya, kecuali jika alamat sudah dikonfigurasikan sebelumnya oleh administrator. Protokol untuk korelasi terbalik seperti itu ada di Internet Protocol Suite. Metode yang saat ini digunakan adalah Dynamic Host Configuration Protocol (DHCP), Bootstrap Protocol (BOOTP) dan, jarang, membalikkan ARP.

Lihat juga
----------

* Sejarah Internet
* Daftar blok alamat /8 IPv4 yang ditetapkan
* Daftar nomor protokol IP

Referensi
---------

1. ↑  "BGP Reports". *bgp.potaroo.net*. Diakses tanggal 2020-06-08.
2. 1 2 3 4  M. Cotton; L. Vegoda; R. Bonica; B. Haberman (April 2013). *Special-Purpose IP Address Registries*. Internet Engineering Task Force. doi:10.17487/RFC6890. BCP 153. RFC 6890. .  Updated by RFC 8190.
3. 1 2 3 4  Y. Rekhter; B. Moskowitz; D. Karrenberg; G. J. de Groot; E. Lear (February 1996). *Address Allocation for Private Internets*. Network Working Group. doi:10.17487/RFC1918. BCP 5. RFC 1918. .  diperbaharui oleh RFC 6761.
4. ↑  J. Weil; V. Kuarsingh; C. Donley; C. Liljenstolpe; M. Azinger (April 2012). *IANA-Reserved IPv4 Prefix for Shared Address Space*. Internet Engineering Task Force (IETF). doi:10.17487/RFC6598. ISSN 2070-1721. BCP 153. RFC 6598. .
5. ↑  S. Cheshire; B. Aboba; E. Guttman (May 2005). *Dynamic Configuration of IPv4 Link-Local Addresses*. Network Working Group. doi:10.17487/RFC3927. RFC 3927. .
6. 1 2 3  J. Arkko; M. Cotton; L. Vegoda (January 2010). *IPv4 Address Blocks Reserved for Documentation*. Internet Engineering Task Force. doi:10.17487/RFC5737. ISSN 2070-1721. RFC 5737. .
7. ↑  O. Troan (May 2015). B. Carpenter. ed. *Deprecating the Anycast Prefix for 6to4 Relay Routers*. Internet Engineering Task Force. doi:10.17487/RFC7526. BCP 196. RFC 7526. .
8. ↑  C. Huitema (June 2001). *An Anycast Prefix for 6to4 Relay Routers*. Network Working Group. doi:10.17487/RFC3068. RFC 3068. .  Obsoleted by RFC 7526.
9. ↑  S. Bradner; J. McQuaid (March 1999). *Benchmarking Methodology for Network Interconnect Devices*. Network Working Group. doi:10.17487/RFC2544. RFC 2544. .  Diperbarui oleh: RFC 6201 dan RFC 6815.
10. ↑  M. Cotton; L. Vegoda; D. Meyer (March 2010). *IANA Guidelines for IPv4 Multicast Address Assignments*. Internet Engineering Task Force. doi:10.17487/RFC5771. BCP 51. RFC 5771. .
11. ↑  J. Reynolds, ed. (January 2002). *Assigned Numbers: RFC 1700 is Replaced by an On-line Database*. Network Working Group. doi:10.17487/RFC3232. RFC 3232. .  Obsoletes RFC 1700.
12. ↑  Jeffrey Mogul (October 1984). *Broadcasting Internet Datagrams*. Network Working Group. doi:10.17487/RFC0919. RFC 919. .
13. ↑  "RFC 923". *IETF*. June 1984. Diakses tanggal 15 November 2019. Special Addresses: In certain contexts, it is useful to have fixed addresses with functional significance rather than as identifiers of specific hosts. When such usage is called for, the address zero is to be interpreted as meaning "this", as in "this network".
14. ↑  "RFC 923". *IETF*. June 1984. Diakses tanggal 15 November 2019. Special Addresses: In certain contexts, it is useful to have fixed addresses with functional significance rather than as identifiers of specific hosts. When such usage is called for, the address zero is to be interpreted as meaning "this", as in "this network".
15. ↑  Robert Braden (October 1989). "Requirements for Internet Hosts – Communication Layers". IETF. hlm. 31. RFC 1122 alt=Dapat diakses gratis.
16. ↑  Robert Braden (October 1989). "Requirements for Internet Hosts – Communication Layers". IETF. hlm. 66. RFC 1122 alt=Dapat diakses gratis.
17. ↑  RFC 3021
18. ↑  RFC 1726 section 6.2
19. ↑  Postel, J. "Internet Protocol". *tools.ietf.org* (dalam bahasa Inggris). Diakses tanggal 2020-06-10.
20. ↑  "Practical network support for IP traceback | Proceedings of the conference on Applications, Technologies, Architectures, and Protocols for Computer Communication". *dl.acm.org* (dalam bahasa Inggris). Diakses tanggal 2020-06-10.
21. ↑  "World 'running out of Internet addresses' - INQUIRER.net, Philippine News for Filipinos". *web.archive.org*. 2011-01-25. Archived from the original on 2011-01-25. Diakses tanggal 2020-06-10. Pemeliharaan CS1: Url tak layak (link)
22. ↑  "Free Pool of IPv4 Address Space Depleted The Number Resource Organization". *www.nro.net*. Diakses tanggal 2020-06-10.
23. ↑  "APNIC - APNIC IPv4 Address Pool Reaches Final /8". *web.archive.org*. 2011-08-07. Archived from the original on 2011-08-17. Diakses tanggal 2020-06-10. Pemeliharaan CS1: Url tak layak (link)
24. ↑  Deering <deering@cisco.com>, Stephen E. "Internet Protocol, Version 6 (IPv6) Specification". *tools.ietf.org* (dalam bahasa Inggris). Diakses tanggal 2020-06-10.
25. ↑  Hinden, Robert M.; Fink, Robert L. "6bone (IPv6 Testing Address Allocation) Phaseout". *tools.ietf.org* (dalam bahasa Inggris). Diakses tanggal 2020-06-10.
26. ↑  "Konferensi Internasional IEEE 2016 tentang Teknologi yang Muncul dan Praktik Bisnis Inovatif untuk Transformasi Masyarakat (EmergiTech): tanggal, 3-6 Agustus 2016. Universitas Teknologi, Mauritius, Institut Insinyur Listrik dan Elektronik. Piscataway, NJ". *Wikipedia* (dalam bahasa Inggris).

Pranala luar
------------


Wikiversity memiliki bahan belajar tentang ***IPv4***

* Internet Assigned Numbers Authority (IANA)
* IP, Protokol Internet Diarsipkan 2011-05-14 di Wayback Machine. - IP Header Breakdown, termasuk opsi spesifik
* Alamat IP di Tiongkok dan mitos tentang kekurangan alamat
* Laporan RIPE tentang konsumsi alamat pada Oktober 2003
* Keadaan resmi alokasi IPv4 / 8 saat ini, sebagaimana dikelola oleh IANA
* Hitung mundur dari sisa alamat IPv4 yang tersedia

| Pengawasan otoritas Sunting ini di Wikidata |
| --- |
| Umum | 

	+ Integrated Authority File (Jerman)
 |
| Lain-lain | 

	+ Microsoft Academic
 |



1. ↑  Updated by RFC 3168 and RFC 3260