網域名稱是為了方便記憶而專門建立的一套位址轉換系統,要訪問一台網際網路上的伺服器,最終還必須通過ip
位址來實現,網域名稱解析就是將網域名稱重新轉換為ip
位址的過程。乙個網域名稱對應乙個ip
位址,乙個ip
位址可以對應多個網域名稱,所以多個網域名稱可以同時被解析到乙個ip
位址,網域名稱解析需要由專門的網域名稱解析伺服器dns
伺服器來完成。
dns
解析查詢的方式有兩種:遞迴解析查詢和迭代解析查詢,通常來說,客戶端和本地網域名稱伺服器是遞迴查詢,而本地網域名稱伺服器和其他網域名稱伺服器之間是迭代查詢。
假如我們本地客戶端是a
,有三個網域名稱解析伺服器b
、c
、d
,首先在本地客戶端a
發起一次dns
解析請求,對b
伺服器請求解析dns
,b
伺服器查詢後並無解析記錄,則b
伺服器對c
伺服器請求解析dns
,,c
伺服器查詢後並無解析記錄,則c
伺服器對d
伺服器請求解析dns
,,d
伺服器查詢到解析記錄,將解析記錄返回到c
伺服器,c
伺服器將解析記錄返回到b
伺服器,b
伺服器將解析記錄返回到a
伺服器,完成一次遞迴解析查詢。
a → b → c → d
a ← b ← c ← d
假如我們本地客戶端是a
,有三個網域名稱解析伺服器b
、c
、d
,首先在本地客戶端a
發起一次dns
解析請求,對b
伺服器請求解析dns
,b
伺服器查詢後並無解析記錄,返回到a
未查詢成功並攜帶c
伺服器的位址,客戶端a
對c
伺服器請求解析dns
,c
伺服器查詢後並無解析記錄,返回到a
未查詢成功並攜帶d
伺服器的位址,客戶端a
對d
伺服器請求解析dns
,查詢到解析記錄,並將解析記錄返回到a
,完成一次迭代解析查詢。
a → b
a → c
a → d
在輸入url
後瀏覽器首先檢查自身的dns
快取是否對於此網域名稱有ip
位址,通常瀏覽器對於自身dns
解析快取保留時間比較短,且數量也有限制,chrome
對於網域名稱解析的快取時間為60s
,可以通過位址列輸入chrome://net-internals/#dns
清除dns
快取。
hosts
檔案是乙個系統檔案,其作用就是將網域名稱與其對應的ip
位址建立乙個對應關係,當進行dns
解析時系統會首先自動從hosts
檔案中尋找對應的ip
位址,如果沒有找到,則系統會再將網域名稱提交dns
網域名稱解析伺服器進行ip
位址的解析。windows
作業系統的此檔案通常在c:\windows\system32\drivers\etc\
目錄下,linux
作業系統的此檔案通常在/etc/
目錄下。
客戶端向本地網域名稱伺服器請求解析,本地網域名稱伺服器一般是運營商isp
提供的,一般是通過53
埠傳送udp
報文請求伺服器解析dns
,從客戶端到本地網域名稱伺服器的解析是遞迴查詢的。假如請求的解析網域名稱為example.expamle.com
,本地網域名稱解析伺服器未命中,則本地網域名稱解析伺服器開始迭代查詢。
本地網域名稱解析伺服器向根網域名稱伺服器a.rootserver.net
進行請求,根網域名稱伺服器查詢到.com
頂級網域名稱所對應的伺服器,然後向本地網域名稱伺服器返回.com
頂級網域名稱所對應的伺服器解析位址。
本地網域名稱解析伺服器向頂級網域名稱解析伺服器進行請求,頂級網域名稱解析伺服器查詢到example.com
二級網域名稱所對應的伺服器,然後向本地網域名稱伺服器返回example.com
二級網域名稱所對應的伺服器解析位址。
本地網域名稱解析伺服器向二級網域名稱解析伺服器進行請求,二級網域名稱解析伺服器如果未命中,則會向本地網域名稱解析伺服器返回example.example.com
所對應的許可權網域名稱解析伺服器的位址,通常來說二級網域名稱解析伺服器及以後都可以稱為許可權網域名稱解析伺服器。
本地網域名稱解析伺服器向許可權網域名稱解析伺服器進行請求,許可權網域名稱解析伺服器查詢到解析記錄後,便返回本地網域名稱解析伺服器,本地網域名稱解析伺服器將查詢到的ip
位址返回到客戶端,並將網域名稱與ip
的對應關係進行快取,假如在許可權網域名稱解析伺服器還未查找到網域名稱對應的ip
位址,則返回解析失敗,此外如果客戶端還配置了多個dns
伺服器的位址,則在查詢失敗後還會繼續向其他所配置的dns
解析伺服器進行查詢。
DNS解析過程
你打入乙個 www.microsoft.com,按回車後。系統首先查詢本地dns客戶端快取中是否有這個網域名稱,如果你剛才已經訪問過這個 那麼快取中就會有對應的ip,系統就可以直接根據這個ip來連線 如果本地快取中無法找到對應的ip,系統將向dns伺服器 0.14 提交查詢請求。0.14在收到請求後...
DNS解析過程
名詞解釋 dns domain name server 網域名稱解析伺服器 url統一資源識別符號 ttl time to live 生存時間 ldns 本地dns伺服器 gtld全球dns伺服器 背景 在網際網路的世界中是用ip來標識一台伺服器的,因此在很早的時候大家都是通過ip來訪問其他伺服器上...
DNS解析過程
分析析dns的解析過程 1 首先在解析器訪問本地名字伺服器時沒有快取網域名稱的情況 2 在解析器訪問本地名字伺服器時有快取網域名稱的情況,將訪問就近的祖先 假設我們的名字伺服器已經查詢過 www.baidu.com 的位址。在這個過程當中,它將把www.baidu.com 和baidu.com 的名...