it-swarm-id.com

Format / etc / hosts di Linux (berbeda dari Windows?)

Disisipkan di bawah pertanyaan ini adalah contoh /etc/hosts file dari Linux (CentOS) dan mesin Windows. File Linux memiliki dua entri tab setelah alamat IP (yaitu localhost.localdomain localhost) dan Windows hanya memiliki satu. Jika saya ingin mengedit file host di Windows untuk memiliki nama mesin (etest) bukan localhost, saya cukup mengganti Word localhost dengan nama mesin yang saya inginkan. Mesin tidak perlu menjadi bagian dari domain.

Di mesin Linux, dua entri localhost.localdomain dan localhost tampaknya menunjukkan bahwa saya akan membutuhkan mesin untuk menjadi bagian dari suatu domain. Apakah ini benar?

Bisakah saya mengedit kedua entri ke etest sehingga akan membaca:

127.0.0.1       etest etest

atau apakah saya harus mengganti satu entri dengan nama domain?

Selain itu, tolong beri tahu saya apa baris kedua dari /etc/hosts file di mesin Linux untuk.

::1     localhost6.localdomain6 localhost6

file hosts pada mesin Linux:

# Do not remove the following line, or various programs
# that require network functionality will fail.
127.0.0.1       localhost.localdomain localhost
::1     localhost6.localdomain6 localhost6

hosts file di mesin windows:

# Copyright (c) 1993-1999 Microsoft Corp.
#
# This is a sample HOSTS file used by Microsoft TCP/IP for Windows.
#
# This file contains the mappings of IP addresses to Host names. Each
# entry should be kept on an individual line. The IP address should
# be placed in the first column followed by the corresponding Host name.
# The IP address and the Host name should be separated by at least one
# space.
#
# Additionally, comments (such as these) may be inserted on individual
# lines or following the machine name denoted by a '#' symbol.
#
# For example:
#
#      102.54.94.97     rhino.acme.com          # source server
#       38.25.63.10     x.acme.com              # x client Host

127.0.0.1       localhost
24
Thomas

Anda selalu ingin alamat 127.0.0.1 diselesaikan terlebih dahulu ke localhost. Jika ada domain, Anda juga dapat menggunakannya, tetapi pastikan localhost terdaftar di urutan kedua. Jika Anda ingin menambahkan alias untuk mesin Anda yang akan mencari alamat loopback, Anda dapat terus menambahkannya sebagai nilai yang dipisahkan ruang pada baris itu. Menentukan domain di sini adalah opsional, tetapi jangan hapus "localhost" dari opsi.

14
Caleb

Format /etc/hosts di Linux dan Windows sama:

IP address        hostname [hostalias]...

di mana tanda kurung adalah cara yang biasa untuk menunjukkan bahwa sesuatu itu opsional (tidak benar-benar mengetiknya) dan titik-titiknya (...) berarti mungkin ada lebih dari satu.

Anda tidak perlu menjadikan Host Anda bagian dari suatu domain. Cobalah dan lihatlah. Tetapi itu akan menjadi ide yang baik untuk menggunakan .localdomain jika Anda tidak memiliki nama domain asli. Ini dapat membuat resolusi nama Host sedikit lebih cepat karena opsi ndots 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. Lari 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 lebih jelasnya.

23
Mikel

Saya tidak dapat berbicara tentang perbedaan Windows dengan Linux, tetapi format definisi mesin lokal memengaruhi hasil yang akan Anda peroleh dari perintah 'hostname'.

Format yang saya temukan bekerja paling konsisten dengan baik 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, setelah itu.

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 melihat apa yang saya maksud. Seharusnya terlihat seperti ini:

$ hostname -s
etest

$ hostname -f
etest.mydomain.com

'hostname' dengan sendirinya akan 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: system error". Satu-satunya pengaturan yang saya temukan yang berfungsi dengan benar adalah menempatkan FQDN terlebih dahulu.

Saya selalu mengatur jalur alamat lokal IPv6 (:: 1) dengan cara yang sama, yaitu:

::1 etest.mydomain.com etest localhost

Saya tahu beberapa distribusi mengatur nama IPv6 ke sesuatu seperti ip6-localhost. Saya belum benar-benar menggunakan IPv6, jadi saya tidak bisa mengomentari pengaturan terbaik untuk baris ini. Saya hanya bisa mengatakan bahwa dalam jaringan IPv4 berfungsi untuk memiliki kedua jalur dengan nama yang sama.

6
Angelo Babudro

Simpan file host Slave sebagai

127.0.0.1 localhost

Simpan file master Host sebagai

<private ip> master
<private ip> slave1
<private ip> slave2

100% berfungsi

0
Puneet