Apa Perbedaan Antara Locahost dan Alamat IP Lokal?
Jika Anda melakukan banyak pengaturan jaringan, mengkonfigurasi aplikasi berbasis LAN dan alat server, atau hanya ingin tahu, Anda mungkin memperhatikan bahwa ada perbedaan antara localhost dengan alamat IP lokal. Baca terus untuk mengetahui perbedaannya.
Sesi Tanya Jawab hari ini datang kepada kami berkat SuperUser-subdivisi Stack Exchange, pengelompokan situs web Q&A berbasis komunitas.
Pertanyaan
SuperUser reader Diogo ingin tahu mengapa perintah ping memperlakukan localhost dan alamat IP lokal secara berbeda ketika, di permukaan, mereka tampak seperti hal yang sama:
Menggunakan cmd dan ping di Windows memberi saya hasil berikut:
Ping "localhost":
Ping "192.168.0.10" (alamat IP lokal):
Kedua situasi tidak persis sama?
Maksud saya, saya melakukan ping antarmuka yang sama, mesin yang sama dan alamat yang sama. Mengapa saya mendapatkan hasil yang berbeda?
Jelas ada perbedaan dalam beberapa hal, tetapi apa yang sebenarnya terjadi ketika Anda beralih di antara keduanya?
Jawabannya
Kontributor SuperUser Tom Wijsman menawarkan wawasan berikut tentang perbedaan halus antara keduanya:
Anda tidak melakukan ping pada antarmuka yang sama, tanpa antarmuka fisik Anda masih memiliki "host lokal".
Anda
localhost
digunakan untuk merujuk ke komputer Anda dari IP "internal", bukan dari IP "eksternal" komputer Anda. Jadi, paket ping tidak melewati antarmuka jaringan fisik apa pun; hanya melalui antarmuka loop kembali virtual yang langsung mengirim paket dari port ke port tanpa hop fisik.Anda mungkin masih bertanya-tanya mengapa
localhost
sedang memutuskan untuk:: 1
, sementara secara tradisional kami mengharapkannya untuk menyelesaikan ke alamat IPv4127.0.0.1
. Catat itu.localhost
secara tradisional TLD (lihat RFC 2606) yang menunjuk kembali ke alamat IP loop kembali (untuk IPv4, lihat RFC 3330, terutama 127.0.0.0/8).Mendongak
localhost
menggunakannslookup
memberi kita:
nslookup localhost
... Nama: localhost Alamat: :: 1 127.0.0.1
Jadi Windows lebih suka menggunakan alamat IP loop kembali IPv6
:: 1
(lihat RFC 2373) karena terdaftar pertama kali.Oke, jadi, dari mana asalnya, mari kita lihat file hosts.
ketik% WINDIR% \ System32 \ Drivers \ Etc \ Hosts
... # resolusi nama localhost ditangani dalam DNS itu sendiri. # 127.0.0.1 localhost # :: 1 localhost…
Hmm, kita harus melihat pengaturan DNS Windows.
Artikel KB ini memberi tahu kami tentang pengaturan yang memengaruhi apa yang lebih disukai Windows, ditekankan dalam huruf tebal:
- Di Penyunting Registri, temukan dan kemudian klik subkunci registri berikut:
HKEY_LOCAL_MACHINE \ SYSTEM \ CurrentControlSet \ Services \ Tcpip6 \ Parameter
- Klik dua kali DisabledComponents untuk mengubah entri DisabledComponents.Catatan: Jika entri DisabledComponents tidak tersedia, Anda harus membuatnya. Untuk melakukan ini, ikuti langkah-langkah ini:
- Di menu Edit, arahkan ke Baru, lalu klik Nilai DWORD (32-bit).
- Ketik DisabledComponents, lalu tekan ENTER.
- Klik dua kali DisabledComponents.
- Ketik salah satu dari nilai berikut di bidang Data nilai: untuk mengonfigurasi protokol IPv6 ke kondisi yang diinginkan, lalu klik OK:
- Mengetik
0
untuk mengaktifkan semua komponen IPv6. (Pengaturan standar Windows)- Mengetik
0xffffffff
untuk menonaktifkan semua komponen IPv6, kecuali antarmuka loopback IPv6. Nilai ini juga mengonfigurasi Windows untuk memilih menggunakan Protokol Internet versi 4 (IPv4) daripada IPv6 dengan memodifikasi entri dalam tabel kebijakan awalan. Untuk informasi lebih lanjut, lihat Pemilihan Sumber dan Alamat Alamat.- Mengetik
0x20
untuk memilih IPv4 daripada IPv6 dengan memodifikasi entri dalam tabel kebijakan awalan.- Mengetik
0x10
untuk menonaktifkan IPv6 pada semua antarmuka nontunnel (pada antarmuka LAN dan protokol Point-to-Point [PPP]).- Mengetik
0x01
untuk menonaktifkan IPv6 pada semua antarmuka terowongan. Ini termasuk Intra-Automatic Tunnel Addressing Protocol (ISATAP), 6to4, dan Teredo.- Mengetik
0x11
untuk menonaktifkan semua antarmuka IPv6 kecuali untuk antarmuka loopback IPv6.- Nyalakan kembali komputer agar pengaturan ini diterapkan.
Apa tabel kebijakan awalan ini?
antarmuka netsh ipv6 menunjukkan prefixpolicies
(atauprefixpolicy
pada versi sebelumnya)Awalan Label Precedence ---------- ----- -------------------------------- 50 0 :: 1/128 45 13 fc00 :: / 7 40 1 :: / 0 10 4 :: ffff: 0: 0/96 7 14 2002 :: / 16 5 5 2001 :: / 32 1 11 fec0 :: / 10 1 12 3ffe :: / 16 1 10 :: / 96
Tabel ini memutuskan awalan apa yang diutamakan daripada awalan lainnya selama DNS memutuskan.
Ah, jadi menggunakan KB itu kita bisa menambahkan entri di sini yang menunjukkan bahwa IPv4 memiliki prioritas lebih tinggi daripada IPv6.
catatan: Tidak ada alasan untuk menimpa perilaku ini, kecuali jika Anda mengalami masalah yang kompatibel. Mengubah pengaturan ini pada Windows Server kami memecah server email kami, sehingga harus ditangani dengan hati-hati ...
Tidak ada yang kami sukai selain jawaban menyeluruh dan informatif dengan dokumen pendukung yang tertaut. Jelas bahwa localhost dan alamat IP lokal adalah entitas yang berbeda, melayani tujuan yang berbeda, dan sekarang kita semua tahu mengapa.
Punya sesuatu untuk ditambahkan ke penjelasan? Berbunyi dalam komentar. Ingin membaca lebih banyak jawaban dari pengguna Stack Exchange yang mengerti teknologi lainnya? Lihat utas diskusi lengkap di sini.