DNS域名解析服務

DNS的作用:
正向解析:根據主機名稱(域名)查找對應的 IP 地址
反向解析:根據 IP 地址查找對應的主機域名
DNS的類型:
(1)緩存域名服務器
也稱爲 唯高速緩存服務器
通過向其他域名服務器查詢獲得域名 -> IP 地址記錄
將域名查詢結果緩存到本地,提高重複查詢時的速度
(2)主域名服務器
特定 DNS 區域的官方服務器,具有唯一性
負責維護該區域內所有域名 -> IP 地址的映射記錄
(3)從域名服務器
也稱爲 輔助域名服務器
其維護的 域名 -> IP 地址記錄 來源於主域名服務器
相關軟件包
(1)bind-9.8.2-0.17.rc1.el6_4.6.x86_64.rpm提供了域名服務的主要程序及相關文件
(2)bind-utils-9.8.2-0.17.rc1.el6_4.6.x86_64.rpm提供了對DNS服務器的測試工具程序
(3)bind-libs-9.8.2-0.17.rc1.el6_4.6.x86_64.rpm提供了bind、bind-utils需要使用的庫函數
(4)bind-chroot-9.8.2-0.17.rc1.el6_4.6.x86_64.rpm爲BIND服務提供一個僞裝的根目錄(將/var/named/chroot/文件夾作爲BIND的根目錄),以提高安全性
實驗步驟:
搭建緩存域名服務器
DNS域名解析服務

  1. 插入安裝光盤並掛載,然後安裝bind軟件包及相關的軟件包。
    DNS域名解析服務
    DNS域名解析服務
  2. 編輯主配置文件。
    主配置文件named.conf通常位於/etc/目錄下,如果安裝了bind-chroot軟件包,則主配置文件默認位於/var/named/chroot/etc/目錄下,需要用戶手工建立。在named.conf文件中,主要包括全局配置、區域配置兩個部分,每一條配置記錄的行尾以分號“;”表示結束,以“#”號或“//”開始的部分表示註釋文件(大段註釋可以使用“/……/”的格式)
    DNS域名解析服務
    DNS域名解析服務
    上述配置內容中,除了directory項通常會保留以外,其他的配置項都可以省略。若不指定listen-on配置項時,named默認在所有接口的UDP 53端口監聽服務;不指定allow-query配置項時,默認會響應所有客戶機的查詢請求。dump-file、statistics-file、memstatistics-file等配置項用於指定緩存數據庫文件、狀態統計文件的位置。添加了“zone “.” in { };”部分的根區域設置,儘管緩存服務器並沒有自主控制的區域數據,但可以向根服務器進行迭代查詢,並將最終獲得的解析結果反饋給客戶。
    有時候爲了提高解析效率,也可以不向根分區查詢,而是將來自客戶端的查詢請求轉發給國內電信運營商的DNS服務器(如北京的202.106.0.20、202.106.148.1),緩存服務器收到返回的查詢結果後再傳遞給客戶端。只要去掉“zone “.” in {……};”的設置,並在全局配置中正確設置forwarders參數即可實現該功能。如下所示:
    [root@localhost ~]# vim /var/named/chroot/etc/named.conf
    options {
    …… //省略部分內容
    Forwarders { 202.106.0.20;202.106.148.1 };
    };
    3.確認根域的區域數據庫文件named.ca
    根區域的區域數據庫文件默認位於文件/var/named/chroot/var/named/named.ca中,該文件記錄了Internet中13臺根域服務器的域名和IP地址等相關信息。
    DNS域名解析服務
    DNS域名解析服務
  3. 啓動named服務
    執行“service named start”命令,啓動named服務,並通過netstat命令確認named服務的端口監聽狀態。若服務啓動失敗或發現沒有正常監聽UDP 53端口,可以根據錯誤提示信息(或者/var/log/messages文件中的日誌記錄)排除錯誤,然後再重啓服務即可。
    DNS域名解析服務
    緩存服務器搭建成功!
    搭建主、從域名服務器
    DNS域名解析服務
    搭建主域名服務器
    1.設置本機的IP地址、主機名稱,通過修改網絡配置文件的方式進行。另外,爲了提高域名解析效率,建議將兩個DNS服務器的地址映射直接寫入到/etc/hosts文件中,並在/etc/resolv.conf文件中指定兩個DNS服務器的地址。
    DNS域名解析服務
    DNS域名解析服務
    DNS域名解析服務
    DNS域名解析服務
    DNS域名解析服務
    2.建立主配置文件named.conf
    新創建的named.conf主配置文件,由於只需要提供benet.com域的正向解析和173.16.16.0/24網段的反向解析,因此相應的添加這兩個區域即可。根區域、迴環域等其他配置內容可以省略。
    DNS域名解析服務
    DNS域名解析服務
    當不需要建立從域名服務器時,上述配置內容中的“allow-transfer……”部分可以不添加;當不需要提供反向解析,“zone “16.16.173.in-addr.arpa”……”部分也可以去掉。
    3.建立正、反向區域數據文件
    根據named.conf中的zone區域設置,分別建立正向區域數據文件benet.com.zone、反向區域數據文件173.16.16.arpa。配置內容可以參考迴環域的區域數據文件/var/named/chroot/var/named/localdomain.zone,並根據實際情況進行修改。
    區域數據配置文件通常位於/var/named/目錄下。如果安裝了bind-chroot軟件包,則默認位於/var/named/chroot/var/named/目錄下,需要手工建立。每個區域數據文件對應一個DNS解析區域,文件名及內容由該域的管理員自行設置。
    在區域數據文件中,主要包括TTL配置項、SOA(Start Of Authority,授權信息開始)記錄、地址解析記錄。文件中的註釋信息以分號“;”開始。
    DNS域名解析服務

