DNS遞迴解析和迭代解析的區別-VeCloud

雲V小編發表於2020-10-09

DNS解析流程分為遞迴查詢和迭代查詢,遞迴查詢是以本地名稱伺服器為中心查詢, 

遞迴查詢是預設方式,迭代查詢是以DNS客戶端,也就是客戶機器為中心查詢。其實DNS客戶端和本地名稱伺服器是遞迴,而本地名稱伺服器和其他名稱伺服器之間是迭代。

什麼是遞迴DNS?

遞迴DNS查詢是一臺DNS伺服器與其他幾臺DNS伺服器通訊以查詢IP地址並將其返回給客戶端的地方。這與迭代DNS查詢相反,在迭代DNS查詢中,客戶端直接與查詢中涉及的每個DNS伺服器進行通訊。儘管這是一個非常技術性的定義,但仔細研究DNS系統以及遞迴和迭代之間的區別應該可以幫助您解決問題。

什麼是DNS伺服器?

每當使用者在瀏覽器視窗中輸入域名(例如“ idcbest.com”)時,都會觸發DNS查詢。然後,一系列稱為DNS伺服器的遠端計算機會找到該域的IP地址,並將其返回給使用者的計算機,以便他們可以訪問正確的網站。

幾種不同型別的DNS伺服器必須協同工作才能完成DNS查詢。DNS解析器、NS根伺服器、DNS TLD伺服器和DNS權威名稱伺服器都必須提供資訊以完成查詢。在快取的情況下,這些伺服器之一可能已在上一次查詢期間儲存了查詢的答案,然後可以將其從記憶體中傳遞出來。

遞迴和迭代之間有什麼區別?

遞迴和迭代是電腦科學術語,描述瞭解決問題的兩種不同方法。在遞迴中,程式會重複呼叫自身直到滿足條件,而在迭代過程中,將重複執行一組指令,直到滿足條件為止。如果不編寫程式碼,很難說明這種細微的區別,但是關鍵要點在於,遞迴是一種反覆呼叫自身的解決方案。前者需要確定解空間是收斂的,後者需要確定迴圈的結束條件。

例如,想象一下Jim在家裡丟了鑰匙,正在尋找一種系統的方式來找到它們。遞迴的解決方案是讓Jim一直尋找他的鑰匙,直到找到它們為止。吉姆將開始尋找,如果找不到他的鑰匙,他將返回原來的指示繼續尋找直到找到它們。一個迭代的解決方案是讓Jim搜尋一個房間五分鐘,然後返回他的指令並搜尋下一個房間五分鐘,然後繼續此迴圈,直到他找到自己的鑰匙或遍歷整個房間列表為止搜尋。

理解遞迴和迭代DNS查詢之間的區別並不需要對遞迴和迭代有深入的瞭解,在遞迴查詢中,DNS伺服器執行遞迴併繼續查詢其他DNS伺服器,直到它具有返回給客戶端的IP地址為止(通常是使用者的作業系統)。在迭代DNS查詢中,每個DNS查詢都使用一個地址直接響應客戶端,以供另一個DNS伺服器詢問,並且客戶端繼續查詢DNS伺服器,直到其中一個使用給定域的正確IP地址進行響應為止。

換句話說,客戶端在遞迴DNS查詢中進行某種形式的委派。它告訴DNS解析器,“嘿,我需要該域的IP地址,請查尋它,直到擁有它為止,再找我。”同時,在迭代查詢中,客戶端告訴DNS解析器, 

“嘿,我需要該域的IP地址。請在查詢過程中讓我知道下一個DNS伺服器的地址,以便我自己查詢。”

遞迴DNS有什麼優勢?

由於快取遞迴DNS查詢通常比迭代查詢的解析速度更快。遞迴DNS伺服器將對執行的每個查詢的最終答案進行快取,並將該最終答案儲存一定的時間(稱為生存時間)。

當遞迴解析器收到對其快取中已經具有的IP地址的查詢時,它可以快速將快取的答案提供給客戶端,而無需與任何其他DNS伺服器進行通訊。如果aDNS伺服器為許多客戶端提供服務和/或b請求的網站非常受歡迎,則很有可能從快取中快速提供響應。

遞迴DNS的缺點是什麼?

不幸的是,在開放的DNS伺服器上允許遞迴DNS查詢會造成安全漏洞,因為此配置可使攻擊者執行DNS放大攻擊和DNS快取中毒。

以上就是DNS遞迴解析和迭代解析的區別的介紹。

VeCloud的總部位於香港,並在北京、深圳以及上海設有分支機構,是一家面向企業提供雲交換網路服務為核心業務的技術創新企業。基於創新的雲網技術,以及優質的全球網路與IDC資料中心資源,推出了全球直連,快速可達的VeConnect平臺,實現網路服務商、IDC資料中心、雲服務商以及企業應用服務商的直連互通,為企業提供高效、安全、穩定、可靠的網路連線服務。



來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/69984549/viewspace-2725690/,如需轉載,請註明出處,否則將追究法律責任。

相關文章