DNS網域名稱解析系統簡介

2021-08-26 10:55:11 字數 4861 閱讀 2981

網域名稱解析的目的是將方便使用者使用的**名稱轉化為tcp/ip協議真正能夠使用的ip位址,hostname只是方便人們記憶,畢竟ip這種純數字的位址對使用者非常的不友好。但計算機在使用tcp/ip通訊時是通過ip位址+port埠號來實現的,因此,當我們在瀏覽器鍵入乙個主機名時,最終還需要將它轉化為ip位址的形式才可以真正訪問到源伺服器。

/etc/hosts:通過在client端的檔案內輸入主機名稱對應的ip來查詢;

dns系統:利用額外的dns服務,讓client端可以通過名稱解析來取得目的主機的ip。

網域名稱的層次結構:top網域名稱:如.com、.mil、.net、org、.gov、.edu等或國碼(如.cn、.jp、.uk、.us等)。

以為例,瀏覽器會根據client的設定訪問一台dns伺服器(假設名稱為x),dns x伺服器首先會查詢本身有沒有對應的記錄,如果有被檢索的ip就直接返回給client,否則將向其它dns伺服器進一步查詢,整個過程如下:

1、先到root主機查詢,查詢到這是.hk這台機器的資料;

2、到.hk查詢,而該台機器管理的僅有.edu.hk、.com.hk、.gov.hk等幾台主機,經過對比發現,我們要的是.com.hk的網段,所以這時.hk告訴我們應該去.com.hk這個網段的主機**查詢;

3、這樣一步步下來,.com.hk可以查到管理google.com.hk的主機ip位址;

4、查到google的ip位址之後,dns x伺服器不會在下次有人查詢google.com.hk時再經歷一次這樣的流程,因為這太浪費時間和網路頻寬了。dns x伺服器現在自己的快取中記錄乙份google.com.hk對應ip的資訊,以便下一次他人對同乙個主機名稱的查詢請求,最後將結果回報給client端。

當然,記憶在快取中的資料是有時間性的,當過了dns設定的記憶時間後(比如24小時),該記錄會被釋放。在dns的快取記憶體記錄中,由於有時間限制,當源伺服器名稱在dns中被修改後,由於之前的舊資訊還記憶在其他dns主機的記憶體快取裡,所以,可能通過別人的dns主機來查詢源伺服器名稱時會得到先前的舊資訊,這個延時通常在2天左右。

dns監聽的埠號是53(在/etc/services檔案中可以查詢到),它是以udp這個較快的資料傳輸協議來查詢的。但是萬一沒有辦法查詢到完整的資訊,就會再次以tcp協議重新查詢,所以啟動dns的daemon(即named)時,會同時啟動tcp及udp的53號埠。

dns系統最主要的功能就是互查主機名與ip,由於計算機在網路上只認識ip位址,所以,一般來說,由主機名查詢ip的過程為正解;由ip查詢得到主機名為反解。

dns的主要配置檔案是/etc/named.conf,這個檔案記錄了每乙個zone的配置檔名。實際上,hostname與ip的對應就是記錄在各個zone的配置檔案內。

/etc/named.conf:配置檔案;

/etc/sysconfig/named:由該檔案控制是否啟動chroot及額外的引數,該檔案是由/etc/init.d/named啟動時讀入的;

/var/named/:資料庫檔案預設放在次目錄中;

/var/run/named:named程式執行時預設將pid-file放置在此目錄內;

. /etc/host.conf

當系統中同時存在dns網域名稱解析和/etc/hosts主機表機制時,由該/etc/host.conf確定主機名解釋順序。示例:

order hosts,bind #名稱解釋順序

multi on #允許主機擁有多個ip位址

nospoof on #禁止ip位址欺騙

order是關鍵字,定義先用本機hosts主機表進行名稱解釋,如果不能解釋,再搜尋bind名稱伺服器(dns)。

. /etc/resolv.conf

該檔案是dns網域名稱解析的配置檔案,它的格式很簡單,每行以乙個關鍵字開頭,後接配置引數。resolv.conf的關鍵字主要有四個,分別是:

nameserver #定義dns伺服器的ip位址

domain #定義本地網域名稱

search #定義域名的搜尋列表

sortlist #對返回的網域名稱進行排序

/etc/resolv.conf的乙個示例:

domain ringkee.com

search www.ringkee.com ringkee.com

nameserver 202.96.128.86

nameserver 202.96.128.166

最主要是nameserver關鍵字,如果沒指定nameserver就找不到dns伺服器,其它關鍵字是可選的。

. /etc/hosts

設定ip位址與主機名對應表,可用該檔案來進行主機名稱解釋。如:

#格式:ip位址 主機名 別名

127.0.0.1 localhost localhost.localdomain

192.168.1.1 debian debian

192.168.0.2 t02 t02.tiger

192.168.0.4 t04 t04.tiger

./etc/name.conf

// generated by named-bootconf.pl

options ;

