咨詢電(diàn)話(huà):023-88959644    24小(xiǎo)時(shí)服務熱線:400-023-8809
NEWS CENTER ·
新聞動态
關注中技(jì)互聯 關注前沿

DNS服務器(qì)工作(zuò)原理(lǐ)過程

發表日期:2014-09-19    文章編輯:    浏覽次數(shù):5    标簽:

DNS分為(wèi)Client和(hé)Server,Client扮演發問的角色,也就是問 Server 一個(gè)Domain Name,而Server必須要回答(dá)此Domain Name的真正IP地址,DNS是怎麽來(lái)作(zuò)名稱解析的?

DNS的工作(zuò)原理(lǐ)

DNS分為(wèi)Client和(hé)Server,Client扮演發問的角色,也就是問Server一個(gè)Domain Name,而Server必須要回答(dá)此Domain Name的真正IP地址。而當地的DNS先會(huì)查自己的資料庫。如果自己的資料庫沒有(yǒu),則會(huì)往該DNS上(shàng)所設的的DNS詢問,依此得(de)到答(dá)案之後,将收到的答(dá)案存起來(lái),并回答(dá)客戶。

DNS服務器(qì)會(huì)根據不同的授權區(qū)(Zone),記錄所屬該網域下的各名稱資料,這個(gè)資料包括網域下的次網域名稱及主機名稱。

在每一個(gè)名稱服務器(qì)中都有(yǒu)一個(gè)快取緩存區(qū)(Cache),這個(gè)快取緩存區(qū)的主要目的是将該名稱服務器(qì)所查詢出來(lái)的名稱及相對的IP地址記錄快取緩存區(qū)中,這樣當下一次還(hái)有(yǒu)另外一個(gè)客戶端到次服務器(qì)上(shàng)去查詢相同的名稱 時(shí),服務器(qì)就不用在到别台主機上(shàng)去尋找,而直接可(kě)以從緩存區(qū)中找到該筆名稱記錄資料,傳回給客戶端,加速客戶端對名稱查詢的速度。例如:
 
當DNS客戶端向指定的DNS服務器(qì)查詢網際網路上(shàng)的某一台主機名稱 DNS服務器(qì)會(huì)在該資料庫中找尋用戶所指定的名稱 如果沒有(yǒu),該服務器(qì)會(huì)先在自己的快取緩存區(qū)中查詢有(yǒu)無該筆紀錄,如果找到該筆名稱記錄後,會(huì)從DNS服務器(qì)直接将所對應到的IP地址傳回給客戶端 ,如果名稱服務器(qì)在資料記錄查不到且快取緩存區(qū)中也沒有(yǒu)時(shí),服務器(qì)首先會(huì)才會(huì)向别的名稱服務器(qì)查詢所要的名稱。例如:

DNS客戶端向指定的DNS服務器(qì)查詢網際網路上(shàng)某台主機名稱,當DNS服務器(qì)在該資料記錄找不到用戶所指定的名稱時(shí),會(huì)轉向該服務器(qì)的快取緩存區(qū)找尋是否有(yǒu)該資料 ,當快取緩存區(qū)也找不到時(shí),會(huì)向最接近的名稱服務器(qì)去要求幫忙找尋該名稱的IP地址 ,在另一台服務器(qì)上(shàng)也有(yǒu)相同的動作(zuò)的查詢,當查詢到後會(huì)回複原本要求查詢的服務器(qì),該DNS服務器(qì)在接收到另一台DNS服務器(qì)查詢的結果後,先将所查詢到的主機名稱及對應IP地址記錄到快取緩存區(qū)中 ,最後在将所查詢到的結果回複給客戶端 。

範例

我們舉例說明(míng),假設我們要查詢網際網路上(shàng)的一個(gè)名稱為(wèi)www.test.com.cn,從此名稱我們知道(dào)此部主機在中國CN,而且要找的組織名稱test.com.cn此網域下的www主機,以下為(wèi)名稱解析過程的每一步驟。

《Step 1》在DNS的客戶端(Reslover)鍵入查詢主機的指令,如:
 
