DNS查找域名的過程


當我們在瀏覽器輸入一個url地址時,需要獲取到這個url的域名,本篇文章主要介紹了關於DNS查找解析域名的過程的一些東西。

關於DNS

不清楚DNS的小伙伴可以點這里:關於域名系統DNS解析IP地址的一些總結

查找域名 && 域名解析

DNS查找:

        瀏覽器查找域名的IP地址。

        瀏覽器DNS查找順序一般是這樣的:瀏覽器緩存→系統緩存→路由器緩存→ISP DNS 緩存→遞歸搜索。

詳細過程如下:

a. 瀏覽器緩存,瀏覽器會緩存DNS記錄一段時間。

        操作系統沒有設定瀏覽器存儲DNS記錄的時間長短,不同的瀏覽器會存儲各自的一個固定時間,時長為2~30分鍾不等。

b. 系統緩存

        如果瀏覽器緩存里沒有找到需要的記錄,瀏覽器會做一個操作系統調用(windows里是gethostname),這樣子,就可以獲得系統緩存里的記錄啦。

c. 路由器緩存

        接下來,如果還是沒有找到需要的緩存,將前面的查詢請求發給路由器,它一般會有自己的DNS緩存。

d. 如果還是沒有,那么就去檢查ISP有沒有吧~

        每一個ISP(網絡服務提供商),或一個大學,甚至是一個大學里的系都會有一個自己的本地域名服務器,他會在url第一次訪問時緩存該域名的指向。下次再訪問時,他會從緩存里把這個url曾經指向的IP調出來。

e. 遞歸搜索

        還是沒有需要的緩存~ 就只能放大招啦~
        你的ISP的DNS服務器會從根域名開始進行遞歸查詢。

遞歸查詢

        主機向本地域名服務器的查詢一般都是采用遞歸查詢

        如果主機所詢問的本地域名服務器不知道被查詢的域名的IP地址,那么本地域名服務器就以DNS客戶的身份,向其根域名服務器繼續發出查詢請求報文(即替主機繼續查詢),而不是讓主機自己進行下一步查詢。因此,遞歸查詢返回的查詢結果或者是所要查詢的IP地址,或者是返回一個失敗的響應,表示無法查詢到所需的IP地址。

迭代查詢

        本地域名服務器向根域名服務器的查詢通常是采用迭代查詢

        當根域名服務器收到本地域名服務器發出的迭代查詢請求報文時,要么返回給本地域名服務器所要查詢的IP地址,要么返回給本地域名服務器下一步應當查詢的域名服務器的IP地址。

舉個栗子:假設的主機想知道另一個主機(域名為 my.xxsilence.net)的IP地址。具體步驟如下:

① 主機先向其本地域名服務器進行遞歸查詢,如果緩存中沒有,繼續下一步。

② 本地域名服務器采用迭代查詢,先向一個根域名服務器查詢。

③ 根域名服務器告訴本地域名服務器,下一次查詢的頂級域名服務器 dns.net。

④ 本地域名服務器向頂級域名服務器 dns.net。

⑤ 頂級域名服務器 dns.net,下一次應查詢的權限域名服務器dns.xxsilence.net的IP地址。

⑥ 本地域名服務器向權限域名服務器dns.xxsilence.net進行查詢。

⑦ 權限域名服務器dns.xxsilence.net告訴本地域名服務器,所查詢的主機的IP地址。

⑧ 本地域名服務器最后把查詢結果告訴主機。

本文鏈接:http://www.cnblogs.com/xsilence/p/6035559.html


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM