DNS之二:bind主從複製,子域受權、轉發


一、 主從複製linux

    /etc/resolv.conf緩存

    nameserver MASTER_DNS_IP:只要主DNS不當機,就一直使用這個DNS服務
安全

    nameserver SLAVE_DNS_IPbash

    

    主:bind版本能夠低於從的,服務器


向區域中添加從服務器的關鍵:ide

         在上級得到受權工具

         在區域數據文件中爲從服務器添加一條NS記錄和對應的A或PTR記錄學習

一、在主DNS服務器上區域數據文件中添加wKioL1X_t6KBxZkMAAFCnUAOk-w169.jpgspa

wKioL1X_yfPhQg0dAAEkLjtJKxM482.jpg


二、在從DNS服務器上主配置文件中添加一個區域debug

wKioL1X_ygSC78MEAAD-_RNepc4973.jpg#定義區域數據文件保存的位置


注意:從服務器第一次配置好後會從自動主服務上同步區域數據文件

      而後按SOA中定義好的每隔多久後檢查一次更新也能夠在更改主DNS服務器後,經過更改SOA中序列號來通知從服務器馬上更新區域數據文件,主DNS服務器加載配置文件後纔會開始通知

[root@BAIYU_110 slaves]# ls /var/named/slaves/
magelinux.com.zone
[root@BAIYU_110 slaves]# dig -t A www.magelinux.com @192.168.100.110

; <<>> DiG 9.8.2rc1-RedHat-9.8.2-0.37.rc1.el6 <<>> -t A www.magelinux.com @192.168.100.110
;; global options: +cmd
;; Got answer:
;; ->>HEADER<<- opcode: QUERY, status: NOERROR, id: 8455
;; flags: qr aa rd ra; QUERY: 1, ANSWER: 1, AUTHORITY: 2, ADDITIONAL: 2

;; QUESTION SECTION:
;www.magelinux.com.             IN      A

;; ANSWER SECTION:
www.magelinux.com.      6000    IN      A       192.168.100.22

;; AUTHORITY SECTION:
magelinux.com.          6000    IN      NS      dns2.magelinux.com.
magelinux.com.          6000    IN      NS      sbsb.magelinux.com.

;; ADDITIONAL SECTION:
sbsb.magelinux.com.     6000    IN      A       192.168.100.20
dns2.magelinux.com.     6000    IN      A       192.168.100.23

;; Query time: 0 msec
;; SERVER: 192.168.100.110#53(192.168.100.110)
;; WHEN: Mon Sep 21 15:51:58 2015
;; MSG SIZE  rcvd: 121
[root@BAIYU_110 slaves]# dig -x 192.168.100.28 @192.168.100.110

; <<>> DiG 9.8.2rc1-RedHat-9.8.2-0.37.rc1.el6 <<>> -x 192.168.100.28 @192.168.100.110
;; global options: +cmd
;; Got answer:
;; ->>HEADER<<- opcode: QUERY, status: NOERROR, id: 31649
;; flags: qr aa rd ra; QUERY: 1, ANSWER: 1, AUTHORITY: 2, ADDITIONAL: 2

;; QUESTION SECTION:
;28.100.168.192.in-addr.arpa.   IN      PTR

;; ANSWER SECTION:
28.100.168.192.in-addr.arpa. 6000 IN    PTR     iimg.magelinux.com.

;; AUTHORITY SECTION:
100.168.192.in-addr.arpa. 6000  IN      NS      dns2.magelinux.com.
100.168.192.in-addr.arpa. 6000  IN      NS      sbsb.magelinux.com.

;; ADDITIONAL SECTION:
sbsb.magelinux.com.     6000    IN      A       192.168.100.20
dns2.magelinux.com.     6000    IN      A       192.168.100.110

;; Query time: 0 msec
;; SERVER: 192.168.100.110#53(192.168.100.110)
;; WHEN: Mon Sep 21 17:08:26 2015
;; MSG SIZE  rcvd: 147


