DNS原理及其解析過程 精彩剖析

2021-09-08 11:16:41 字數 4301 閱讀 6179

dns原理及其解析過程【精彩剖析】 2012-03-21 17:23:10

標籤: dig

wireshark

bind

nslookup

dns

原始出處 、作者資訊和本宣告。否則將追究法律責任。

dns原理及其解析過程

精彩剖析

什麼是dns?

dns( domain name system)是「網域名稱系統」的英文縮寫,是一種組織成域層次結構的計算機和網路服務命名系統,它用於tcp/ip網路,它所提供的服務是用來將主機名和 網域名稱轉換為ip位址的工作。dns就是這樣的一位「翻譯官」,它的基本工作原理可用下圖來表示。

dns網域名稱稱

網域名稱系統作為乙個層次結構和分布式資料庫,包含各種型別的資料,包括主機名和網域名稱。dns資料庫中的名稱形成乙個分層樹狀結構稱為域命名空間。網域名稱包含單個標籤分隔點,例如:im.qq.com。

完全限定的網域名稱 (fqdn) 唯一地標識在 dns 分層樹中的主機的位置,通過指定的路徑中點分隔從根引用的主機的名稱列表。 下圖顯示與主機稱為 im 內 qq.com dns 樹的示例。 主機的 fqdn 是 im.qq.com。

dns 域的名稱層次結構

dns域命名空間的組織方式

按其功能命名空間中用來描述 dns 網域名稱稱的五個類別的介紹詳見下表中,以及與每個名稱型別的示例。

dns 和 internet 域

網際網路網域名稱系統由名稱序號產生器構負責維護分配由組織和國家/地區的頂級域在 internet 上進行管理。 這些網域名稱按照國際標準 3166。 一些很多現有縮寫,保留以供組織中,以及兩個字母和三個字母的國家/地區使用的縮寫使用下表所示。一些常見的dns網域名稱稱如下圖:

資源記錄

dns 資料庫中包含的資源記錄 (rr)。 每個 rr 標識資料庫中的特定資源。我們在建立dns伺服器時,經常會用到soa,ns,a之類的記錄,在維護dns伺服器時,會用到mx,cname記錄。

常見的rr見下圖:

2、如果hosts裡沒有這個網域名稱的對映,則查詢本地dns解析器快取,是否有這個**對映關係,如果有,直接返回,完成網域名稱解析。 

3、如果hosts與本地dns解析 器快取都沒有相應的**對映關係,首先會找tcp/ip引數中設定的首選dns伺服器,在此我們叫它本地dns伺服器,此伺服器收到查詢時,如果要查詢的 網域名稱,包含在本地配置區域資源中,則返回解析結果給客戶機,完成網域名稱解析,此解析具有權威性。 

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

從客戶端到本地dns伺服器是屬於遞迴查詢,而dns伺服器之間就是的互動查詢就是迭代查詢。

dns解析原理及過程。

1)找到這個網頁的存放伺服器;

接入;

3)伺服器通過檔案路徑(url)查詢使用者請求網頁;

我們所講的dns解析主要是第乙個步驟,即讓使用者通過url找到檔案存放的伺服器。

讓使用者電腦和伺服器(網頁存放電腦)連線起來並不是靠網域名稱進行,網路上計算機之間實現連線是通過每台計算機在網路中擁有的惟一的ip位址來完成的。但 ip位址並不便於記憶,這樣就需要在使用者容易記憶的位址和計算機能夠識別的位址之間有乙個解析,使用者容易記憶的位址就是網域名稱,而dns伺服器便充當了將用 戶請求的網域名稱「翻譯」成相應ip位址以便於計算機之間相互連線的角色。

dns解析過程是重點也是難點,下面我按自己的理解一步步來解釋,可能有錯誤之處,歡迎指正。

以下步驟中,將dns快取中存在網域名稱對應ip則dns解析成功,使用者計算機將直接訪問伺服器,若dns伺服器快取中不存在網域名稱對應ip,則自動進入下一步。

1)瀏覽器快取

當使用者通過瀏覽器訪問某網域名稱時,瀏覽器首先會在自己的快取中查詢是否有該網域名稱對應的ip位址(若曾經訪問過該網域名稱且沒有清空快取便存在);

