網域名稱解析過程

2021-08-03 01:58:16 字數 1450 閱讀 4407

一、主機向本地網域名稱伺服器的查詢一般都是採用遞迴查詢。所謂遞迴查詢就是:如果主機所詢問的本地網域名稱伺服器不知道被查詢的網域名稱的ip位址,那麼本地網域名稱伺服器就以dns客戶的身份,向其它根網域名稱伺服器繼續發出查詢請求報文(即替主機繼續查詢),而不是讓主機自己進行下一步查詢。因此,遞迴查詢返回的查詢結果或者是所要查詢的ip位址,或者是報錯,表示無法查詢到所需的ip位址。

二、本地網域名稱伺服器向根網域名稱伺服器的查詢的迭代查詢。迭代查詢的特點:當根網域名稱伺服器收到本地網域名稱伺服器發出的迭代查詢請求報文時,要麼給出所要查詢的ip位址,要麼告訴本地伺服器:「你下一步應當向哪乙個網域名稱伺服器進行查詢」。然後讓本地伺服器進行後續的查詢。根網域名稱伺服器通常是把自己知道的頂級網域名稱伺服器的ip位址告訴本地網域名稱伺服器,讓本地網域名稱伺服器再向頂級網域名稱伺服器查詢。頂級網域名稱伺服器在收到本地網域名稱伺服器的查詢請求後,要麼給出所要查詢的ip位址,要麼告訴本地伺服器下一步應當向哪乙個許可權網域名稱伺服器進行查詢。最後,知道了所要解析的ip位址或報錯,然後把這個結果返回給發起查詢的主機。

下圖給出了這兩種查詢的差別

下面舉乙個例子演示整個查詢過程:

假定網域名稱為m.xyz.com的主機想知道另乙個主機y.abc.com的ip位址。例如,主機m.xyz.com打算傳送郵件給y.abc.com。這時就必須知道主機y.abc.com的ip位址。下面是上圖a的幾個查詢步驟:

1、主機m.abc.com先向本地伺服器dns.xyz.com進行遞迴查詢。

2、本地伺服器採用迭代查詢。它先向乙個根網域名稱伺服器查詢。

4、本地網域名稱伺服器向頂級網域名稱伺服器dns.com進行查詢。

6、本地網域名稱伺服器向許可權網域名稱伺服器dns.abc.com進行查詢。

7、許可權網域名稱伺服器dns.abc.com告訴本地網域名稱伺服器,所查詢的主機的ip位址。

8、本地網域名稱伺服器最後把查詢結果告訴m.xyz.com。

整個查詢過程共用到了8個udp報文。

為了提高dns查詢效率,並減輕伺服器的負荷和減少網際網路上的dns查詢報文數量,在網域名稱伺服器中廣泛使用了快取記憶體,用來存放最近查詢過的網域名稱以及從何處獲得網域名稱對映資訊的記錄。

例如,在上面的查詢過程中,如果在m.xyz.com的主機上不久前已經有使用者查詢過y.abc.com的ip位址,那麼本地網域名稱伺服器就不必向根網域名稱伺服器重新查詢y.abc.com的ip位址,而是直接把告訴快取中存放的上次查詢結果(即y.abc.com的ip位址)告訴使用者。

由於名字到位址的繫結並不經常改變,為保持告訴快取中的內容正確,網域名稱伺服器應為每項內容設定計時器並處理超過合理時間的項(例如每個專案兩天)。當網域名稱伺服器已從快取中刪去某項資訊後又被請求查詢該項資訊,就必須重新到授權管理該項的網域名稱伺服器繫結資訊。當許可權伺服器回答乙個查詢請求時,在響應中都指明繫結有效存在的時間值。增加此時間值可減少網路開銷,而減少此時間值可提高網域名稱解析的正確性。

網域名稱解析過程 網域名稱解析過程

0x01相關資訊 閘道器 閘道器實質上是乙個網路通向其他網路的ip位址。要實現兩個網路之間的通訊,則必須通過閘道器。如果網路a中的主機發現資料報的目的主機不在本地網路中,就把資料報 給它自己的閘道器,自己的閘道器通過尋找路由指向,再由閘道器 給網路b的閘道器,網路b的閘道器再 給網路b的某個主機。i...

網域名稱解析過程

當我們發起請求查詢 www.nihao.net 這個網域名稱時會用到 dns 服務。dns 拿到請求後,先檢查一下自己的快取中有沒有這個位址,有的話就直接返回。如果快取中沒有的話,dns 會從配置檔案裡面讀取13個根網域名稱伺服器的位址。並向其中一台發起請求。根伺服器拿到這個請求後,知道他是 com...

網域名稱解析過程

客戶端想得到www.baidu.com主機的ip位址,網域名稱解析過程如下 1 客戶端想本地網域名稱伺服器發出dns請求報文 2 本地網域名稱伺服器收到請求後,查詢本地快取,假設沒有該記錄,則以dns客戶的身份向根網域名稱伺服器發出解析請求 3 根網域名稱伺服器收到請求後,判斷該網域名稱屬於.com...