Linux

Linux 上 /etc/hosts 的格式(與 Windows 不同?)

  • December 28, 2017

粘貼在此問題下方的是/etc/hosts來自 Linux (CentOS) 和 Windows 機器的文件範例。Linux 文件在 IP 地址之後有兩個選項卡式條目(即 localhost.localdomain localhost),而 Windows 只有一個。如果我想在 Windows 中編輯主機文件以使用機器名稱 (etest) 而不是 localhost,我只需將單詞 localhost 替換為我想要的機器名稱。該機器不必是域的一部分。

在 Linux 機器中,這兩個條目localhost.localdomain似乎localhost表明我需要該機器成為域的一部分。這是真的?

我可以簡單地編輯這兩個條目etest,使其顯示為:

127.0.0.1       etest etest

還是需要我用域名替換一個條目?

另外,請讓我知道/etc/hostsLinux機器上文件的第二行是做什麼用的。

::1     localhost6.localdomain6 localhost6

hostsLinux機器上的文件:

# 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

hostswindows機器上的文件:

# 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

您總是希望 127.0.0.1 地址首先解析為 localhost。如果有域,您也可以使用它,但請確保 localhost 列在第二位。如果您想為您的機器添加別名以查找環回地址,您可以繼續將它們作為空格分隔的值添加到該行上。在此處指定域是可選的,但不要從選項中刪除“localhost”。

/etc/hostsLinux 和 Windows 上的格式相同:

IP address        hostname [hostalias]...

其中方括號是表示某些內容是可選的(實際上不要鍵入它們)的常用方式,而點 ( ...) 表示可以有多個。

您不應該讓您的主機成為域的一部分。試試看。.localdomain但是,如果您沒有真正的域名,那麼使用它會是一個好主意。由於. ndots_/etc/resolv.conf

請注意,在這個意義上,域是指 DNS 域(如google.comstackexchange.com),而不是 Windows 域或類似的任何東西。

::1IPv6開頭的行。 ::1就像127.0.0.1在新的定址方案下一樣。執行ifconfig lo,你應該看到它有兩個地址。請注意以 開頭的條目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
...

有關更多詳細資訊,請參見hosts(5) 手冊頁

引用自:https://unix.stackexchange.com/questions/13046