FreeBSD   /etc/hosts

.逸晨


hosts 是用來定義機器的 IP 與主機名稱。
hosts 您可以將它假想成是每臺主機獨用的 DNS,透過它您可以快速的查詢到已定義過的主機名稱所對映的 IP 位址。 此定義檔設定的格式如下︰

範例編號IP 位址主機名稱 (hostname)別名 (alias)
1127.0.0.1localhost.www.mycorp.comlocalhost
2192.168.168.1www.mycorp.comwww
3192.168.168.1ftp.mycorp.combbs
422.3.169.28game 
5168.95.1.88www.hinet.nethinet
6202.1.237.21tw.yahoo.comkimo

在上方表格中︰

  • 主機名稱通常是使用完整的網域名稱,也就是主機名稱加上網域名稱。
    如︰www.mycorp.com
    www 為主機名稱;mycorp.com 為網域名稱 (Domain name)
  • 別名 (alias) 可以隨您任意命名,它是用來替代主機名稱的。如果您想不出來或不想取別名,您可以省略這一部份。
  • 編號 1 是必需要的,通常是由系統依據您先前所給予的相關設定值,自動為您寫入檔案中的。
    如果您發現 /etc/hosts 中沒有 127.0.0.1 的對映設定,您需要手動加上。別名的部份請勿省略,因為在管理測試上您將會時常用到。
  • 編號 4 的設定,雖然不會造成任何錯誤,但是它是不好的設定格式,因為您可能在日後會忘記這個 IP 的正確網域名稱。
  • 您可以將這臺主機常會連結的遠端主機的 IP 位址與網域名稱給編進來,這樣可以省下前往 DNS 查詢的時間,加速連線。
  • 請將最常連結的遠端主機放置於檔案的前面,因為它是由檔案的最前面逐行搜尋而下。
  • 基於上一項敘述,如果您的別名有取相同名稱的話,排在後面的將會被忽略掉。所以千萬不要有相同別名的情況出現。
在來,您需要瞭解一個與 hosts 稍微有點關聯的檔案,它的名字叫 hosts.conf,完整的路徑名稱為 /etc/hosts.conf
這個檔案是用來告訴系統當要查詢 hostname 所對映的 IP 時,它應該要查詢的順序。
這個檔案的內容如下,您只需按照需求改變查詢的順序即可;不過通常是無需去改變的。

# $FreeBSD: src/etc/host.conf,v 1.6 1999/08/27 23:23:41 peter Exp $
# First try the /etc/hosts file
hosts
# Now try the nameserver next.
bind
# If you have YP/NIS configured, uncomment the next line
# nis

如同 hosts 一樣,整個查詢的順序是由上而下;也就是說擺在最上面的先查詢,查詢不到再由下面的來查詢。

  • hosts 向 /etc/hosts 檔案中查詢
  • bind 向網域名稱伺服器 (Domain Name Server => DNS) 查詢
  • nis 向 NIS/YP server 查詢
如果您的主機是 NIS/YP client,您應該將 nis 的註解符號 # 去除,並移到最上面,以獲取較快的連線時間。

另外,您還需瞭解另一與 hosts 算的上是遠房親戚的檔案,它的名字叫 resolv.conf,完整的路徑名稱為 /etc/resolv.conf
它用來設定您的主機名稱、網域名稱伺服器位址與網域搜尋的順序。
全部只有三個參數,參數與其設定值間請按 TAB 鍵或空白鍵來做間隔;若設定值不只一個,請按空白鍵來做間隔。
各參數的解說如下︰
domain mycorp.com
設定您的網域名稱為 mycorp.com

nameserver 168.95.1.1
設定您的網域名稱伺服器主機位址,您可以設定多部 Domain Name Server,系統會依序一部接一部去查詢。
請以每一部主機為一行的格式來設定。

search hinet.net yahoo.com
設定網域搜尋的順序。
當您鍵入不是以符號 . 做結尾的主機名稱時,系統會自動將這些網域附加上去搜尋。
此參數為非必需選項。

如果將三個檔案整合起來看的話,我們用例子來說明好了。
假如您在瀏灠器上輸入 http://hinet 的話,系統會先查詢 /etc/hosts 中有無主機名稱『hinet』的 IP,如果有的話,就直接取用它的 IP 位址。如果沒有的話,就會查看 /etc/resolv.conf 檔案 search 參數中設定的網域,並將其加在 hinet 之後,再向 /etc/resolv.conf 檔案 nameserver 參數中設定的主機 (168.95.1.1) 查詢 hinet.hinet.net 這個主機名稱所對映的 IP,如果找不到對映的 IP,就換查詢 hinet.nctu.edu.tw 這個主機名稱所對映的 IP,直到 search 的網域設定都找光了還是沒有,就會放棄。
搜尋這個功能雖然可以減少您的打字數,但是卻不是很容易習慣它,所以除非您確定您需要它,不然還是不要設定的好,以免發生無法連上目的主機時,常因忘了有設定 search 的功能,而偵錯了老半天。


上一篇返回首頁目錄索引章節目錄回上一頁Page UP下一篇

最佳瀏灠環境︰Mozilla & 1024x768