天天看點

DNS域名伺服器

随着ABC公司業務的擴張,計算機越來越多的情況下,讓員工記憶所有公司内部伺服器的IP位址可能性不大,是以公司決定采用DNS解決方案,這樣實作主機之間的通訊可以變的更簡單。案例中我們使用的域為abc.com域,這個是正向解析的域,網絡采用的是私有網絡:172.16.0.0/16。本案例僅對公司主要的伺服器生産解析記錄,如果讀者需要更多的記錄,可以按照這些模版添加其他主機的記錄資訊,在公司内部伺服器清單見表4-10。

表4-10

伺服器IP

伺服器名稱

功能描述

172.16.0.254

dns1.abc.com

主域名伺服器

172.16.0.253

dns2.abc.com

從域名伺服器

172.16.0.100

fileserver.abc.com

檔案伺服器

172.16.0.101

printserver.abc.com

列印機伺服器

172.16.0.200

www.abc.com

網站伺服器

172.16.0.201

172.16.0.25

mail.abc.com

郵件伺服器

172.16.0.22

ntp.abc.com

時間伺服器

<a>1.         安裝軟體</a>

[root@centos6 ~]# <b>yum -y install bind</b>

[root@centos6 ~]# <b>yum -y install bind-chroot</b>

[root@centos6 ~]# <b>yum -y install bind-utils</b>

2.         修改主配置檔案

[root@centos6 etc]# <b>cd /usr/share/doc/bind-9.8.2/sample/etc/</b>

[root@centos6 etc]# <b>cp</b> <b>named.conf /var/named/chroot/etc/</b>

[root@centos6 etc]# <b>chown root.named /var/named/chroot/etc/named.conf</b>

[root@centos6 etc]# <b>vim /var/named/chroot/etc/named.conf</b>

options 

{        directory                   "/var/named";                   // "Working" directory 

         dump-file                  "data/cache_dump.db"; 

        statistics-file "data/named_stats.txt"; 

        memstatistics-file "data/named_mem_stats.txt"; 

         listen-on port 53      { any; }; 

         allow-query               { any; }; 

         allow-query-cache   { any; }; 

         recursion yes; 

}; 

