DNS的原理和解析過程

小胖子~發表於2021-07-31

DNS的解析原理和過程

在Internet上域名和IP是對應的,DNS解析有兩種:一種是正向解析,另外一種是反向解析

正向解析:正向解析就是將域名轉換成對應的 IP地址的過程,它應用於在瀏覽器位址列中輸入網站域名時的情形。

反向解析:根據IP地址查詢對應的註冊域名,經常被一些後臺程式使用,使用者看不到。

另外需要知道的是DNS查詢的工作方式:

客戶端和瀏覽器,本地DNS之間的查詢方式是遞迴查詢

本地DNS伺服器與根域及其子域之間的查詢方式是迭代查詢

 

DNS解析過程:

場景:使用者在瀏覽器輸入網址:clondant.blog.51cto.com,其解析過程如下:

第1步:瀏覽器將會檢查快取中有沒有這個域名對應的解析過的IP地址,如果有該解析過程將會結束。

 

第2步:如果使用者的瀏覽器中快取中沒有,作業系統會先檢查自己本地的hosts檔案是否有這個網址對映關係,如果有,就先呼叫這個IP地址對映關係,完成域名解析。

 

第3步:如果hosts裡沒有這個域名的對映,則查詢本地DNS解析器快取,是否有這個網址對映關係或快取資訊,如果有,直接返回給瀏覽器,完成域名解析。

 

第4步:如果hosts與本地DNS解析器快取都沒有相應的網址對映關係,則會首先找本地DNS伺服器,一般是公司內部的DNS伺服器,此伺服器收到查詢,如果此本地DNS伺服器查詢到相對應的IP地址對映或者快取資訊,則返回解析結果給客戶機,完成域名解析,此解析具有權威性。

 

第5步:如果本地DNS伺服器無法查詢到,則根據本地DNS伺服器設定的轉發器進行查詢;

未用轉發模式:本地DNS就把請求發至根DNS進行(迭代)查詢,根DNS伺服器收到請求後會判斷這個域名(.com)是誰來授權管理,並會返回一個負責該頂級域名伺服器的一個IP。本地DNS伺服器收 到IP資訊後,將會聯絡負責.com域的這臺伺服器。這臺負責.com域的伺服器收到請求後,如果自己無法解析,它就會找一個管理.com域的下一級 DNS伺服器地址給本地DNS伺服器。當本地DNS伺服器收到這個地址後,就會找域名域伺服器,重複上面的動作,進行查詢,直至找到域名對應的主機。

使用轉發模式:此DNS伺服器就會把請求轉發至上一級DNS伺服器,由上一級伺服器進行解析,上一級伺服器如果不能解析,或找根DNS或把轉請求轉至 上上級,以此迴圈。不管是本地DNS伺服器用是是轉發,還是根提示,最後都是把結果返回給本地DNS伺服器,由此DNS伺服器再返回給客戶機。

搭建基本的DNS服務

 轉自:https://blog.51cto.com/cloudant/1956549

 

相關文章