1. 程式人生 > >DNS區域傳送、子域授權

DNS區域傳送、子域授權

主服務器 erro query 進行 not end slave 服務器搭建 ubuntu

前言

DNS服務器搭建參考上一篇;
DNS主從復制,就是將主DNS服務器的解析庫復制傳送至從DNS服務器,進而從服務器就可以進行正向、反向解析了。從服務器向主服務器更新查詢數據,保證數據一致性,此為區域傳送。也可以說,DNS區域傳送,就是DNS主從復制的實現方法,DNS主從復制是DNS區域傳送的表現形式。
DNS區域傳送的兩種方式:

  • zxfr:完全區域傳送
  • ixfr:增量區域傳送

當一個新的DNS服務器添加到區域中並配置為從DNS服務器時,它則會執行完全區域傳送,在主DNS服務器上獲取完整的資源記錄副本;同時為了保證數據同步,主域名服務器有更新時也會及時通知輔助域名服務器從而進行更新(增量區域傳送

)。

區域傳送

主服務器:192.168.2.72
從服務器: 192.168.2.104
兩臺服務器都提前安裝好named服務

完全區域傳送

1.對主服務器/etc/named.conf配置進行修改,在options配置段內增加:

notify yes;

2.在主服務器上正向、反向文件中增加從服務器的NS記錄
正向區域

@       NS      dns2
dns2    A       192.168.2.104

反向區域

IN      NS      dns2.magedu.com.
104      IN      PTR     dns2.magedu.com.

3.復制主服務器上配置文件至從服務器

#scp 192.168.1.72:/etc/named.rfc1912.zones /etc/

#scp 192.168.1.72:/etc/named.conf /etc/

4.修改從服務器上/etc/named.rfc1912.zones

zone "magedu.com" IN {
        type slave;
        masters { 192.168.2.72; };
        file "magedu.com.zone";
};

zone "2.168.192.in-addr.arpa" IN {
        type slave;
        masters { 192.168.2.72; };
        file "2.168.192.zone";
};

5.啟動從服務器DNS服務,查看日誌,及/var/named/目錄下是否已同步成功主服務器區域文件

增量區域傳送

1.修改主服務器正向解析文件,增加一條A記錄,==將序列號加1==後保存退出
2.reload主DNS服務器,查看日誌
主服務器日誌:

Jan 20 02:12:55 agent named[35582]: zone 2.168.192.in-addr.arpa/IN: sending notifies (serial 2019011301)
Jan 20 02:12:55 agent named[35582]: client 192.168.2.104#39669 (magedu.com): transfer of ‘magedu.com/IN‘: AXFR-style IXFR started
Jan 20 02:12:55 agent named[35582]: client 192.168.2.104#39669 (magedu.com): transfer of ‘magedu.com/IN‘: AXFR-style IXFR ended
Jan 20 02:12:56 agent named[35582]: client 192.168.2.104#34346: received notify for zone ‘magedu.com‘

從服務器日誌:

Jan 20 03:02:25 zabbix named[100773]: client 192.168.2.72#60290: received notify for zone ‘magedu.com‘
Jan 20 03:02:25 zabbix named[100773]: zone magedu.com/IN: Transfer started.
Jan 20 03:02:25 zabbix named[100773]: transfer of ‘magedu.com/IN‘ from 192.168.2.72#53: connected using 192.168.2.104#39669
Jan 20 03:02:25 zabbix named[100773]: zone magedu.com/IN: transferred serial 2019012001
Jan 20 03:02:25 zabbix named[100773]: transfer of ‘magedu.com/IN‘ from 192.168.2.72#53: Transfer completed: 1 messages, 10 records, 268 bytes, 0.001 secs (268000 bytes/sec)
Jan 20 03:02:25 zabbix named[100773]: zone magedu.com/IN: sending notifies (serial 2019012001)
Jan 20 03:02:25 zabbix named[100773]: client 192.168.2.72#4595: received notify for zone ‘2.168.192.in-addr.arpa‘
Jan 20 03:02:25 zabbix named[100773]: zone 2.168.192.in-addr.arpa/IN: notify from 192.168.2.72#4595: zone is up to date

3.在反向解析文件增加一條PTR記錄,同樣序列號加1
主DNS服務器日誌:

Jan 20 02:17:44 agent named[35582]: zone 2.168.192.in-addr.arpa/IN: sending notifies (serial 2019012001)
Jan 20 02:17:44 agent named[35582]: client 192.168.2.104#57041 (2.168.192.in-addr.arpa): transfer of ‘2.168.192.in-addr.arpa/IN‘: AXFR-style IXFR started
Jan 20 02:17:44 agent named[35582]: client 192.168.2.104#57041 (2.168.192.in-addr.arpa): transfer of ‘2.168.192.in-addr.arpa/IN‘: AXFR-style IXFR ended

