爲了瞭解DNS解析的整個過程,可是我查看了一些博文,但都不是我想要的結果,要麼講的很淺顯,要麼就是那種專門作計算機網絡才能看得懂得文章,所以爲了不之後本身忘掉,把此次的理解總結一下。緩存
DNS大體解析過程以下:服務器
首先我先說一下我對DNS遞歸查詢以及迭代查詢的理解:DNS的解析過程默認是採用遞歸查詢,也就是一層一層的傳遞下去,可是若是遇到某個服務器的RA字段(表示是否支持遞歸查詢)爲0,或者DNS域名查詢請求中RD字段(表示是否指望使用遞歸查詢)爲0時,此時將會採用迭代查詢,迭代查詢就是每次查詢到的結果不是由你遞交請求的服務器代你繼續查詢,而是將查詢結果返回給當前發出請求的機器。上圖客戶端將域名查詢請求交給本地DNS服務器以後是由本地DNS服務器代替客戶端繼續查詢,而不是將根域名服務器的地址返回給客戶端,再讓客戶端請求,所以該階段就是遞歸查詢;本地DNS服務器後面的過程就是迭代查詢過程。當客戶端須要經過一個域名請求資源時,必須知道該域名對應的IP地址是什麼;爲何必定要知道請求目的地的IP才能發送請求?由於咱們現有的網絡幾乎都是基於TCP/IP協議的,而TCP/IP協議是基於IP地址的進行通信的。假設如今客戶端要訪問www.google.com,發生的DNS解析過程大體以下:網絡
以上僅我的理解,若是有錯,歡迎各位大佬指出。google