
dns名稱伺服器同時充當快取伺服器(遞歸是)和權威伺服器(具有「example.com」區域的區域檔案),如果我查詢此名稱伺服器以取得有關「host.example.com」的資源記錄,會發生什麼? A).伺服器詢問根區域-->com區域> example.com區域 B).伺服器檢查其區域檔案並根據該區域檔案回應
簡而言之,哪個優先?
另一個類似的問題是區域檔案和 dns 快取之間哪個優先?
答案1
啟用遞歸的伺服器將在執行任一操作之前檢查自己的區域遞迴地查詢或轉發到另一台伺服器(轉發是將查詢傳遞到另一台伺服器的另一種方式)。
如果 DNS 伺服器沒有檢查它們具有權威性的本地區域,遞歸查詢將無限循環,因為查詢只會循環回您的 DNS 伺服器(因為它是該網域的權威伺服器)。
請注意,遞歸與快取無關。一些 DNS 伺服器實作快取來加速頻繁或最近查詢的網域的檢索,但這並不是遞歸查詢過程工作方式的組成部分。
這是遞歸的工作原理。三個紅色箭頭依照從上到下的順序出現。詢問 root .com 在哪裡,然後詢問 .com contoso.com 在哪裡,然後詢問 contoso.com example.contoso.com 在哪裡,並將答案路由回客戶端。
需要特別注意的是,我們在這裡處理的是根伺服器和 gTLD 伺服器,它們在全球網路生態系統中佔有特殊的地位。它們不允許遞歸,因為它們的負載將是巨大的。
因此,在上圖中,用戶端向本機 DNS 伺服器請求單一查詢,本機 DNS 伺服器決定以遞歸方式處理該請求(它將完成解析位址的所有步驟並發回單一回應)。然後,伺服器反覆查詢根伺服器和 gTLD 伺服器。然而,dns.contoso.com 伺服器本身可能啟用遞歸,因此它可能能夠為contoso.com 的其他子網域(如example1.example.contoso.com)(dns.example.contoso.com 上的權威)提供答案,而無需客戶端本機 DNS 伺服器的其他查詢。