//// a caching only nameserver config

//zone "." in ;

zone "0.0.127.in-addr.arpa" in ;

};這一部分是你安裝了bind軟體後系統自動產生的named.conf檔案的原始內容。「directory」指定了dns記錄檔案的存放目錄是/var/named。「//」開頭的文字是說明文字,不用管它。接著的兩個「zone」語句定義了dns伺服器的根和對應的反向查詢域,並指出根的記錄檔案是「name.ca」,根的反向查詢域的記錄檔案是「named.local」。這兩個記錄檔案也是系統自帶的,不用去改動它。named.conf檔案的這一部分內容,我們不必去改動它。

但我們可以在「diretory」下新增一行:forwarders 。202.96.134.133是我這裡電信的dns伺服器的位址,forwarders引數指明了其後的ip所在的伺服器作為備選的dns伺服器。也就是說,把本機的dns不能解析的主機傳送到這個備選的dns伺服器上,讓它來進行解析。

zone "zrs.com" in ;

};zone "0.0.10.in-addr.arpa" in ;

};這一部分是手工新增的。定義了「zrs.com」這個域和對應的反向查詢域。「type master」說明本機是「zrs.com」和「0.0.10.in-addr.arpa」這兩個域的主dns伺服器(primary name server)。「named.zrs.com」和「named.zrs.com.rev」是域的記錄檔案。這兩個檔案也是自己建立的,下面我們就來看看這兩個檔案。

./var/named/naemd.***.com

資源記錄檔案,位於/var/named目錄下。這個目錄是named.conf中定義的。

1、named.zrs.com檔案內容如下:

@ in soa netfinity.zrs.com. root.netfinity.zrs.com. (

1997022700 ; serial

28800 ; refresh

14400 ; retry

3600000 ; expire

86400 ) ; minimum

in ns netfinity.zrs.com.

in mx 10 netfinity.zrs.com.

netfinity in a 10.0.0.211

lily in a 10.0.0.139

www in cname netfinity.zrs.com.

pop3 in cname netfinity.zrs.com.

smtp in cname netfinity.zrs.com.

在這個記錄檔案中,出現了5種型別的記錄。soa 是授權起始(start of authority)的縮寫,後面接著寫你的dns伺服器的主機名,這裡是「netfinity.zrs.com.」。(注意,主機名稱後面的小圓點。凡是出現在記錄檔案了的主機名,記得都要加上這各小圓點。)ns 是名稱伺服器資源記錄,指明域中的名稱伺服器,這裡就是dns伺服器。mx是郵件交換者資源記錄,指明這個域的郵件伺服器。你可以寫多個mx記錄,指明多個郵件伺服器,優先級別由mx後的數字決定,數字越小,郵件伺服器優先權越高。a是主機記錄,把主機和ip位址對應起來。cname是別名記錄,它賦予乙個主機不同的名稱,如

www.zrs.com

、pop3.zrs.com其實都是指向同一臺主機netfinity.zrs.com。

./var/named/naemd.***.com.rev

named.zrs.com.rev檔案內容:

@ in soa netfinity.zrs.com. root.netfinity.zrs.com. (

1997022700 ; serial

28800 ; refresh

14400 ; retry

3600000 ; expire

86400 ) ; minimum

in ns netfinity.zrs.com.

211 in ptr netfinity.zrs.com.

139 in ptr lily.zrs.com.

這是「zrs.com」的反向域記錄檔案,它讓dns伺服器提供由ip位址查詢主機名的服務。ptr記錄把ip和主機名對應起來。由於一些程式會要求反向查詢,所以反向查詢域的記錄檔案最好不要省略。

到此為止,你已經成功配置了乙個dns伺服器,它能夠解析「zrs.com」這個域了。

DNS網域名稱解析系統入門

dns 這個單字,想必那些經常使用計算機,尤其是經常手動配置ip和dns伺服器的人是非常熟悉的。也許其中的大部分人並沒有深入了解過它的具體意義,只是對它有個簡單的了解,然後習慣性地將主dns伺服器和備dns伺服器配置成 114.114.114.114 和 8.8.8.8 因為比較好記憶 dns的全稱...

DNS網域名稱解析

dns是動態網域名稱系統的英文簡稱,是用來把我們輸入的網域名稱解析成ip位址的,如果沒有dns我們輸入的例如www.baidu.com這樣的網域名稱就無法被訪問。如果我們訪問 的時候要輸入ip位址的話,顯然既不方便也不容易記憶,所以我們用網域名稱來訪問 網域名稱雖然便於人們記憶,但網路中的計算機之間...

DNS網域名稱解析

一次請求過程大約經過三步 第一,dns網域名稱解析 第二,cdn獲取離使用者最近的節點 第三,建立http連線。今天和大家聊的是dns網域名稱解析。既然是dns網域名稱解析,那麼什麼是dns?dns domain name system,網域名稱系統 網際網路上作為網域名稱和ip位址相互對映的乙個分...