DNS 客戶端查詢過程

2021-09-06 09:39:47 字數 1089 閱讀 6213

dns客戶端的註冊資訊在dns伺服器中是以記錄的方式體現出來的,那麼客戶端就可以用一些方式進行查詢各類記錄。相對應的,伺服器會對這些查詢進行響應,我們稱之為解析,至於dns內部的工作機制,我們不得而知,但可以通過一些命令和方法間接地了解dns查詢過程。為了更好的描述這個問題,我做了一張簡單的topo圖,其中dns1為dns伺服器,主機xp3是乙個dns客戶端。拓撲圖如下:

在客戶端向dns伺服器提交乙個查詢訊息中,通常都會包含3條基本資訊,1、需要制定查詢的dns網域名稱;2、指定查詢請求的基本型別;3、dns網域名稱的指定類別。對於windows系統的dns伺服器而言,第三條即dns網域名稱的指定類別總是internet,即我們常說的in類別,這個關鍵字無論是在正向還是反向區域的dns檔案中都可以看的到,我們以正向查詢區域的dns檔案為例,如下圖:

所以,通常我們在提交乙個查詢時只需要包含dn s網域名稱和查詢請求的型別這兩部分內容就可以了,通過乙個例項來講解吧。在a.com區域內存在2條a記錄,如下圖:

那麼我們在xp3上查詢dns1的a記錄。為了更好的理解整個過程,我們依然會使用wireshark來進行輔助分析。整個過程如下圖:

在上圖中用到幾個命令 ,如nslookup、set 等,這些命令在dns應用和排錯中用的很普遍。所以後面會單獨有一節來講這部分內容。我們再來看看wireshark都發生了什麼,整個過程經歷了2個步驟。如下圖:

資料報1的分析過程:

資料報2的分析過程:

上面是查詢a記錄的過程分析,同理,在查詢ns記錄或者ptr指標記錄時也是類似的過程,只是查詢的型別和結果不同而已,這裡不再熬述。

dns客戶端在第一次查詢某條記錄時,會按照上述的過程進行,當再次查詢時則會首先使用本地快取資訊來解析查詢請求,如果有對應的記錄則完成此次解析,否則就會向自身的dns伺服器發起查詢。而這樣的本地解析依據**於2個地方,如下:

1、即為本地預先配置的主機名到位址的對映關係,也就是我們常提的hosts檔案。

2、以及系統儲存在查詢快取中的記錄。

其實,從上面不難看出,客戶端解析的過程也就是記錄匹配的過程,如果有匹配的選項,則會返回相應資訊給客戶端,反之則提示無法找到相應記錄。

但對於網際網路上的dns的查詢和解析,就比這個複雜許多,下節會討論有關迭代和遞迴查詢的內容,敬請期待!

DNS查詢過程

dns domain name system 將網域名稱和ip位址相互對映的乙個分布式資料庫服務。dns使用的是網路查詢,使用的埠是53號埠 通常dns是以udp資料傳輸協議來查詢的,當沒有查詢到完整的資訊時,就會再次以tcp這個協議來重新查詢。所以在啟動dns時,會同時啟動tcp和udp的53號埠...

DNS查詢過程

dns查詢過程 假設www.abc.com的主機要查詢www.xyz.abc.com的伺服器ip位址。知識點2 域 abc.com是乙個域,它可以劃分為多個區域,如abc.com和xyz.abc.com 步驟遞迴查詢 第二步 上一步無法找到,去dns本地伺服器 即域伺服器 查詢,其本質是去區域伺服器...

DNS解析和查詢過程

為什麼要 dns 解析?因為 http 是基於 tcp 連線的,而 tcp 則是通過 ip 位址去識別訪問的。dns 解析就是網域名稱轉化成 ip 位址的過程。dns解析過程 參考文章 地圖 當我們在瀏覽器的位址列輸入 譬如 www.linux178.com 然後回車,回車這一瞬間到看到頁面到底發生...