檢閱 DNS 概念

適用於:Windows Server 2022、Windows Server 2019、Windows Server 2016、Windows Server 2012 R2、Windows Server 2012

網域名稱系統 (DNS) 是代表命名空間的分散式資料庫。 命名空間包含任何用戶端查閱任何名稱所需的所有資訊。 任何 DNS 伺服器都可以回答其命名空間內任何名稱的查詢。 DNS 伺服器會以下列其中一種方式回答查詢:

  • 如果答案在其快取中,它會從快取中回答該查詢。
  • 如果答案位於 DNS 伺服器所裝載的區域中,則會從其區域回答該查詢。 區域是儲存在 DNS 伺服器上之 DNS 樹狀結構的一部分。 當 DNS 伺服器裝載一個區域時,其對該區域的名稱具有權威性 (亦即該 DNS 伺服器可以回答該區域中任何名稱的查詢)。 例如,裝載區域 contoso.com 的伺服器可以回答 contoso.com 中任何名稱的查詢。
  • 如果伺服器無法從其快取或區域回答查詢,則會查詢其他伺服器以獲得答案。

請務必了解 DNS 的核心功能,例如委派、遞迴名稱解析和 Active Directory 整合 DNS 區域,因為它們對 Active Directory 邏輯結構設計有直接影響。

如需 DNS 和 Active Directory Domain Services (AD DS) 的詳細資訊,請參閱 DNS 和 AD DS

委派

若要讓 DNS 伺服器回答任何名稱的查詢,它必須具有命名空間中每個區域的直接或間接路徑。 這些路徑是透過委派的方式建立的。 委派是上層區域中的記錄,其中列出下一階層中該區域的權威名稱伺服器。 委派可讓某個區域中的伺服器將用戶端參考到其他區域中的伺服器。 下圖顯示委派的一個範例。

DNS concepts

DNS 根伺服器裝載以點 (.) 表示的根區域。 根區域包含下一階層區域 (com 區域) 的委派。 根區域中的委派會告訴 DNS 根伺服器,若要尋找 com 區域,則必須連絡 Com 伺服器。 同樣地,com 區域中的委派會告訴 Com 伺服器,若要尋找 contoso.com 區域,則必須連絡 Contoso 伺服器。

注意

委派使用兩種類型的記錄。 名稱伺服器 (NS) 資源記錄會提供授權伺服器的名稱。 主機 (A) 和主機 (AAAA) 資源記錄提供授權伺服器的 IP 第 4 版 (IPv4) 和 IP 第 6 版 (IPv6) 位址。

這個區域和委派系統會建立一個階層式樹狀結構,代表 DNS 命名空間。 每個區域都代表階層中的圖層,而每個委派都代表樹狀結構的分支。

使用區域和委派的階層,DNS 根伺服器可以在 DNS 命名空間中找到任何名稱。 根區域包含直接或間接導向階層中所有其他區域的委派。 任何可查詢 DNS 根伺服器的伺服器,都可使用委派中的資訊來尋找命名空間中的任何名稱。

遞迴名稱解析

遞迴名稱解析是 DNS 伺服器使用區域階層和委派來回應其非權威查詢的程式。

在某些組態中,DNS 伺服器包含根提示 (亦即名稱和 IP 位址清單),讓它們能夠查詢 DNS 根伺服器。 在其他組態中,伺服器會將無法回答的所有查詢轉送給另一部伺服器。 轉送和根提示都是 DNS 伺服器可用來解析其非權威查詢的方法。

使用根目錄提示來解析名稱

根提示可讓任何 DNS 伺服器找出 DNS 根伺服器。 DNS 伺服器找到 DNS 根伺服器之後,即可解析該命名空間的任何查詢。 下圖說明 DNS 如何使用根提示解析名稱。

Illustration that shows how DNS resolves a name by using root hints.

在此範例中,會發生下列事件:

  1. 用戶端會將遞迴查詢傳送至 DNS 伺服器,以要求對應至名稱 ftp.contoso.com 的 IP 位址。 遞迴查詢表示用戶端想要其查詢的明確答案。 遞迴查詢的回應必須是有效的位址或指出找不到位址的訊息。
  2. 因為 DNS 伺服器對該名稱沒有權威性,且其快取中沒有答案,因此 DNS 伺服器會使用根提示來尋找 DNS 根伺服器的 IP 位址。
  3. DNS 伺服器會使用反覆查詢來要求 DNS 根伺服器解析名稱 ftp.contoso.com。 反覆查詢表示伺服器會接受推薦給另一部伺服器,以取代查詢的明確答案。 因為名稱 ftp.contoso.com 以標籤 com 結尾,所以 DNS 根伺服器會傳回一個推薦至裝載 com 區域的 Com 伺服器。
  4. DNS 伺服器會使用反覆查詢來要求 Com 伺服器來解析名稱 ftp.contoso.com。 因為名稱 ftp.contoso.com 以名稱 contoso.com 結尾,所以 Com 伺服器會傳回一個推薦至裝載 contoso.com 區域的 Contoso 伺服器。
  5. DNS 伺服器會使用反覆查詢來要求 Contoso 伺服器來解析名稱 ftp.contoso.com。 Contoso 伺服器會在其區域資料中尋找答案,然後將答案傳回伺服器。
  6. 伺服器接著會將結果傳回用戶端。

使用轉送解析名稱

轉送可讓您透過特定伺服器路由名稱解析,而不是使用根提示。 下圖說明 DNS 如何使用轉送來解析名稱。

Illustration that shows how DNS resolves a name by using forwarding.

在此範例中,會發生下列事件:

  1. 用戶端向 DNS 伺服器查詢名稱 ftp.contoso.com。
  2. DNS 伺服器會將查詢轉送至另一部稱為轉寄站的 DNS 伺服器。
  3. 因為轉寄站對該名稱沒有權威性,且其快取中沒有答案,因此它會使用根提示來尋找 DNS 根伺服器的 IP 位址。
  4. 轉寄站會使用反覆查詢來要求 DNS 根伺服器來解析名稱 ftp.contoso.com。 因為名稱 ftp.contoso.com 以名稱 com 結尾,所以 DNS 根伺服器會傳回一個推薦至裝載 com 區域的 Com 伺服器。
  5. 轉寄站會使用反覆查詢來要求 Com 伺服器來解析名稱 ftp.contoso.com。 因為名稱 ftp.contoso.com 以名稱 contoso.com 結尾,所以 Com 伺服器會傳回一個推薦至裝載 contoso.com 區域的 Contoso 伺服器。
  6. 轉寄站會使用反覆查詢來要求 Contoso 伺服器來解析名稱 ftp.contoso.com。 Contoso 伺服器在其區域檔案中尋找答案,然後將答案傳回伺服器。
  7. 轉寄站接著會將結果傳回原始 DNS 伺服器。
  8. 原始 DNS 伺服器接著會將結果傳回用戶端。