從DNS服務器日誌:

Jan 20 03:07:38 zabbix named[100773]: client 192.168.2.72#17270: received notify for zone ‘2.168.192.in-addr.arpa‘
Jan 20 03:07:38 zabbix named[100773]: zone 2.168.192.in-addr.arpa/IN: Transfer started.
Jan 20 03:07:38 zabbix named[100773]: transfer of ‘2.168.192.in-addr.arpa/IN‘ from 192.168.2.72#53: connected using 192.168.2.104#57041
Jan 20 03:07:38 zabbix named[100773]: zone 2.168.192.in-addr.arpa/IN: transferred serial 2019012001
Jan 20 03:07:38 zabbix named[100773]: transfer of ‘2.168.192.in-addr.arpa/IN‘ from 192.168.2.72#53: Transfer completed: 1 messages, 8 records, 242 bytes, 0.001 secs (242000 bytes/sec)
Jan 20 03:07:38 zabbix named[100773]: zone 2.168.192.in-addr.arpa/IN: sending notifies (serial 2019012001)

4.通過dig命令驗證

root@node2:~# dig -t A ftp.magedu.com @192.168.2.104

; <<>> DiG 9.11.3-1ubuntu1.2-Ubuntu <<>> -t A ftp.magedu.com @192.168.2.104
;; global options: +cmd
;; Got answer:
;; ->>HEADER<<- opcode: QUERY, status: NOERROR, id: 2878
;; flags: qr aa rd ra; QUERY: 1, ANSWER: 1, AUTHORITY: 2, ADDITIONAL: 3

;; OPT PSEUDOSECTION:
; EDNS: version: 0, flags:; udp: 4096
;; QUESTION SECTION:
;ftp.magedu.com.            IN  A

;; ANSWER SECTION:
ftp.magedu.com.     600 IN  A   192.168.2.1

;; AUTHORITY SECTION:
magedu.com.     600 IN  NS  dns2.magedu.com.
magedu.com.     600 IN  NS  dns1.magedu.com.

;; ADDITIONAL SECTION:
dns1.magedu.com.    600 IN  A   192.168.2.72
dns2.magedu.com.    600 IN  A   192.168.2.104

;; Query time: 5 msec
;; SERVER: 192.168.2.104#53(192.168.2.104)
;; WHEN: Sun Jan 20 15:19:47 CST 2019
;; MSG SIZE  rcvd: 129

測試通過從服務器反向解析

root@node2:~# dig -x 192.168.2.1  @192.168.2.104

; <<>> DiG 9.11.3-1ubuntu1.2-Ubuntu <<>> -x 192.168.2.1 @192.168.2.104
;; global options: +cmd
;; Got answer:
;; ->>HEADER<<- opcode: QUERY, status: NOERROR, id: 14837
;; flags: qr aa rd ra; QUERY: 1, ANSWER: 1, AUTHORITY: 2, ADDITIONAL: 3

;; OPT PSEUDOSECTION:
; EDNS: version: 0, flags:; udp: 4096
;; QUESTION SECTION:
;1.2.168.192.in-addr.arpa.  IN  PTR

;; ANSWER SECTION:
1.2.168.192.in-addr.arpa. 600   IN  PTR ftp.magedu.com.

;; AUTHORITY SECTION:
2.168.192.in-addr.arpa. 600 IN  NS  dns1.magedu.com.
2.168.192.in-addr.arpa. 600 IN  NS  dns2.magedu.com.

;; ADDITIONAL SECTION:
dns1.magedu.com.    600 IN  A   192.168.2.72
dns2.magedu.com.    600 IN  A   192.168.2.104

;; Query time: 2 msec
;; SERVER: 192.168.2.104#53(192.168.2.104)
;; WHEN: Sun Jan 20 15:24:38 CST 2019
;; MSG SIZE  rcvd: 151

DNS子域授權

當一個域很大時,而且還有上下層關系,如果所有的記錄變更都由某一臺服務來管理的話會很不方便。因此DNS也會域和子域,上層DNS可以將子域的管理授權給子域中的NDS服務器來管理記錄的變更,這種做法叫子域授權。

子域授權配置

規劃如下:
父域為:magedu.com
NS地址:ns1.magedu.com
子域為:dev.magedu.com
NS地址為:ns1.dev.magedu.com

