轉寄站是網路上的 DNS 伺服器,用來將外部 DNS 名稱的 DNS 查詢轉送至該網路外部 DNS 伺服器。 您也可以使用條件式轉送器,根據特定網域名稱轉寄查詢。 在本文中,瞭解 DNS 轉送,包括 Windows Server 中的委派、條件轉寄站和內部網路名稱解析。
轉發
網路上的 DNS 伺服器被指定為轉寄站,通过將其他 DNS 伺服器無法在本機解析的查詢轉給該伺服器來实现。 藉由使用轉寄站,您可以管理網路外部名稱的名稱解析,例如因特網上的名稱,並改善網路中計算機的名稱解析效率。
下圖說明如何使用轉寄伺服器來導向外部名稱查詢。
如果您未將特定 DNS 伺服器設定為轉寄站,DNS 伺服器會使用根提示在網路外部傳送查詢。 此設定可將內部 DNS 資訊公開至因特網,進而造成安全性和隱私權風險。 它也可能產生大量的外部流量,這對於因特網速度緩慢的網路或是網路費用高昂的公司來說可能效率不佳。
當您將 DNS 伺服器指定為轉寄站時,您會讓該轉寄站負責處理外部流量,限制 DNS 伺服器暴露在因特網上。 轉寄站會建置大型外部 DNS 資訊的快取,因為網路上的所有外部 DNS 查詢都會透過它加以解析。 在短時間內,轉寄站會使用快取的數據解析大部分的外部 DNS 查詢。 這表示網路上的因特網流量減少,並且 DNS 用戶端的回應時間也縮短。
行為
設定為使用轉寄站的 DNS 伺服器的行為與未設定為使用轉寄站的 DNS 伺服器不同。 設定為使用轉寄站的 DNS 伺服器的行為如下:
當 DNS 伺服器收到查詢時,它會嘗試使用它裝載的主要和次要區域及其快取來解析此查詢。
如果無法使用此本機數據解析查詢,則會將查詢轉送至指定為轉寄站的 DNS 伺服器。
DNS 伺服器會短暫等候轉寄站的解答,然後再嘗試連絡其根提示中指定的 DNS 伺服器。
當 DNS 伺服器將查詢轉送至轉寄站時,會將遞歸查詢傳送至轉寄站。 這種類型的查詢與 DNS 伺服器在標準名稱解析期間傳送至另一部 DNS 伺服器的反覆查詢不同。 也就是說,名稱解析不涉及轉寄站。
轉送順序
DNS 伺服器會根據 DNS 伺服器上列出 IP 位址的順序,使用轉寄站。 DNS 伺服器將查詢轉送至具有第一個 IP 位址的轉寄站之後,它會等待該轉寄站的簡短期間(根據 DNS 伺服器的逾時設定),再使用下一個 IP 位址繼續轉送作業。 它會繼續此程式,直到它收到來自轉寄站的肯定答案。
DNS 伺服器所使用的轉寄站取決於伺服器的組態。 根據預設,如果保留預設值,則會啟用 動態轉寄站重新排序 ,DNS 伺服器會使用下列轉寄站清單:
DNS 伺服器可讓系統管理員依慣用的順序建立轉寄站。
會維護轉寄站的動態清單。 動態清單會根據回應時間重新排序。 但清單也會大約每隔 15 分鐘重設為設定的順序。
針對每個查詢,系統會在動態清單中選取轉寄站。
如果回應時間大於 1 秒,則會被視為回應緩慢。 每個轉寄站都允許連續兩個緩慢回應,第三個慢速回應會移至動態清單的結尾。
如果清單中的所有伺服器都未回應,則 DNS 無法知道伺服器是否離線或速度緩慢。 監視每個 DNS 伺服器的可用性必須在系統外部完成。
小提示
從 Windows Server 2022 開始,如果轉寄站清單中沒有轉寄站回應,DNS 伺服器只會使用動態清單中的第一個轉寄站,直到 DNS 伺服器服務重新啟動為止。
轉寄者和委派
已配置轉寄站並托管父區域的 DNS 伺服器會在轉送查詢之前使用其委派資訊。 如果查詢中沒有 DNS 名稱的委派記錄,則 DNS 伺服器會使用其轉寄站來解析查詢。
轉寄站和根伺服器
為了讓 DNS 伺服器正確執行遞歸,它首先需要 DNS 網域命名空間中其他 DNS 伺服器的一些實用連絡資訊。 此資訊會以根提示的形式提供。 根提示是 DNS 服務用來定位負責管理根域的其他 DNS 伺服器的一個初始資源記錄列表。 根伺服器是域名系統(DNS)命名空間樹中根域名和頂級域的權威。
藉由使用根提示來尋找根伺服器,DNS 伺服器就能夠完成遞歸的使用。 理論上,此過程可讓任何 DNS 伺服器定位在命名空間樹狀結構中的任何層級所使用的任何其他 DNS 域名的權威伺服器。
根伺服器無法使用標準轉送進行設定。 如果查詢任何網域名稱的根伺服器,它會以兩種方式之一回應。 它是指可以回答問題的 DNS 伺服器(從其本機區域、快取),或回應失敗。 失敗回應會顯示有 NXDOMAIN
答案。 它無法設定為轉送至特定伺服器。 設定轉送時常見的錯誤是在私人 DNS 命名空間的根伺服器上嘗試設定轉送。
根伺服器可以使用條件式轉寄站進行設定。 條件式轉送可用來在個別 DNS 命名空間中的根伺服器之間轉送查詢,不過命名空間中最上層網域的 DNS 伺服器更適合這種解析方法。
條件式轉寄站
條件式轉寄站是網路上的 DNS 伺服器,可用來根據查詢中的 DNS 功能變數名稱轉送 DNS 查詢。 例如,DNS 伺服器可以設定為將接收到的所有查詢,針對名稱以 north.contoso.com
結尾的項目,轉送到單一 DNS 伺服器的 IP 位址或多個 DNS 伺服器的 IP 位址。
內部網路名稱解析
條件式轉寄站可用來改善內部網路內網域的名稱解析。 設定具有特定內部網域名稱轉寄站的 DNS 伺服器,可以改善內部域名解析。 例如,網域中的所有 north.contoso.com
DNS 伺服器都可以設定為將結尾south.contoso.com
為 的查詢轉送至授權 DNS 伺服器、移除查詢根伺服器south.contoso.com
.contoso.com
的步驟,或移除在具有次要區域的區域中north.contoso.com
設定 DNS 伺服器south.contoso.com
的步驟。
因特網名稱解析
DNS 伺服器可以使用條件式轉寄站來解析共享資訊之公司的 DNS 功能變數名稱之間的查詢。 例如,Contoso 和 Tailspin Toys 兩家公司想要改善 Contoso 的 DNS 用戶端如何解析 Tailspin Toys 伺服器的名稱。 Tailspin Toys 的系統管理員通知 Contoso 的系統管理員,關於 Tailspin Toys 網路中的 DNS 伺服器集,Contoso 可以在這裡對網域 outdoor.tailspintoys.com
傳送查詢。 Contoso 網路內的 DNS 伺服器已設定為將所有查詢,凡名稱以 outdoor.tailspintoys.com
結尾者,轉送至 Tailspin Toys 網路中指定的 DNS 伺服器。 因此,Contoso 網路中 DNS 伺服器不需要查詢其內部根伺服器,或因特網根伺服器來解析結尾為 outdoor.tailspintoys.com
的名稱查詢。