DNS相關概念和原理

來源:互聯網
上載者:User

標籤:dns

一、DNS查詢

650) this.width=650;" src="http://s3.51cto.com/wyfs02/M00/73/E6/wKiom1YJWNiw6oWeAAG8GwDC9V4445.jpg" title="9839A8E5-4C0E-4844-850D-48F2DF3A4AF2.jpg" alt="wKiom1YJWNiw6oWeAAG8GwDC9V4445.jpg" />

1、整個查詢過程(PC和DNS都沒有緩衝的情況):

0.1)PC在瀏覽器上訪問http://www.benet.com;


0.2)PC先查詢本地hosts檔案,如果沒有hosts檔案沒有解析,則進行下一步;


1)PC向自己設定的localdns發起解析www.benet.com的請求;


2)localdns先向全球13台根dns中的一台發起請求:www.benet.com=?;

#localdns怎麼知道根dns的ip地址呢?一般dns本地都會存放全球13台根dns的ip地址


3)根dns回給localdns說我不知道www.benet.com的ip地址,但.com的dns可能知道,你去問他吧,於是將.com的dns的ip地址告訴localdns(即.com這個域的NS記錄,和NS對應的A記錄);


4)localhost繼續去問.com的dns:www.benet.com=?;


5).com回給localdns說我不知道www.benet.com的ip地址,但.benet.com的dns可能知道,你去問他吧,於是將.benet.com的dns的ip地址告訴localhost(即benet.com這個域的NS記錄,和NS對應的A記錄);


6)localdns繼續去問.benet.com的dns:www.benet.com=?;


7).benet.com的dns將www.benet.com的ip地址(A記錄)返給localdns;


8)localdns獲得了www.benet.com的ip地址後將結果返回給PC;


9)PC擷取了ip地址後就可以將ip封裝在三層前序上了,然後將http請求發送到www.benet.com的web伺服器;


10)web伺服器將網頁內容返給PC。


2、遞迴查詢和迭代查詢

遞迴查詢:

       只發出一次請求,就能得到結果(查詢的到或查詢不到)。一般是使用者向localdns發起查詢請求時,用的是遞迴查詢。如果localdns沒有開啟遞迴功能,那麼本地如果沒有結果,則直接返回查詢不到,而不會進行迭代查詢去擷取結果。但一般localdns都會開啟遞迴功能的~而某個域的權威dns一般只對內開啟遞迴,對外關閉。

#所謂的localdns不一定指你的內網dns,像我們平常上網設定的114.114.114.114、8.8.8.8或者聯通電信的dns,都可以叫localdns,這些dns的類型就叫緩衝dns,即將迭代查詢得到的結果緩衝到本地,當有其他使用者請求同一個網域名稱解析時直接調取緩衝,加速dns查詢速度,畢竟迭代查詢還是很慢和消耗資源的~

#權威dns:管理某個域的dns就是權威dns,即迭代查詢給出最終答案的那台dns。平常我們去localdns去解析網域名稱拿到的一般都是非權威應答,即localdns直接從緩衝中查詢結果,然後將結果返回給你,是用nslookup解析百度網域名稱的結果,獲得的就是非權威應答:

650) this.width=650;" src="http://s3.51cto.com/wyfs02/M00/73/E4/wKioL1YJWUyTrHsGAAElQL9-7oQ496.jpg" title="2015-09-28_20-55-34.png" alt="wKioL1YJWUyTrHsGAAElQL9-7oQ496.jpg" />


迭代查詢:

       發出多次請求才能得到答案。迭代查詢的話,一般從根域查起,逐級查詢,直到獲得結果。為啥要逐級查詢呢,因為dns是分層管理的,根域管理一級域,一級域管理二級域………即上級知道下級在哪。


3、DNS伺服器的查詢順序:

1)如果查詢請求是本機所負責地區中的資料的話,要通過查詢地區資料檔案返回結果(這樣獲得的就是權威應答);


2)如果查詢請求不是本機所負責地區中的資料的話,就查詢快取,有答案則返回結果(非權威應答);


3)如果緩衝中沒有答案,則向根發起查詢請求(前提是開啟了遞迴),根返回負責.com的dns的ns記錄和a記錄,如此迭代查詢直到獲得結果。


二、DNS伺服器類型

未完待續

本文出自 “華哥在路上” 部落格,請務必保留此出處http://wshstc.blog.51cto.com/10676059/1698973

DNS相關概念和原理

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.