DNS域名解析服務br/>上述配置內容中,時間單位默認爲秒,也可以使用以下單位:M(分)、H(時)、W(周)、D(天)。文件中的“@”符號表示當前的DNS區域名,相當於“benet.com.”,“admin.benet.com.”表示域管理員的電子郵箱地址(由於“@”符號已有其他含義,因此將郵件地址中的“@”用“.”代替)。SOA記錄中的更新序列號用來同步主、從服務器的區域數據,當從服務器判斷區域更新時,若發現主服務器中的序列號與本地區域數據中的序列號相同,則不會進行下載。
其中,NS、MX記錄行首的“@”符號可以省略(默認繼承SOA記錄行首的@信息),但是必須保留一個空格或者Tab製表位。
DNS域名解析服務
DNS域名解析服務
在反向區域數據文件中,不會用到A地址記錄,而是使用PTR指針(Point)的記錄。使用PTR記錄時,第一列中只需要指明對應IP地址的“主機地址”部分即可,如“1”、“2”等,系統在查找地址記錄時會自動將當前反向域的網絡地址作爲前綴。
在區域數據配置文件中,凡是不以點號“.”結尾的主機地址,系統在查找地址記錄中都會自動將當前的域名作爲後綴。
修改完主配置文件以後,可以執行named-checkconfig命令對named.conf文件進行語法檢查。如果文件中沒有語法錯誤,該命令將不給出任何提示;反之,則會給出相應的提示信息,只要根據出錯信息提示修正文件中的錯誤即可。帶“-z”選項的named-checkconfig命令還可以嘗試加載主配置文件中對應的區域數據庫文件,並檢查該文件是否存在問題。
DNS域名解析服務
關於named.conf文件中各種配置項的詳細說明,可以執行“man named.conf”查看手冊頁,也可參考配置樣本文件/usr/share/doc/bind-9.3.6/sample/etc/named.conf。
修改完區域數據庫文件以後,可以執行named-checkzone命令對該文件進行語法檢查。依次指定區域名稱、數據文件名作爲參數。如果文件中沒有語法錯誤,系統將給出“OK”的提示信息
DNS域名解析服務
執行“service named start”命令以啓動named服務,如果之前named服務已經在運行,也可以重啓服務或重載配置。
DNS域名解析服務
在客戶端將DNS服務器指向173.16.16.5(主域名服務器的IP地址),使用nslookup命令驗證DNS查詢結果。
DNS域名解析服務
DNS域名解析服務
DNS域名解析服務
主域名服務器搭建完畢!
搭建從域名服務器
1.確認本機的網絡地址、主機映射、默認DNS服務器地址
將從域名服務器的IP地址設爲173.16.16.6,主機名設爲ns2.benet.com,通過修改網絡配置文件的方式進行。另外,主機映射文件/etc/hosts和DNS解析文件/etc/resolv.conf的內容與主服務器中的內容相同。

  1. 建立主配置文件named.conf
    在從域名服務器中,named.conf文件的內容與主服務器的內容大部分相同,只是不需要再設置“allow-transfer ……”;更關鍵的一點是,zone部分的區域類型應設置爲“slave”,並添加“masters { };”語句來指定主域名服務器的地址。
    DNS域名解析服務
    DNS域名解析服務
    由於從服務器的區域數據文件是從主服務器中下載而來,因此該文件保存的名稱可以自行定義,不用非得與主服務器中的一致。但需要注意的是,named”服務默認以名爲“named”的用戶身份運行,因此要確認named用戶對存放目錄有寫入權限。
    DNS域名解析服務
  2. 啓動named服務,查看區域數據文件是否下載成功
    在從域名服務器中執行“service named start”命令以啓動named服務。
    DNS域名解析服務
    若配置無誤,則named將會從主域名服務器中自動下載指定的區域數據文件,並保存到“slaves/”目錄下。另外,通過系統日誌文件/var/log/messages也可以觀察到下載區域數據文件的過程。
    DNS域名解析服務
  3. 驗證從域名服務器
    驗證從域名服務器時,只需要將客戶端的首選DNS服務器地址設爲173.16.16.6(從域名服務器的IP地址),使用nslookup命令進行正常測試即可。
    DNS域名解析服務
    從域名服務器已搭建好!
    Linux清除緩存命令:rndc flush
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章