acl secondserver { 

            172.16.0.253; 

  }; 

  zone "." IN { 

            type hint; 

            file "named.ca"; 

  zone "abc.com" IN { 

            type master; 

            allow-transfer { secondserver; }; 

            file "abc.com.zone"; 

  zone "16.172.in-addr.arpa" IN { 

            file "172.16.zone"; 

         }; 

3.         建立區資料檔案

[root@centos6 etc]# <b>cd /usr/share/doc/bind-9.8.2/sample/var/named/</b>

[root@centos6 named]#<b> cp named.ca /var/named/chroot/var/named/</b>

[root@centos6 etc]# <b>chown root.named /var/named/chroot/var/named/named.ca</b>

[root@centos6 named]#<b> cp named.localhost /var/named/chroot/var/named/abc.com.zone</b>

[root@centos6 named]#<b> chown root.named /var/named/chroot/var/named/abc.com.zone</b>

[root@centos6 named]# vim <b>/var/named/chroot/var/named/abc.com.zone</b>

$TTL 1D 

@     IN SOA      dns1.abc.com. jacob.abc.com. ( 

                                               10     ; serial 

                                               1D    ; refresh 

                                               1H    ; retry 

                                              1W   ; expire 

                                               3H )  ; minimum 

         NS    dns1.abc.com. 

         NS    dns2.abc.com. 

         MX 10       mail.abc.com. 

dns1                       IN A 172.16.0.254 

dns2                       IN A 172.16.0.253 

ntp.abc.com.    IN A 172.16.0.22 

mail.abc.com.  IN A 172.16.0.25 

fileserver      IN A 172.16.0.100 

printserver        IN A 172.16.0.101 

www                   IN A 172.16.0.200 

                       IN A 172.16.0.201 

[root@centos6 named]# vim <b>/var/named/chroot/var/named/</b> <b>172.16.zone</b>

                                               1W   ; expire 

             NS    dns1.abc.com. 

             NS    dns2.abc.com. 

254.0        IN PTR      dns1.abc.com. 

253.0        IN PTR      dns2.abc.com. 

22.0         IN PTR      ntp.abc.com. 

25.0         IN PTR      mail.abc.com. 

100.0        IN PTR      fileserver.abc.com. 

101.0        IN PTR      printserver.abc.com. 

200.0        IN PTR      www.abc.com. 

201.0        IN PTR      www.abc.com. 

4.         服務管理

[root@centos6 ~]#<b> iptables -I INPUT -p udp --dport 53 -j ACCEPT</b>

[root@centos6 ~]#<b> iptables -I INPUT -p tcp --dport 53 -j ACCEPT</b>

[root@centos6 ~]# <b>service named start</b>

[root@centos6 ~]# <b>chkconfig named on</b>

1.         用戶端驗證

用戶端正确配置DNS伺服器後,查詢工具比較多,常用的有nslookup、dig、host,下面分别示範這些指令的基本用法。

[root@centos6 ~]# nslookup www.abc.com

[root@centos6 ~]# nslookup 172.16.0.100

[root@centos6 ~]# dig www.abc.com

[root@centos6 ~]# dig abc.com MX

[root@centos6 ~]# host www.abc.com

4.1.1     部署從域名伺服器

部署從域名伺服器的作用是防止單點故障或實作負載均衡。如果隻有一台伺服器當該伺服器當機時,将導緻所有用戶端的位址解析出現問題。另外,為了滿足大規模的查詢請求,我們可以建立多台DNS伺服器實作負載均衡。然而如果所有的DNS都作為主伺服器的話,會有大量的配置需要我們重複進行,再有就是當解析記錄發生改變後,各個伺服器之間的區資料檔案的版本比較混亂(不友善統一),是以我們需要部署從域名伺服器,從域名伺服器會從主域名伺服器上下載下傳資料檔案,隻要主伺服器修改了資料檔案中的記錄,從伺服器可以自動同步資料。

1.         安裝軟體

2.         修改配置檔案

         directory                   "/var/named";                   // "Working" directory 

            masters { 172.16.0.254; }; 

3.         同步資料檔案

從伺服器進行同步操作前,需要建立一個BIND軟體可以進行讀取操作的目錄,以便将主伺服器的資料檔案儲存至該目錄。

當從伺服器的主配置檔案修改完成後,通過啟動服務,BIND會自動根據主配置檔案中的masters語句尋找伺服器,并将主伺服器的資料檔案下載下傳至從伺服器本地。完成第一次的資料同步後,從伺服器會根據同步過來的資料檔案中的SOA記錄選項,決定下次同步資料的時間,案例中主域名伺服器的SOA記錄括号中有五條選項。

第一個選項10是序列号,從伺服器會根據這個序列号來決定是否進行同步操作,如果伺服器端資料檔案的序列号大于從伺服器的序列号,從伺服器才會與主伺服器同步資料,該序列号建議使用時間格式,如20121212001表示2012年12月12日的第一次修改(序列号隻要是數字即可,BIND不強制要求具體數字格式)。

第二個選項1D,代表從伺服器多久與主伺服器進行序列号的對比(僅在主伺服器序列号大于從伺服器的序列号時,才進行資料同步),D代表Day,這裡為1天。

第三個選項1H,代表如果從伺服器請求連接配接主伺服器時,由于網絡延遲,主伺服器故障等原因,暫時無法連接配接到主伺服器,那麼從伺服器會每個一個小時再試一次。

第四個選項1W,代表如果從伺服器嘗試一周後還是沒能連接配接到主伺服器,則不再進行連接配接。

第五個選項3H,代表的是緩存的時間為3小時。

 注意:在CentOS 6.3系統中從伺服器同步資料檔案時需要修改SELinux設定,否則将無權限進行同步操作。

[root@centos6 ~]# <b>setsebool -P named_write_master_zones=1</b>

[root@centos6 ~]# <b>mkdir -p /var/named/chroot/var/named/slaves/</b>

[root@centos6 ~]# <b>chown root.named /var/named/chroot/var/named/slaves/</b>

[root@centos6 ~]# <b>chmod 775 /var/named/chroot/var/named/slaves/</b>

<b></b>

<b>本文轉自丁丁曆險51CTO部落格,原文連結:http://blog.51cto.com/manual/1179606</b><b> ,如需轉載請自行聯系原作者</b>

下一篇: Html5 畫圖

繼續閱讀