父域服務器配置

只需在區域解析庫文件中添加下層DNS服務器的NS與A記錄即可

dev.magedu.com. NS      dns1.dev.magedu.com.
dns1.dev.magedu.com.    A       192.168.2.165

子域服務器配置

子域需要有完整的區域相關配置
在/etc/named.rfc1912.zones中加入子域定義

zone "dev.magedu.com" IN {
        type master;
        file "dev.magedu.com.zone";
};

創建dev.magedu.com.zone區域解析文件

$TTL 600
@       IN      SOA     dns1.dev.magedu.com.    admin.dev.magedu.com. (
                2019012002;
                2H;
                15M;
                1W;
                1D);
@       IN      NS      dns1
dns1    IN      A       192.168.2.165
www     IN      A       192.168.2.18

在子域DNS服務器添加指向父域的轉發器

//將查詢父域的請求轉發給父域DNS
zone "magedu.com" IN {
        type forward;
        forward only;
        forwarders { 192.168.2.72; };
};

配置完成重啟服務。
通過dig命令測試解析結果:

通過子域解析 www.dev.magedu.com

root@node2:~# dig -t A www.dev.magedu.com @192.168.2.165

; <<>> DiG 9.11.3-1ubuntu1.2-Ubuntu <<>> -t A www.dev.magedu.com @192.168.2.165
;; global options: +cmd
;; Got answer:
;; ->>HEADER<<- opcode: QUERY, status: NOERROR, id: 36922
;; flags: qr aa rd ra; QUERY: 1, ANSWER: 1, AUTHORITY: 1, ADDITIONAL: 2

;; OPT PSEUDOSECTION:
; EDNS: version: 0, flags:; udp: 4096
;; QUESTION SECTION:
;www.dev.magedu.com.        IN  A

;; ANSWER SECTION:
www.dev.magedu.com. 600 IN  A   192.168.2.18

;; AUTHORITY SECTION:
dev.magedu.com.     600 IN  NS  dns1.dev.magedu.com.

;; ADDITIONAL SECTION:
dns1.dev.magedu.com.    600 IN  A   192.168.2.165

;; Query time: 17 msec
;; SERVER: 192.168.2.165#53(192.168.2.165)
;; WHEN: Sun Jan 20 16:09:31 CST

通過父域解析 www.dev.magedu.com

root@node2:~# dig -t A www.dev.magedu.com @192.168.2.72

; <<>> DiG 9.11.3-1ubuntu1.2-Ubuntu <<>> -t A www.dev.magedu.com @192.168.2.72
;; global options: +cmd
;; Got answer:
;; ->>HEADER<<- opcode: QUERY, status: NOERROR, id: 61135
;; flags: qr rd ra; QUERY: 1, ANSWER: 1, AUTHORITY: 1, ADDITIONAL: 1

;; OPT PSEUDOSECTION:
; EDNS: version: 0, flags:; udp: 4096
;; QUESTION SECTION:
;www.dev.magedu.com.        IN  A

;; ANSWER SECTION:
www.dev.magedu.com. 600 IN  A   192.168.2.18

;; AUTHORITY SECTION:
dev.magedu.com.     600 IN  NS  dns1.dev.magedu.com.

;; Query time: 318 msec
;; SERVER: 192.168.2.72#53(192.168.2.72)
;; WHEN: Sun Jan 20 16:19:13 CST 2019
;; MSG SIZE  rcvd: 82

通過子域DNS服務器解析父域的A記錄

root@node2:~# dig -t A www.magedu.com @192.168.2.165

; <<>> DiG 9.11.3-1ubuntu1.2-Ubuntu <<>> -t A www.magedu.com @192.168.2.165
;; global options: +cmd
;; Got answer:
;; ->>HEADER<<- opcode: QUERY, status: NOERROR, id: 47969
;; flags: qr rd ra; QUERY: 1, ANSWER: 2, AUTHORITY: 13, ADDITIONAL: 27

;; OPT PSEUDOSECTION:
; EDNS: version: 0, flags:; udp: 4096
;; QUESTION SECTION:
;www.magedu.com.            IN  A

;; ANSWER SECTION:
www.magedu.com.     301 IN  CNAME   web.magedu.com.
web.magedu.com.     301 IN  A   192.168.2.21


;; Query time: 2 msec
;; SERVER: 192.168.2.165#53(192.168.2.165)
;; WHEN: Sun Jan 20 16:21:30 CST 2019
;; MSG SIZE  rcvd: 873

DNS區域傳送、子域授權