Jawaban:
Nah, yang paling mungkin perbedaan adalah bahwa Anda masih harus melakukan yang sebenarnya lookup dari localhost
suatu tempat.
Jika Anda menggunakan 127.0.0.1
, maka perangkat lunak (cerdas) hanya akan mengubahnya secara langsung menjadi alamat IP dan menggunakannya. Beberapa implementasi gethostbyname
akan mendeteksi format bertitik (dan mungkin format IPv6 yang setara) dan tidak melakukan pencarian sama sekali.
Kalau tidak, nama itu harus diselesaikan. Dan tidak ada jaminan bahwa hosts
file Anda benar-benar akan digunakan untuk resolusi itu (pertama, atau sama sekali) sehingga localhost
dapat menjadi alamat IP yang sama sekali berbeda .
Maksud saya, pada beberapa sistem, hosts
file lokal dapat di-bypass. The host.conf
berkas kontrol ini pada Linux (dan banyak mesin-mesin Unix lainnya).
/etc/nsswitch.conf
memilih apakah hosts
atau DNS digunakan pertama kali untuk pencarian host, jika nss sedang berjalan.
Wikipedia merangkum ini dengan baik:
Pada sistem komputer modern, localhost sebagai hostname diterjemahkan ke alamat IPv4 di blok bersih 127.0.0.0/8 (loopback), biasanya 127.0.0.1, atau :: 1 di IPv6.
Satu-satunya perbedaan adalah bahwa itu akan mencari di DNS untuk sistem apa yang localhost
diputuskan. Pencarian ini sangat, sangat cepat. Misalnya, agar stackoverflow.com
Anda mengetiknya di bilah alamat (atau menggunakan bookmarklet yang menunjuk di sini). Either way, Anda sampai di sini melalui nama host. localhost
menyediakan fungsionalitas yang serupa.
beberapa aplikasi akan memperlakukan "localhost" secara khusus. klien mysql akan memperlakukan localhost sebagai permintaan untuk terhubung ke soket domain unix lokal alih-alih menggunakan tcp untuk terhubung ke server pada 127.0.0.1. Ini mungkin lebih cepat, dan mungkin berada di zona otentikasi yang berbeda.
Saya tidak tahu aplikasi lain yang memperlakukan localhost berbeda dari 127.0.0.1, tetapi mungkin ada beberapa.
Nah, dengan IP lebih cepat.
Pada dasarnya, ketika Anda memanggil dengan nama server, itu dikonversi ke IP asli.
Tetapi akan sulit untuk menghafal IP, karena alasan ini nama domain dibuat.
Secara pribadi saya menggunakan http://localhost
bukan http://127.0.0.1
atau http://username
.
localhost
dalam cara khusus . Aplikasi lain kemungkinan masih akan mencari localhost
.
Perbedaan utama adalah bahwa koneksi dapat dilakukan melalui Unix Domain Socket, seperti yang dinyatakan di sini: localhost vs. 127.0.0.1
localhost
protokol independen, baik IPv4 dan IPv6 akan berfungsi.