1. 程式人生 > >計算機網路之域名系統DNS

計算機網路之域名系統DNS

域名系統DNS

域名系統DNS(Domai NameSystem)是因特網使用的命名系統,用於把便於人們使用的機器名字轉換為IP地址。

許多應用層軟體經常直接使用域名系統,但計算機的使用者只是間接而不是直接使用域名系統。

域名結構

因特網採用了層次樹狀結構的命名方法。


任何一個連線在因特網上的主機或路由器,都有一個唯一的層次結構的名字,即域名。

域名的結構由標號序列組成,各標號之間用點隔開:

… . 三級域名 . 二級域名 . 頂級域名

DNS規定,域名中的標號有英文字母和數字組成,不區分大小寫。標號中除了連字元(-)外不能使用其它標點符號。級別最低的域名寫在最左邊,而級別最高的的頂級域名則寫在最右邊。

各級域名由其上一級的域名管理機構管理,而最高的頂級域名則由ICANN進行管理,這種方法可使每一個域名在整個因特網範圍內是唯一的。

頂級域名可分為以下三類:

(1)國家頂級域名,如:“.cn”表示中國,“.us”表示美國,“.uk”表示英國,等等。

(2)通用頂級域名,如:

    .com        (公司和企業)

    .net   (網路服務機構)

    .org   (非贏利性組織)

    .edu  (教育機構)

    .gov  (政府部門)

    .mil  (軍事部門)

    .int   (國際組織)

(3)基礎結構域名,這種頂級域名只有一個,即 arpa,用於反向域名解析,因此又稱為反向域名

。如:

.aero (航空運輸企業)

.biz  (公司和企業)

.cat   (加泰隆人的語言和文化團體)

.coop  (合作團體)

.info  (各種情況)

.jobs  (人力資源管理者)

.mobi  (移動產品與服務的使用者和提供者)

.museum  (博物館)

.name   (個人)

.pro  (有證書的專業人員)

.travel  (旅遊業)

域名伺服器

因特網採用層次結構的命名樹作為主機的名字,並使用分散式的域名系統 DNS。名字到 IP 地址的解析是由若干個域名伺服器程式完成的。域名伺服器程式在專設的結點上執行,執行該程式的機器稱為域名伺服器

一個伺服器所負責管轄的(或有許可權的)範圍叫做

(zone)。各單位根據具體情況來劃分自己管轄範圍的區。但在一個區中的所有節點必須是能夠連通的。每一個區設定相應的許可權域名伺服器,用來儲存該區中的所有主機的域名到IP地址的對映。

因特網上的DNS域名伺服器也是按照層次安排的。每一個域名伺服器都只對域名體系中的一部分進行管轄。


域名伺服器有以下四種類型:

(1)根域名伺服器是最重要的域名伺服器。所有的根域名伺服器都知道所有的頂級域名伺服器的域名和 IP 地址。不管是哪一個本地域名伺服器,若要對因特網上任何一個域名進行解析,只要自己無法解析,就首先求助於根域名伺服器。

(2)頂級域名伺服器(TLD伺服器,Top LevelDomain負責管理在該頂級域名伺服器註冊的所有二級域名。

(3)許可權域名伺服器不能給出最後的查詢回答時,就會告訴發出查詢請求的 DNS 客戶,下一步應當找哪一個許可權域名伺服器。

(4)本地域名伺服器對域名系統非常重要。當一個主機發出 DNS 查詢請求時,這個查詢請求報文就傳送給本地域名伺服器。每一個因特網服務提供者 ISP,或一個大學,甚至一個大學裡的系,都可以擁有一個本地域名伺服器,這種域名伺服器有時也稱為預設域名伺服器

DNS 域名伺服器都把資料複製到幾個域名伺服器來儲存,其中的一個是主域名伺服器,其他的是輔助域名伺服器。當主域名伺服器出故障時,輔助域名伺服器可以保證 DNS 的查詢工作不會中斷。主域名伺服器定期把資料複製到輔助域名伺服器中,而更改資料只能在主域名伺服器中進行。這樣就保證了資料的一致性。

每個域名伺服器都維護一個快取記憶體,存放最近用過的名字以及從何處獲得名字對映資訊的記錄,可大大減輕根域名伺服器的負荷,使因特網上的 DNS 查詢請求和回答報文的數量大為減少。為保持快取記憶體中的內容正確,域名伺服器應為每項內容設定計時器,並處理超過合理時間的項(例如,每個專案只存放兩天)。