名稱解析

DNS 協助指定 IP 位址給一或多個名稱以及指定名稱給 IP 位址。在 Linux 中,這種轉換通常是由已知為 bind 的特殊類型軟體執行的。處理這個轉換的機器稱為「名稱伺服器」(name server)。名稱組成階層系統,其中每個名稱元件以點分隔。但是,名稱階層與上述的 IP 位址階層無關。

考慮使用完整名稱,如 earth.example.com,以 hostname.domain 格式來表示。完整名稱,也就是完整領域名稱 (Fully Qualified Domain Name,FQDN),是由主機名稱和領域名稱 (example.com) 組成的。後者也包含了「最上層網域」(top level domain)或 TLD (com)。

TLD 指定因為過去的緣故變得相當混淆。習慣上,美國使用三個字母的網域名稱。全世界的其他國家,則是使用兩個字母的 ISO 國際代碼為標準。除此之外,2000 年引入了較長的 TLD,代表特定活動範圍 (例如,.info.name.museum)。

在早期的網際網路 (1990 年前),是使用檔案 /etc/hosts 儲存網際網路上所有機器的代表名稱。這種方式,對於連接到網際網路、快速增長的電腦數量層面而言,很快就證實是不切實際的。基於此因素,又開發出分散式的資料庫,以廣泛分散的方式來儲存主機名稱。這種資料庫與名稱伺服器類似,沒有有關網際網路上所有主機的立即可用資料,但是可以分散要求到其他名稱伺服器。

階層的最上層是由「root 名稱伺服器」(root name server)所使用。這些 root 名稱伺服器管理最上層網域,且由「網路資訊中心」(Network Information Center,NIC) 負責管理。每個 root 名稱伺服器知道負責指定最上層網域的名稱伺服器。有關最上層網域 NIC 的資訊可從 http://www.internic.net 取得。

DNS 的功能不只是解析主機名稱。名稱伺服器也知道哪個主機,即「郵件交換器」(Mail Exchanger,MX),負責接收該網域的電子郵件。

若要讓您的機器能夠解析 IP 位址,它必須知道至少一個名稱伺服器及其 IP 位址。透過 YaST 的幫助可以輕鬆指定這類名稱伺服器。如果您使用數據機撥接連接,完全不需要手動設定名稱伺服器。撥接通訊協定在連接建立時會提供名稱伺服器位址。如需關於設定 SUSE Linux EnterpriseŽ 名稱伺服器存取權限的詳細資訊,請參閱第 33 章「網域名稱系統

whois 通訊協定與 DNS 密切相關。利用此程式,可快速找出伺服器負責哪個指定網域。

[Note]MDNS 和 .local 網域名稱

.local 最上層網域將被解析程式視為連結本地網域。DNS 要求將做為多路廣播 DNS 要求予以傳送,而非通常的 DNS 要求。如果已在名稱伺服器組態中使用了 .local 網域,則必須在 /etc/host.conf 中關閉此選項。同時,請檢視 host.conf 手冊頁。

如果要在安裝期間關閉 MDNS,請使用 nomdns=1 做為開機參數。

如需有關多路廣播 DNS 的詳細資訊,請參閱 http://www.multicastdns.org