共用方式為


反向查找

在大部分的 DNS 查閱中,用戶端通常會執行正向查閱,這是根據另一部計算機 DNS 名稱作為儲存在位址 (A) RR 中的搜尋。 這種類型的查詢預期IP位址是回應回應的資源數據。

DNS 也提供反向查閱程式,讓客戶端能夠在名稱查詢期間使用已知的 IP 位址,並根據其位址查閱電腦名稱。 反向查閱採用問題的形式,例如「你能告訴我使用IP位址192.168.1.20的電腦 DNS 名稱嗎?

反向查詢的運作方式

DNS 標準中定義了稱為 in-addr.arpa 網域的特殊網域。 此網域會保留於因特網 DNS 命名空間中,以提供實際且可靠的方式來執行反向查詢。 若要建立反向命名空間,定義域中的 in-addr.arpa 子域是使用IP位址點十進位表示法中數位的反向順序來形成。

從左至右讀取IP位址時,相較於 DNS 名稱,它們會以相反的方式解譯。 每個八位組值的網域反向順序是必要的。 從左至右讀取IP位址時,它會從網路地址開始,並以主機位址結尾。 因此,在構建 in-addr.arpa 網域樹狀結構時,必須將 IP 位址的八位元組順序反轉。 DNS in-addr.arpa 樹狀結構的IP位址可以委派給公司,因為它們在因特網定義的位址類別中指派了特定或有限的一組IP位址。

最後,內建的 addr.arpa 網域樹狀結構需要定義另一個 RR 類型,即指標 (PTR) RR。 此 RR 是用來在反向對應區域中建立對應,該對應通常會對應至其正向對應區域中主機之 DNS 計算機名稱的主機 (A) 名為 RR 的主機。

in-addr.arpa 網域適用於以因特網通訊協定第 4 版(IPv4) 尋址為基礎的所有 TCP/IP 網路。 [新增區域精靈] 在建立新的反向查詢區域時,會自動假定您使用的是此網域。

如果您要為因特網通訊協定第 6 版 (IPv6) 網路設定反向對應區域,您可以使用 [新增區域精靈] 來指定確切的名稱。 這可讓您在 DNS 控制台中建立反向對應區域,以用來支援 IPv6 網路。 IPv6 區域使用不同的特殊網域名稱,也就是 ip6.arpa 網域。

如需 IPv6 和 DNS 的相關資訊,包括如何建立和使用 ip6.arpa 網域名稱的範例(如 RFC 1886 中所述),請參閱 DNS 參考資訊

備註

透過反向查詢識別主機的 PTR R R 和反向對應區域設定,絕對是 DNS 標準實作的選擇性部分。 您不一定需要使用反向查找區域,但對於某些網路應用程式而言,它們可能會被用來進行安全性檢查。

範例:IPv4 反向查詢

下圖顯示 DNS 用戶端 (host-b) 所起始的反向查詢範例,以根據其 IP 位址 192.168.1.20 來瞭解另一個主機的名稱(host-a)。

此圖顯示 DNS 用戶端起始的反向查詢,以根據其 IP 位址來瞭解另一部主機的名稱。

如下圖所示的反向查詢程式會在下列步驟中發生:

  1. 用戶端 host-b會查詢 DNS 伺服器是否有對應至 192.168.1.20 host-a之 IP 位址的指標 (PTR) RR。

    因為查詢是針對 PTR 記錄,因此解析程式會反轉位址,並將網域附加 in-addr.arpa 至反向地址的結尾。 此查詢會形成在反向查找區域中搜尋的完整網域名稱(20.1.168.192.in-addr.arpa.)。

  2. 在找到記錄後,20.1.168.192.in-addr.arpa 的授權 DNS 伺服器可以回應 PTR 記錄資訊。 此回應包含的 host-aDNS 功能變數名稱,完成反向對應。

    如果查詢的反向名稱無法從 DNS 伺服器接聽,則一般 DNS 解析(遞歸或反覆專案)可用來找出具有反向對應區域授權且包含查詢名稱的 DNS 伺服器。 從這個意義上說,反向查閱中使用的名稱解析程式與正向查閱的名稱解析程式相同。