Mengapa Localhost IP 127.0.0.1?

Geeks di seluruh dunia mengetahui host lokal mereka sebagai 127.0.0.1, tetapi mengapa alamat spesifik itu, dari semua alamat yang tersedia, disediakan untuk host lokal? Baca terus untuk mempelajari sejarah tuan rumah lokal.

Gambar oleh GMPhoenix; tersedia sebagai wallpaper di sini.

Sesi Tanya & Jawab hari ini diberikan kepada kami atas kebaikan SuperUser — subdivisi Stack Exchange, pengelompokan situs web Tanya Jawab yang didorong komunitas.

Pertanyaan

Pembaca SuperUser Roee Adler, yang penasaran dengan IP localhost default, mengajukan pertanyaan berikut kepada komunitas:

Saya bertanya-tanya darimana asal mula keputusan untuk membuat  localhostalamat IP  127.0.0.1. Apa "arti" dari  127? apa "arti" dari  0.0.1?

Apa sebenarnya artinya? Meskipun mungkin untuk menjalani seluruh keberadaan culun Anda tanpa mengetahui jawaban atas pertanyaan-pertanyaan itu, kami siap untuk menggali.

Jawaban

Beberapa kontributor ikut serta untuk menjawab pertanyaan Roee, masing-masing kontribusinya membantu menjelaskan lebih banyak tentang bagaimana 127.0.0.1 adalah tempat yang kita sebut rumah. John T menulis:

127 adalah nomor jaringan terakhir di jaringan kelas A dengan subnet mask  255.0.0.0127.0.0.1 adalah alamat pertama yang dapat ditetapkan di subnet. 127.0.0.0 tidak dapat digunakan karena itu adalah nomor kawatnya. Tetapi menggunakan nomor lain untuk bagian host seharusnya berfungsi dengan baik dan kembali menggunakan 127.0.0.1. Anda dapat mencobanya sendiri dengan melakukan ping  127.1.1.1 jika Anda mau. Mengapa mereka menunggu sampai nomor jaringan terakhir untuk menerapkan ini? Saya tidak berpikir itu didokumentasikan.

Hyperslug melakukan beberapa penyaringan arsip dengan menggali memorandum lama tentang masalah ini:

Penyebutan paling awal yang dapat saya temukan mengenai tugas 127 karena loopback adalah November 1986 RFC 990 yang ditulis oleh Reynolds dan Postel:

Alamat nol harus diartikan sebagai "ini", seperti dalam "jaringan ini".

Misalnya, alamat 0.0.0.37 dapat diartikan sebagai host 37 di jaringan ini.

Nomor jaringan kelas A 127 diberi fungsi "loopback", yaitu, datagram yang dikirim oleh protokol tingkat yang lebih tinggi ke alamat jaringan 127 harus mengulang kembali ke dalam host. Tidak ada datagram yang "dikirim" ke alamat 127 jaringan yang boleh muncul di jaringan mana pun.

Bahkan pada awal September 1981 RFC 790, 0 dan 127 sudah dipesan:

000.rrr.rrr.rrr Dicadangkan [JBP] ... 127.rrr.rrr.rrr Dicadangkan [JBP]

0 dan 127 adalah satu-satunya jaringan Kelas A yang dicadangkan pada tahun 1981. 0 digunakan untuk menunjuk ke host tertentu, sehingga tersisa 127 untuk loopback.

Saya tahu ini tidak menjawab pertanyaan, tapi sejauh yang saya bisa gali. Mungkin lebih masuk akal untuk memilih 1.0.0.0 untuk loopback tetapi itu sudah diberikan ke BBN Packet Radio Network.

Meskipun kita semua tahu dan menyukai 127.0.0.1 sebagai localhost, perlu dicatat bahwa ini tidak akan menjadi localhost selamanya. 127.0.0.1 adalah bagaimana localhost ditetapkan dalam komunikasi IPv4 dan, saat IPv6 perlahan mengambil alih, itu akan ditentukan oleh angka yang jauh lebih intuitif: 0: 0: 0: 0: 0: 0: 0: 1.

Punya sesuatu untuk ditambahkan ke penjelasannya? Suarakan di komentar. Ingin membaca lebih banyak jawaban dari pengguna Stack Exchange yang paham teknologi? Lihat utas diskusi lengkap di sini.