以下為(wèi)引用的內(nèi)容:
c:\ping www.test.com.cn 
pinging www.test.com.cn 【192.72.80.36】with 32bytes of data 
reply from 192.72.80.36 bytes time <10ms ttl 253
《Step 2》而被指定的DNS服務器(qì)先行(xíng)查詢是否屬于該網域下的主機名稱,如果查出改主機名稱并不屬于該網域範圍,之後會(huì)再查詢快取緩存區(qū)的紀錄資料,查是否有(yǒu)此機名稱。

《Step 3》查詢後發現緩存區(qū)中沒有(yǒu)此紀錄資料,會(huì)取得(de)一台根網域的其中一台服務器(qì),發出說要找www.test.com.cn的Request。

《Step 4》在根網域中,向Root Name Server詢問,Root Name Server記錄了各Top Domain分别是由哪些(xiē)DNS Server負責,所以他會(huì)響應最接近的Name Server為(wèi)控制(zhì)CN網域的DNS伺服主機。

《Step 5》Root Name Server已告訴Local DNS Server哪部Name Server負責.cn這個(gè)Domain,然後Local DNS再向負責發出找尋www.test.com.cn的名稱Request。

《Step 6》在.cn這個(gè)網域中,被指定的DNS服務器(qì)在本機上(shàng)沒有(yǒu)找到此名稱的的紀錄,所以會(huì)響應原本發出查詢要求的DNS服務器(qì)說最近的服務器(qì)在哪裏?他會(huì)回應最近的主機為(wèi)控制(zhì)com.cn網域的DNS伺服主機。

《Step 7》原本被查詢的DNS服務器(qì)主機,收到繼續查詢的IP位置後,會(huì)再向com.cn的網域的DNS Server發出尋找www.test.com.cn名稱搜尋的要求。

《Step 8》com.cn的網域中,被指定的DNS Server在本機上(shàng)沒有(yǒu)找到此名稱的記錄,所以會(huì)回複查詢要求的DNS Server告訴他最接近的服務器(qì)在哪裏?他就回應最接近為(wèi)控制(zhì)test.com.cn的網域的DNS主機。

《Step 9》原本被查詢的DNS Server,在接收到應繼續查詢的位置,在向test.com.cn網域的DNS Server發出尋找www.test.com.cn的要求,最後會(huì)在test.com.cn的網域的DNS Server找到www.test.com.cn此主機的IP。

《Step 10》所以原本發出查詢要求的DNS服務器(qì),再接收到查詢結果的IP位置後,響應回給原查詢名稱的DNS客戶端。

兩種真正DNS的查詢模式

有(yǒu)兩種詢問原理(lǐ),分為(wèi)Recursive和(hé)Interactive兩種。前者是由DNS代理(lǐ)去問,問的方法是用Interactive方式,後者是由本機直接做(zuò)Interactive式的詢問。由上(shàng)例可(kě)以看出,我們一般查詢名稱的過程中,實際上(shàng)這兩種查詢模式都是交互存在着的。

遞歸式(Recursive):DNS客戶端向DNS Server的查詢模式,這種方式是将要查詢的封包送出去問,就等待正确名稱的正确響應,這種方式隻處理(lǐ)響應回來(lái)的封包是否是正确響應或是說是找不到該名稱的錯誤訊息。

交談式(Interactive):DNS Server間(jiān)的查詢模式,由Client端或是DNS Server上(shàng)所發出去問,這種方式送封包出去問,所響應回來(lái)的資料不一定是最後正确的名稱位置,但(dàn)也不是如上(shàng)所說的響應回來(lái)是錯誤訊息,他響應回來(lái)告訴你(nǐ)最接近的IP位置,然後再到此最接近的IP上(shàng)去尋找所要解析的名稱,反複動作(zuò)直到找到正确位置。

如沒特殊注明(míng),文章均為(wèi)中技(jì)互聯原創,轉載請(qǐng)注明(míng)來(lái)自www.zjcoo.com
相關新聞

CopyrightZJCOO technology Co., LTD. All Rights Reserved.    

渝ICP 備11003429号

  • qq客服
  • 公衆号
  • 手機版
  • 新浪微博