2)系統快取

當瀏覽器快取中無網域名稱對應ip則會自動檢查使用者計算機系統hosts檔案dns快取是否有該網域名稱對應ip;

3)路由器快取

快取中檢查,以上三步均為客服端的dns快取;

4)isp(網際網路服務提供商)dns快取

當在使用者客服端查詢不到網域名稱對應ip位址,則將進入isp dns快取中進行查詢。比如你用的是電信的網路,則會進入電信的dns快取伺服器中進行查詢;

5)根網域名稱伺服器

當以上均未完成,則進入根伺服器進行查詢。全球僅有13臺根網域名稱伺服器,1個主根網域名稱伺服器,其餘12為輔根網域名稱伺服器。根網域名稱收到請求後會檢視區域檔案記錄,若無則將其管轄範圍內頂級網域名稱(如.com)伺服器ip告訴本地dns伺服器;

6)頂級網域名稱伺服器

伺服器收到請求後檢視區域檔案記錄,若無則將其管轄範圍內主網域名稱伺服器的ip位址告訴本地dns伺服器;

7)主網域名稱伺服器

伺服器進行查詢,並重複該步驟直至找到正確紀錄;

8)儲存結果至快取

商或伺服器商都會提供免費的dns服務,然而,很多情況下這些免費的dns伺服器速度較慢,故可做一定優化,具體可從以下幾方面:

1)增加dns伺服器數量

減小伺服器壓力,當單位伺服器需要處理的dns請求數量較少時速度會更快;

2)全國多地分布dns伺服器

使用者網路訪問速度跟使用者計算機到伺服器的距離有關,若可以讓使用者就近訪問所在省份的伺服器便可以加速dns解析速度;

3)識別使用者線路反饋相應線路ip

的線路但伺服器是聯通的線路,這樣就會造成使用者訪問**速度下降,如果可以識別使用者訪問線路並反饋相應ip則會加速**訪問。

1、dns伺服器不設**

在192.168.145.228伺服器上安裝上wireshark軟體,並開啟它,設定資料報為udp過濾,在192.168.145.12客戶機上用 nslookup命令查詢一下www.sohu.com,馬上可以看到本地dns伺服器直接查全球13臺根域中的某幾台,然後一步步解析,通過遞代的方 式,直到找到www.sohu.com對應的ip為220.181.118.87。

本地dns伺服器得到www.sohu.com的ip後,它把這個ip返回給192.168.145.12客戶機,完成解析。

2、dns伺服器設定**

因www.sohu.com網域名稱在第一步的驗證中使用過,有快取,為了不受上步實驗干擾,我們在客戶機上192.168.145.12上nslookup www.baidu.com。從圖上看,本地dns把請求**至192.168.133.10伺服器,133.10伺服器把得到的ip返回給本地dns, 然後本地dns再把ip告訴dns客戶機,完成解析。

本文出自 「系統網路運維」 部落格,請務必保留此出處

DNS原理及其解析過程 精彩剖析

文章 原始出處 什麼是dns?dns domain name system 是 網域名稱系統 的英文縮寫,是一種組織成域層次結構的計算機和網路服務命名系統,它用於tcp ip網路,它所提供的服務是用來將主機名和網域名稱轉換為ip位址的工作。dns就是這樣的一位 翻譯官 它的基本工作原理可用下圖來表示...

DNS原理及其解析過程 精彩剖析

dns原理及其解析過程 精彩剖析 什麼是dns?dns domain name system 是 網域名稱系統 的英文縮寫,是一種組織成域層次結構的計算機和網路服務命名系統,它用於tcp ip網路,它所提供的服務是用來將主機名和網域名稱轉換為ip位址的工作。dns就是這樣的一位 翻譯官 它的基本工作...

DNS原理及其解析過程 精彩剖析

原始出處 什麼是dns?dns domain name system 是 網域名稱系統 的英文縮寫,是一種組織成域層次結構的計算機和網路服務命名系統,它用於tcp ip網路,它所提供的服務是用來將主機名和網域名稱轉換為ip位址的工作。dns就是這樣的一位 翻譯官 它的基本工作原理可用下圖來表示。dn...