1.dns服務器的工作原理:
DNS服務器所提供的服務是完成將主機名和域名轉換爲IP地址的工作。爲什麼需要將主機名和域名轉換爲IP地址的工作呢?這是因爲,當網絡上的一臺客戶機訪問某一服務器上的資源時,用戶在瀏覽器地址欄中輸入的是便於識記的主機名和域名....
如果查詢的名稱沒有區域信息,則服務器檢查它能否通過本地緩存的先前查詢信息來解析名稱。如果從中發現匹配的信息,則服務器使用它應答查詢。接着,如果首選服務器可使用來自其緩存的肯定匹配響應來應答發出請求的客戶機,則此次查詢完成。
如果查詢名稱在首選服務器中未發現來自緩存或區域信息的匹配應答,則查詢過程可繼續進行,使用遞歸來完全解析名稱,包括來自其他 DNS 服務器的支持,以幫助解析名稱。在默認情況下,DNS 客戶服務要求服務器在返回應答前使用遞歸過程來代表客戶機完全解析名稱。在大多數情況下,DNS 服務器的默認配置支持遞歸過程,如下圖所示。
爲了使 DNS 服務器正確執行,首先需要在DNS 域名空間內存放其他DNS服務器的一些有用的聯繫信息。該信息以根線索的形式提供,它是記錄初步資源的一個列表,可用來定位一些 DNS 服務器,這些服務器對 DNS 域名空間樹的根具有絕對控制權。根服務器對 DNS 域名空間樹中的根域和頂級域具有絕對控制權。DNS 服務器可通過使用根線索搜索根服務器來完成遞歸過程。
例如,當客戶機查詢單個DNS服務器時,考慮使用遞歸過程來定位名稱 host.example.microsoft.com。此過程在 DNS 服務器和客戶機首次啓動,並且沒有可幫助解析名稱查詢的當地緩存信息時進行。
首先,首選服務器分析全名並確定對於頂級域com具有絕對控制權的服務器的位置。隨後,對com DNS 服務器使用迭代查詢,以獲取microsoft.com服務器的參考信息。然後參考性應答從microsoft.com服務器傳送到example.microsoft.com的 DNS 服務器。最後,與服務器 example.microsoft.com 聯繫上。因爲該服務器包括作爲其配置區域一部分的查詢名稱,所以,它向啓動遞歸的源服務器作出權威性的應答。當源服務器接收到表明已獲得對請求查詢的權威性應答的響應時,它將此應答轉發給發出請求的客戶機,這樣,遞歸查詢過程就完成了。
2.先了解幾個目錄:
/var/named/chroot (dns根目錄)
/var/named/chroot/etc/ (dns服務器的配置文件)
/var/named/chroot/var/named/ (區域文件)
3.要做的準備工作:
先安裝dns服務組件
cd /mnt/cdrom/Server
rpm -ivh bind-9.3.4-10.P1.el5.i386.rpm
rpm -ivh bind-chroot-9.3.4-10.P1.el5.i386.rpm
rpm -ivh caching-nameserver-9.3.4-10.P1.el5.i386.rpm
cd /var/named/chroot/etc
cp -p named.caching-nameserver.conf named.conf
vim named.conf
啓動服務 :service named start
4. 案例:
有一家公司,擁有兩家子公司,一個是北京公司,一個是上海公司,總公司和北京公司由同一個dns服務器管理,由於上海離總公司比較遠,需要另外一臺dns服務器。看以下拓撲圖:
5.配置:
(1)編輯 vim /var/named/chroot/etc/named.rfc1912.zones ,在裏面加上總公司這個父域b.com,還有北京公司這個子域bj.b.com.
(2)接着產生兩個數據庫:一個是總公司的b.com.db,還一個就是北京公司的bj.b.com.db
cd /var/named/chroot/var/named/
cp –p localhost.zone b.com.db
vim b.com.db
cp -p b.com.db bj.b.com.db
vim bj.b.com.db
(3)下面來完成對上海子公司的授權問題:
vim b.com.db
執行rndc reload 重新啓動一下。
(4)下面在上海子公司創建一個dns域。
(5)下面用一臺pc機檢測是否能查到各公司域名:
完成解析。