1 什麼是DNS 初學者可能不理解DNS到底是什麼,幹什麼用。我是在1998年大學畢業時才聽說這個詞的。那時我在聊天室碰到濰坊信息港的一個網管,我恬不知恥地說我也是個網管,他說也維護DNS嗎?我說,DNS是什麼? ——DNS,Domain Name Service,或者Domain Name Server,域名服務/域名伺服器。 你在你的瀏覽器裡面輸入http://www.linuxsir.com之後,之所以可以上去,就是因為有了DNS。 簡單地說,DNS把一串名字,轉換成了IP地址。你可能會說:如果我直接使用IP地址,那就不需要DNS了嗎?對!不過,請你接著往下看。
zone "test.com" in { type master; file "db.test"; };
// 指定 named 作為 192.1.110 網段地址轉換主伺服器。 // db.192.1.110 文件中包含了所有 192.1.110.* 形式的地址到域名的轉換數據。 zone "110.1.192.in-addr.arpa" in { type master; file "db.192.1.110"; }; // 指定 named 作為127.0.0網段地址轉換主伺服器。 // db.127.0.0 文件中包含了 127.0.0.* 形式的地址到域名的轉換數據。 //(127.0.0網段地址是區域網介面的內部 loopback 地址) zone "0.0.127.in-addr.arpa" in { type master; file "db.127.0.0"; };
// 指定 named 從 db.cache 文件中獲得 Internet 的頂層「根」伺服器地址。 zone "." in { type hint; file "db.cache"; }; 要注意第二和第三個區域中的網段地址是倒寫的,另外,各個區域所使用的數據文件的文件名也是可以自行決定的。 請把上面的內容保存為你的/etc/bind/named.conf。 4.4.3 準備數據文件 上面的那個named.conf,相信你已經看明白了。那裡面提到,在/var/cache/bind這個目錄下面,應該有DNS數據文件db.test、db.192.1.110、db.127.0.0 還有 db.cache。下面我們就要建立這些文件。 4.4.3.1 建立 db.test 文件 根據 /etc/bind/named.conf 的定義,我們在 /var/cache/bind 目錄下建立 db.test,其中應該包括所有在 test.com 域內的主機節點。但在機器數量較多時,為了調試方便,建議一開始只把幾台節點的數據放入文件,待 named 正常工作后再把其他節點的數據補充進去。下面是 db.test的例子: @ IN SOA debian.test.com. root.debian.test.com. ( 200211131 ; serial, todays date + todays serial # 28800 ; refresh, seconds 7200 ; retry, seconds 3600000 ; expire, seconds 86400 ) ; minimum, seconds NS debian.test.com. MX 10 debain.test.com.
; 域名伺服器列表 test.com. IN NS debian.test.com.
; 計算機名稱和地址 localhost.test.com. IN A 127.0.0.1 debian.test.com. IN A 192.1.110.120 notepad.test.com. IN A 192.1.110.122
; 別名 www IN CNAME debian.test.com. ftp IN CNAME debian.test.com. 其中第一行是 SOA 記錄,定義了域名數據的基本信息,依次是 DNS 伺服器名、DNS 管理員郵件地址,括弧內的第一個數字是文件版本號,每次本文件內容修改後,必須更改此號。其餘數字與DNS伺服器直接的數據交換有關,在這裡我們不需要改動。 括弧後面有一條NS記錄和一條MX記錄,定義了域名伺服器本身的域名和username@test.com 形式郵件地址所對應的郵件伺服器名字。 在此以下是各種域名/地址轉換數據,其中A記錄是DNS域名到IP地址的記錄,是必須有的。 CNAME定義了一些主機的別名,比如我們將debian.test.com作為公司的www和ftp伺服器,所以我們提供了www.test.com和ftp.test.com作為debian.test.com的別名,用戶只需要根據習慣就可以訪問公司的www、ftp伺服器了,如果將來我們換用別的主機作www和ftp伺服器,只需要修改CNAME記錄就可,對用戶沒有影響。