區域傳送安全控制:

      在定義區域的主配置文件中對要限制的相應的區域添加:

               allow-transfer { 容許同步的IP; };

                 allow-update { none; }不容許傳送(就是不容許別的機器同步本機上的相應的區域資源文件

用dig模擬徹底區域傳送:

         dig -t axfr 區域名稱 @server



rndc:Remote Name Domain Controller

     遠程管理BIND的工具

     rndc:密鑰

          rndc:持有一半密鑰,保存於rndc的配置文件中

          BIND:持有一半密鑰,保存於主配置文件中

     rndc的配置文件/etc/rndc.conf

         CentOS,RHEL:密鑰文件/etc/rndc.key

     

     rndc:

          reload

          reload zone

          reconfig:重讀配置文件並加載新增的區域

          querylog:關閉或開啓查詢日誌 

          flush:清空服務器的緩存

          flushname nam;清空指定名稱的區域


          trace:打開debuf,debug有級別的概念,每執行一次提高一次級別

          trace Leve了:指定debug的級別


若是rndc沒法正常工做,可嘗試使用rndc-confgen生成/etc/rndc.conf配置文件,並將配置文件後半部分複製到BIND的主配置文件中並按指示啓用便可




2、bind子域受權

在父域的配置文件中添加以下項:

      受權的子區域名稱

      子區域的名稱

      子區域的名稱服務器的IP地址


一、在DNS服務器區域資源記錄上添加一條子區域記錄和對應的A記錄


wKioL1X_6dby55bpAAHPAsMOou8457.jpg


二、在子域DNS服務器上配置主配置文件,添加區域wKiom1X_7l2CGco6AABe5x-vpro221.jpg


三、在子域DNS服務器上建立區域資源記錄文件

wKioL1X_8WSSkPpJAADVB8ktDqw775.jpg

[root@localhost named]# dig -t NS tech.magelinux.com @192.168.100.30 

; <<>> DiG 9.8.2rc1-RedHat-9.8.2-0.37.rc1.el6_7.4 <<>> -t NS tech.magelinux.com @192.168.100.30
;; global options: +cmd
;; Got answer:
;; ->>HEADER<<- opcode: QUERY, status: NOERROR, id: 56350
;; flags: qr aa rd ra; QUERY: 1, ANSWER: 1, AUTHORITY: 0, ADDITIONAL: 1

;; QUESTION SECTION:
;tech.magelinux.com.            IN      NS

;; ANSWER SECTION:
tech.magelinux.com.     600     IN      NS      dns.tech.magelinux.com.

;; ADDITIONAL SECTION:
dns.tech.magelinux.com. 600     IN      A       192.168.100.30

;; Query time: 1 msec
;; SERVER: 192.168.100.30#53(192.168.100.30)
;; WHEN: Sun Sep 20 12:39:24 2015
;; MSG SIZE  rcvd: 70

[root@localhost named]# dig -t A WWW.tech.magelinux.com @192.168.100.30   

; <<>> DiG 9.8.2rc1-RedHat-9.8.2-0.37.rc1.el6_7.4 <<>> -t A WWW.tech.magelinux.com @192.168.100.30
;; global options: +cmd
;; Got answer:
;; ->>HEADER<<- opcode: QUERY, status: NOERROR, id: 43160
;; flags: qr aa rd ra; QUERY: 1, ANSWER: 1, AUTHORITY: 1, ADDITIONAL: 1

;; QUESTION SECTION:
;WWW.tech.magelinux.com.                IN      A

;; ANSWER SECTION:
WWW.tech.magelinux.com. 600     IN      A       192.168.100.31

;; AUTHORITY SECTION:
tech.magelinux.com.     600     IN      NS      dns.tech.magelinux.com.

;; ADDITIONAL SECTION:
dns.tech.magelinux.com. 600     IN      A       192.168.100.30

;; Query time: 0 msec
;; SERVER: 192.168.100.30#53(192.168.100.30)
;; WHEN: Sun Sep 20 12:39:39 2015
;; MSG SIZE  rcvd: 90

[root@localhost named]# dig -t A WWW.magelinux.com @192.168.100.30  #此時子域不能解析父域,而父域能夠解析子域    
^C[root@localhost named]#


3、區域轉發:轉發域

    # 反向解析轉發這裏沒說之後學習

     轉發非本機負責解析的全部區域

      options{

        forward only|frist

        forwarders{ ip; }

       }

      轉發某特定區域

       zone"特定區域" IN{

       type forward;

        forwarders{ ip; }

        forward only|frist

       }

       轉發必須對方服務器支持遞歸



  解析某本機不負責的區域內的名稱時不轉發給根,而是轉給指定主機:

   zone "ZONENAME" IN {               #在子域中配置,只轉發一個區域

         type forward;

          forwarders { DNS_SERVER; };

          forward only|first;   #轉發服務器不該答也不找根|不該答就找根

    };


 在主配置文件的全局選項options添加:

     forward first;

     forwarders {192.168.100.7; };

 表示轉發全部的域,除了已經定義好的域


    wKiom1X_967R9k8nAABvrtlRtns580.jpg

[root@localhost named]# dig -t A www.magelinux.com @192.168.100.30

; <<>> DiG 9.8.2rc1-RedHat-9.8.2-0.37.rc1.el6_7.4 <<>> -t A www.magelinux.com @192.168.100.30
;; global options: +cmd
;; Got answer:
;; ->>HEADER<<- opcode: QUERY, status: NOERROR, id: 40147
;; flags: qr rd ra; QUERY: 1, ANSWER: 1, AUTHORITY: 2, ADDITIONAL: 2
      # 如今能夠解析父域了,由於是轉發的,因此這裏是非權威解答
;; QUESTION SECTION:
;www.magelinux.com.             IN      A

;; ANSWER SECTION:
www.magelinux.com.      5915    IN      A       192.168.100.22

;; AUTHORITY SECTION:
magelinux.com.          5915    IN      NS      dns2.magelinux.com.
magelinux.com.          5915    IN      NS      sbsb.magelinux.com.

;; ADDITIONAL SECTION:
dns2.magelinux.com.     5915    IN      A       192.168.100.110
sbsb.magelinux.com.     5915    IN      A       192.168.100.20

;; Query time: 0 msec
;; SERVER: 192.168.100.30#53(192.168.100.30)
;; WHEN: Sun Sep 20 13:15:03 2015
;; MSG SIZE  rcvd: 121



4、DNS安全控制選項

   allow-transfer {};  容許轉發主機,一般須要啓用

    allow-query {};  容許查詢的主機

                   此項一般僅用於服務器是緩存名稱服務器,只開放查詢給本地客戶端

    allow-recursion {}; 定義遞歸白名單

    allow-update { none; }; 定義容許動態更新區域數據文件的主機白名單


ACL:bind支持使用訪問控制列表

   acl ACL_NAME {

       192.16.0.0/16;

       192.168.0.0/24;

       127.0.0.0/8;

};

訪問控制列表只有定義後才能使用,一般acl要定義在named.conf的最上方


bind有4個內置的ACL:

     any:任何主機

     none:無一主機

     local:本機

     localnet:本機所在的網段




有點亂,之後有時間再整理了,,,,,,,,,,,,,,

相關文章
相關標籤/搜索