Format /etc/hosts
di Linux dan Windows adalah sama:
IP address hostname [hostalias]...
di mana tanda kurung adalah cara biasa untuk menunjukkan bahwa ada sesuatu yang opsional (tidak benar-benar mengetiknya) dan titik (...
) artinya bisa lebih dari satu.
Anda tidak harus menjadikan host Anda bagian dari domain. Cobalah dan lihat. Tapi sebaiknya gunakan .localdomain
jika Anda tidak memiliki nama domain asli. Itu dapat membuat resolusi nama host sedikit lebih cepat karena ndots
opsi di /etc/resolv.conf
.
Perhatikan bahwa dalam pengertian ini, domain berarti domain DNS (seperti google.com
atau stackexchange.com
), bukan domain Windows atau semacamnya.
Baris dimulai dengan ::1
adalah untuk IPv6. ::1
seperti 127.0.0.1
di bawah skema pengalamatan baru. Jalankan ifconfig lo
dan Anda akan melihatnya memiliki dua alamat. Perhatikan entri yang dimulai dengan inet6
.
$ ifconfig lo
lo Link encap:Local Loopback
inet addr:127.0.0.1 Mask:255.0.0.0
inet6 addr: ::1/128 Scope:Host
...
Lihat halaman manual host(5) untuk detail lebih lanjut.
Anda selalu ingin alamat 127.0.0.1 diselesaikan terlebih dahulu ke localhost. Jika ada domain, Anda juga dapat menggunakannya, tetapi pastikan localhost terdaftar kedua. Jika Anda ingin menambahkan alias untuk mesin Anda yang akan mencari alamat loopback, Anda dapat terus menambahkannya sebagai nilai yang dipisahkan spasi pada baris tersebut. Menentukan domain di sini bersifat opsional, tetapi jangan hapus "localhost" dari opsi.
Saya tidak dapat berbicara tentang perbedaan Windows dari Linux, tetapi format definisi mesin lokal memengaruhi hasil yang akan Anda peroleh dari perintah 'hostname'.
Format yang menurut saya berfungsi paling baik secara konsisten adalah ini:
127.0.0.1 etest.mydomain.com etest localhost
Hal penting yang saya temukan adalah memiliki FQDN terlebih dahulu dan alias, dalam urutan apa pun, setelahnya.
Jika Anda bereksperimen dengan mengatur ulang nama setelah alamat IP dan kemudian menggunakan perintah 'hostname -s' (nama pendek) dan 'hostname -f' (nama domain yang memenuhi syarat atau FQDN), Anda akan mengerti maksud saya. Seharusnya terlihat seperti ini:
$ hostname -s
etest
$ hostname -f
etest.mydomain.com
'hostname' dengan sendirinya harus mengembalikan nama apa pun yang Anda masukkan untuk host di /etc/conf.d/hostname atau /etc/hostname (lokasi file bervariasi berdasarkan distribusi, tetapi harus ditemukan di bawah /etc di suatu tempat).
Jika Anda mengubah urutan nama Anda mungkin menemukan bahwa "hostname -f" memberi Anda respons seperti "localhost" atau "hostname:kesalahan sistem". Satu-satunya pengaturan yang menurut saya berfungsi dengan benar adalah mengutamakan FQDN.
Saya selalu menyetel baris alamat lokal IPv6 (::1) dengan cara yang sama, yaitu:
::1 etest.mydomain.com etest localhost
Saya tahu beberapa distribusi menyetel nama IPv6 menjadi sesuatu seperti ip6-localhost. Saya belum benar-benar menggunakan IPv6, jadi tidak dapat berkomentar tentang pengaturan terbaik untuk baris ini. Saya hanya dapat mengatakan bahwa dalam jaringan IPv4 berfungsi untuk memiliki kedua baris dengan nama yang sama.