CentOS7部署Bind

哈哈哈hh發表於2021-12-15

映象下載、域名解析、時間同步請點選  阿里巴巴開源映象站

1.簡介

DNS(Domain Name System),域名系統,因特網上作為域名和IP地址相互對映的一個分散式資料庫,能夠使使用者更方便的訪問網際網路,而不用去記住能夠被機器直接讀取的IP數串。透過主機名,最終得到該主機名對應的IP地址的過程叫做域名解析(或主機名解析)。DNS協議執行在UDP協議之上,使用埠號53。DNS伺服器的作用就是就好比生活中的電話簿、114查號臺一樣,為各種網路程式找到對應目標主機的IP地址或對應的主機域名

2.功能

每個IP地址都可以有一個主機名,主機名由一個或多個字串組成,字串之間用小數點隔開。有了主機名,就不要死記硬背每臺IP裝置的IP地址,只要記住相對直觀有意義的主機名就行了。這就是DNS協議所要完成的功能。

3.主從部署

主服務端(訪問外網)
安裝DNS服務所需要的軟體包
yum -y install bind bind-chroot bind-util bind-libs
備註:
  bind           提供了域名服務的主要程式及相關檔案  
  bind-utils     提供了對DNS伺服器的測試工具程式(如nslookup、dig等)
  bind-chroot    為bind提供一個偽裝的根目錄以增強安全性(將“/var/named/chroot/”資料夾作為BIND的根目錄)
 
 cat /etc/named.conf
 options {
        listen-on port 53 { any; };      #使用53埠監聽,預設監聽的是127.0.0.1,這裡修改為any(或者直接修改為服務端的ip地址)
        listen-on-v6 port 53 { ::1; };            #監聽ipv6的IP地址選項
        directory       "/var/named";             #DNS的根目錄,由於安裝了bind-chroot的所致,因此服務的實際工作目錄為/var/named/chroot/var/named
        dump-file       "/var/named/data/cache_dump.db";      #快取轉儲檔案
        statistics-file "/var/named/data/named_stats.txt";    #記錄了記憶體使用的統計資訊
        memstatistics-file "/var/named/data/named_mem_stats.txt";
        allow-query     { any; };         #允許查詢的主機,預設為localhost,這裡修改為any
        recursion yes;                    #可以遞迴查詢
          
        dnssec-enable yes;
        dnssec-validation yes;
        dnssec-lookaside auto;
        bindkeys-file "/etc/named.iscdlv.key";
        managed-keys-directory "/var/named/dynamic";
};
   
logging {                               #named服務的日誌檔案資訊
        channel default_debug {
                file "data/named.run";
                severity dynamic;
        };
};
zone "." IN {                        #根(.)域的配置及資訊(也可以透過其它上級域名轉發功能來配置快取域名伺服器,可以去了解下)
                                                                       
        type hint;
        file "named.ca";
};
zone "test.com" IN {                       #指定區名。正向解析
        type master;                            #伺服器類別,master為主域名
        file "test.com.zone";              #正向解析區域檔名wangshibo.com_zone,在/var/named目錄下建立
        allow-transfer {192.168.1.253;};         #指定從(輔助)域名伺服器IP。即DNS從伺服器的ip是192.168.1.253
};
zone "1.168.192.in-addr.arpa" IN {        #域名對應的ip地址網段為192.168.1.0,此處必須按照相 。反向解析                                          同的格式寫
        type master;
        file "192.168.1.zone";               #反向解析檔名192.168.1.zone
        allow-transfer {192.168.1.23;};
};
正向解析
cat /var/named/test.com.zone
$TTL1D
@       IN SOA  ns1.test.com. mail.test.com. (
                                        2021121401    #主DNS的此解析檔案沒改動一次,都要修改一次這個值,然後重啟naned或rndc reload重啟,從DNS就會自動同步過去
                                        1D   
                                        1H    
                                        1W   
                                        3H ) 
@                IN      NS       ns1.test.com.             #主域名的域名地址。NS是域名伺服器
ns1.test.com.    IN      A        192.168.1.254             #主域名的ip地址
@                IN      NS       ns2.test.com.             #從域名的域名地址。NS是域名伺服器
ns2.test.com.    IN      A        192.168.1.253             #從域名的ip地址
@                IN      MX 10    mail.test.com.            #郵件伺服器的域名地址
mail.test.com.   IN      A        192.168.1.252          
    IN      A        192.168.1.100
cc.test.com.     IN      CNAME    ns1.test.com.
反向解析
cat /var/named/192.168.1.zone
$TTL 1D                      
@       IN SOA  ns1.test.com. mail.test.com. (
                                        2021121401    #主DNS的此解析檔案沒改動一次,都要修改一次這個值,然後重啟naned或rndc reload重啟,從DNS就會自動同步過去
                                        1D
                                        1H
                                        1W    
                                        3H )  
@               IN      NS      ns1.test.com.
@               IN      NS      ns2.test.com.
254             IN      PTR     ns1.test.com.
253             IN      PTR     ns2.test.com.
@               IN      MX 10   mail.test.com.
252             IN      PTR     mail.test.com.
200             IN      PTR     
/etc/init.d/named start
客戶端
cat /etc/resolv.conf
nameserver 192.168.1.254
dig @192.168.1.254 
從服務端(訪問外網)
安裝DNS服務所需要的軟體包
yum -y install bind bind-chroot bind-util bind-libs
 
cat /etc/named.conf
options {
        listen-on port 53 { any; };      
        listen-on-v6 port 53 { ::1; };            
        directory       "/var/named";           
        dump-file       "/var/named/data/cache_dump.db";      
        statistics-file "/var/named/data/named_stats.txt";    
        memstatistics-file "/var/named/data/named_mem_stats.txt";
        allow-query     { any; };         
        recursion yes;                    
        forwarders { 8.8.8.8; };
        dnssec-enable yes;
        dnssec-validation yes;
        dnssec-lookaside auto;
        bindkeys-file "/etc/named.iscdlv.key";
        managed-keys-directory "/var/named/dynamic";
};
   
logging {                              
        channel default_debug {
                file "data/named.run";
                severity dynamic;
        };
};
zone "." IN {                        
                                                                       
        type hint;
        file "named.ca";
};
zone "test.com" IN {                      
        type slave;                       
        file "test.com.zone";             
        masters {192.168.1.254;};         
};
zone "1.168.192.in-addr.arpa" IN {                                    
        type slave;
        file "192.168.1.zone";            
        masters {192.168.1.254;};
};
/etc/init.d/named start
dig @192.168.1.253 

備註

最後檢視/var/log/messages日誌的內容,確認DNS主從是否啟動正常,是否實現了同步。

本文轉自:
https://blog.51cto.com/zzzhao/4799064


來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/70003733/viewspace-2847815/,如需轉載,請註明出處,否則將追究法律責任。

相關文章