linux dns区域传送,DNS服务之主从复制和区域传送

1.区域传送

区域传送类型:

完全区域传送   axfr

增量区域传送   ixfr

1.1完全传送:

返回的是mageedu.com的所有记录即得到对方区域内的所有数据

[root@localhost ~]# dig -t axfr mageedu.com @192.168.85.128    #注意如果没有加上@192.168.85.128可能会出现Transfer failed情况

; <<>> DiG 9.8.2rc1-RedHat-9.8.2-0.30.rc1.el6_6.3 <<>> -t axfr mageedu.com @192.168.85.128

;; global options: +cmd

mageedu.com.            600     IN      SOA     ns1.mageedu.com. admin.mageedu.com. 2015073101 3600 300 172800 21600

mageedu.com.            600     IN      NS      ns1.mageedu.com.

mageedu.com.            600     IN      MX      10 mail.mageedu.com.

ftp.mageedu.com.        600     IN      CNAME   />

mail.mageedu.com.       600     IN      A       192.168.85.129

ns1.mageedu.com.        600     IN      A       192.168.85.128

600     IN      A       192.168.85.133

mageedu.com.            600     IN      SOA     ns1.mageedu.com. admin.mageedu.com. 2015073101 3600 300 172800 21600

;; Query time: 6 msec

;; SERVER: 192.168.85.128#53(192.168.85.128)

;; WHEN: Fri Jul 31 06:23:54 2015

;; XFR size: 8 records (messages 1, bytes 216)

1.2增量区域全送:返回的只是增量的那部分数据不是区域内所有的数据

先编辑配置文件添加一条A记录,然后重新启动/加载服务

[root@localhost named]# cat mageedu.com.zone

$TTL 600

@       IN      SOA     ns1.mageedu.com. admin.mageedu.com. (

2015073102

1H

5M

2D

6H )

IN      NS      ns1

IN      MX  10  mail

ns1     IN      A       192.168.85.128

mail    IN      A       192.168.85.129

www     IN      A       192.168.85.133

pop     IN      A       192.168.85.130    #添加的记录

ftp     IN      CNAME   www

测试:

[root@localhost named]# dig -t IXFR=2015073101 mageedu.com @192.168.85.128        #2015073101时的数据

; <<>> DiG 9.8.2rc1-RedHat-9.8.2-0.30.rc1.el6_6.3 <<>> -t IXFR=2015073101 mageedu.com @192.168.85.128

;; global options: +cmd

mageedu.com.            600     IN      SOA     ns1.mageedu.com. admin.mageedu.com. 2015073102 3600 300 172800 21600

mageedu.com.            600     IN      NS      ns1.mageedu.com.

mageedu.com.            600     IN      MX      10 mail.mageedu.com.

ftp.mageedu.com.        600     IN      CNAME   />

mail.mageedu.com.       600     IN      A       192.168.85.129

ns1.mageedu.com.        600     IN      A       192.168.85.128

pop.mageedu.com.        600     IN      A       192.168.85.130

600     IN      A       192.168.85.133

mageedu.com.            600     IN      SOA     ns1.mageedu.com. admin.mageedu.com. 2015073102 3600 300 172800 21600

;; Query time: 5 msec

;; SERVER: 192.168.85.128#53(192.168.85.128)

;; WHEN: Fri Jul 31 06:33:18 2015

;; XFR size: 9 records (messages 1, bytes 236)

[root@localhost named]# dig -t IXFR=2015073102 mageedu.com @192.168.85.128    #2015073102时增加的记录

; <<>> DiG 9.8.2rc1-RedHat-9.8.2-0.30.rc1.el6_6.3 <<>> -t IXFR=2015073102 mageedu.com @192.168.85.128

;; global options: +cmd

mageedu.com.            600     IN      SOA     ns1.mageedu.com. admin.mageedu.com. 2015073102 3600 300 172800 21600

;; Query time: 5 msec

;; SERVER: 192.168.85.128#53(192.168.85.128)

;; WHEN: Fri Jul 31 06:33:24 2015

;; XFR size: 1 records (messages 1, bytes 75)    #做了一次增量区域数据传送

2.区域传送发生在有主从服务器结构时,是从主服务器向从服务器中传送数据,而刚才通过dig  -t可以获得对应区域内的所有内容,这就可能简单判断其网络结构,这时非常不安全的,所以只能让我们的从服务器可以传送而其他任何人都不能进行区域传送,可以定义谁可以进行传送;

配置文件中添加allow-transfer {IP;};可以写在zone中也可以写在options中如:

[root@localhost named]# vim /etc/named.conf

options {

directory "/var/named";

allow-recursion {192.168.85.0/24;};

allow-transfer {192.168.85.128; };    #指定只有192.168.85.128的从服务器可以传送

};

测试:

[root@localhost named]# dig -t axfr mageedu.com

; <<>> DiG 9.8.2rc1-RedHat-9.8.2-0.30.rc1.el6_6.3 <<>> -t axfr mageedu.com

;; global options: +cmd

; Transfer failed.

[root@localhost named]# dig -t axfr mageedu.com @192.168.85.128

; <<>> DiG 9.8.2rc1-RedHat-9.8.2-0.30.rc1.el6_6.3 <<>> -t axfr mageedu.com @192.168.85.128

;; global options: +cmd

mageedu.com.            600     IN      SOA     ns1.mageedu.com. admin.mageedu.com. 2015073102 3600 300 172800 21600

mageedu.com.            600     IN      NS      ns1.mageedu.com.

mageedu.com.            600     IN      MX      10 mail.mageedu.com.

ftp.mageedu.com.        600     IN      CNAME   />

mail.mageedu.com.       600     IN      A       192.168.85.129

ns1.mageedu.com.        600     IN      A       192.168.85.128

pop.mageedu.com.        600     IN      A       192.168.85.130

600     IN      A       192.168.85.133

mageedu.com.            600     IN      SOA     ns1.mageedu.com. admin.mageedu.com. 2015073102 3600 300 172800 21600

;; Query time: 6 msec

;; SERVER: 192.168.85.128#53(192.168.85.128)

;; WHEN: Fri Jul 31 06:46:38 2015

;; XFR size: 9 records (messages 1, bytes 236)

3.打开另一台主机作为从服务器,从该主服务器中完成区域传送

3.1(要求该主机的IP为192.168.85.133  DNS为192.168.85.133即修改/etc/resolv.conf文件的nameserver为192.168.85.133)

安装bind包(简单点就只装了服务器包,lib包和utils包),可先在133的主机上测试能不能进行区域传输,如果可以,那么

接着做主从复制以及区域传输,如果不能而且其他配置没有问题,可先检查两边的SElinux和防火墙是否关闭,相应的端口是否打开等

3.2在133主机上先测试能否进行区域传输

[root@localhost named]# dig -t AXFR mageedu.com @192.168.85.128      #这里表示可以

; <<>> DiG 9.8.2rc1-RedHat-9.8.2-0.17.rc1.el6_4.6 <<>> -t AXFR mageedu.com @192.168.85.128

;; global options: +cmd

mageedu.com.            600     IN      SOA     ns1.mageedu.com. admin.mageedu.com. 2015073102 3600 300 172800 21600

mageedu.com.            600     IN      NS      ns1.mageedu.com.

mageedu.com.            600     IN      NS      ns2.mageedu.com.

mageedu.com.            600     IN      MX      10 mail.mageedu.com.

ftp.mageedu.com.        600     IN      CNAME   />

mail.mageedu.com.       600     IN      A       192.168.85.129

ns1.mageedu.com.        600     IN      A       192.168.85.128

ns2.mageedu.com.        600     IN      A       192.168.85.133

pop.mageedu.com.        600     IN      A       192.168.85.130

600     IN      A       192.168.85.133

mageedu.com.            600     IN      SOA     ns1.mageedu.com. admin.mageedu.com. 2015073102 3600 300 172800 21600

;; Query time: 7 msec

;; SERVER: 192.168.85.128#53(192.168.85.128)

;; WHEN: Sat Aug  1 04:29:41 2015

;; XFR size: 11 records (messages 1, bytes 270)

3.3将该主机作为从服务器进行主从复制

注意:对于/var/named目录而言其权限为

[root@localhost named]# ll -d .

drwxr-x--- 5 root named 4096 Aug  1 03:58 .

属组是没有写权限的。如果从服务器从主服务器哪里同步过来文件时是不能直接放在从服务器的/var/named目录下的,因为从服务器同步

文件依赖的是named进程,该进程的属组是named组,属主是named用户,因此访问/var/named目录时是named用户named组,但是组是

没有写权限的,所以在这个目录下不能建立文件,所以可以放在/var/named/slaves下,当然也可以改一下var/named目录的权限

drwxrwx--- 2 named named 4096 May 19 06:24 slaves

从服务器配置文件为:(可以scp主DNS的配置文件并进行修改)

[root@localhost named]# cat /etc/named.conf

options {

directory "/var/named";

allow-recursion { 192.168.85.0/24; };

};

zone "." IN {

type hint;

file "named.ca";

};

zone "localhost" IN {

type master;

file "named.localhost";

};

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

type master;

file "named.loopback";

};

zone "mageedu.com" IN {

typeslave;                                        #从服务器类型

file "slaves/mageedu.com.zone";         #同步来的文件放在/var/named/slaves下

masters { 192.168.85.128; };             #指定主DNS服务器,多个时用分号隔开

allow-transfer { none; };                    #作为从服务器不再允许区域传送

};

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

type slave;

file "slaves/192.168.85.zone";

masters { 192.168.85.128; };

allow-transfer { none; };

};

3.4 测试主从复制是否成功

从DNS服务器上:

[root@localhost named]# ll slaves/

total 8

-rw-r--r-- 1 named named 449 Aug  1 04:59 192.168.85.zone

-rw-r--r-- 1 named named 483 Aug  1 04:59 mageedu.com.zone其内容是:

[root@localhost named]# cat slaves/mageedu.com.zone

$ORIGIN .

$TTL 600        ; 10 minutes

mageedu.com             IN SOA  ns1.mageedu.com. admin.mageedu.com. (

2015073102 ; serial

3600       ; refresh (1 hour)

300        ; retry (5 minutes)

172800     ; expire (2 days)

21600      ; minimum (6 hours)

)

NS      ns1.mageedu.com.

NS      ns2.mageedu.com.

MX      10 mail.mageedu.com.

$ORIGIN mageedu.com.

ftp                     CNAME   www

mail                    A       192.168.85.129

ns1                     A       192.168.85.128

ns2                     A       192.168.85.133

pop                     A       192.168.85.130

www                     A       192.168.85.133

3.5 测试区域传送

主DNS服务器上成功:

[root@localhost named]# tail /var/log/messages

Aug  1 04:59:35 localhost named[2811]: sizing zone task pool based on 5 zones

Aug  1 04:59:35 localhost named[2811]: Warning: 'empty-zones-enable/disable-empty-zone' not set: disabling RFC 1918 empty zones

Aug  1 04:59:35 localhost named[2811]: reloading configuration succeeded

Aug  1 04:59:35 localhost named[2811]: reloading zones succeeded

Aug  1 04:59:49 localhost named[2811]: client 192.168.85.133#39812: transfer of 'mageedu.com/IN': AXFR started

Aug  1 04:59:49 localhost named[2811]: client 192.168.85.133#39812: transfer of 'mageedu.com/IN': AXFR ended

Aug  1 04:59:50 localhost named[2811]: client 192.168.85.133#41513: transfer of '85.168.192.in-addr.arpa/IN': AXFR started

Aug  1 04:59:50 localhost named[2811]: client 192.168.85.133#41513: transfer of '85.168.192.in-addr.arpa/IN': AXFR ended

从DNS服务器上成功:

[root@localhost named]# tail /var/log/messages

Aug  1 05:08:16 localhost named[5115]: command channel listening on 127.0.0.1#953

Aug  1 05:08:16 localhost named[5115]: command channel listening on ::1#953

Aug  1 05:08:16 localhost named[5115]: zone 0.0.127.in-addr.arpa/IN: loaded serial 0

Aug  1 05:08:16 localhost named[5115]: zone 85.168.192.in-addr.arpa/IN: loaded serial 2015073101

Aug  1 05:08:16 localhost named[5115]: zone mageedu.com/IN: loaded serial 2015073102

Aug  1 05:08:16 localhost named[5115]: zone localhost/IN: loaded serial 0

Aug  1 05:08:16 localhost named[5115]: managed-keys-zone ./IN: loaded serial 4

Aug  1 05:08:16 localhost named[5115]: running

Aug  1 05:08:16 localhost named[5115]: zone mageedu.com/IN: sending notifies (serial 2015073102)

Aug  1 05:08:16 localhost named[5115]: zone 85.168.192.in-addr.arpa/IN: sending notifies (serial 2015073101)

4.上述都是完全区域传送,接下来测试增量区域传送

4.1 在主服务器数据文件中添加一条记录

[root@localhost named]# vim mageedu.com.zone

$TTL 600

@       IN      SOA     ns1.mageedu.com. admin.mageedu.com. (

2015073103          #改完后加1

1H

5M

2D

6H )

IN      NS      ns1

IN      NS      ns2

IN      MX  10  mail

ns1     IN      A       192.168.85.128

ns2     IN      A       192.168.85.133

mail    IN      A       192.168.85.129

www     IN      A       192.168.85.133

pop     IN      A       192.168.85.130

ftp     IN      CNAME   www

lw      IN      A       192.168.85.134#添加的记录

主服务器DNS服务重新加载

[root@localhost named]# service  named reload

Reloading named: [  OK  ]

更新成功

[root@localhost named]# tail /var/log/messages

Aug  1 05:17:25 localhost named[2811]: reloading configuration succeeded

Aug  1 05:17:25 localhost named[2811]: reloading zones succeeded

Aug  1 05:17:25 localhost named[2811]: zone mageedu.com/IN: loaded serial 2015073103            #这里加载2015073103成功即更新成功

Aug  1 05:17:25 localhost named[2811]: zone mageedu.com/IN: sending notifies (serial 2015073103)

Aug  1 05:17:25 localhost named[2811]: client 192.168.85.133#52188: transfer of 'mageedu.com/IN': AXFR-style IXFR started

Aug  1 05:17:25 localhost named[2811]: client 192.168.85.133#52188: transfer of 'mageedu.com/IN': AXFR-style IXFR ended

#这里显示增量传送IXFR成功

4.2 从服务器上测试

[root@localhost named]# tail /var/log/messages

Aug  1 05:08:16 localhost named[5115]: managed-keys-zone ./IN: loaded serial 4

Aug  1 05:08:16 localhost named[5115]: running

Aug  1 05:08:16 localhost named[5115]: zone mageedu.com/IN: sending notifies (serial 2015073102)

Aug  1 05:08:16 localhost named[5115]: zone 85.168.192.in-addr.arpa/IN: sending notifies (serial 2015073101)

Aug  1 05:17:25 localhost named[5115]: client 192.168.85.128#59292: received notify for zone 'mageedu.com'

Aug  1 05:17:25 localhost named[5115]: zone mageedu.com/IN: Transfer started.

Aug  1 05:17:25 localhost named[5115]: transfer of 'mageedu.com/IN' from 192.168.85.128#53: connected using 192.168.85.133#52188

Aug  1 05:17:25 localhost named[5115]: zone mageedu.com/IN: transferred serial 2015073103

Aug  1 05:17:25 localhost named[5115]: transfer of 'mageedu.com/IN' from 192.168.85.128#53: Transfer completed: 1 messages, 12 records, 289 bytes, 0.006 secs (48166 bytes/sec)

Aug  1 05:17:25 localhost named[5115]: zone mageedu.com/IN: sending notifies (serial 2015073103)

再在数据文件中查看一下:

[root@localhost named]# cat slaves/mageedu.com.zone

$ORIGIN .

$TTL 600        ; 10 minutes

mageedu.com             IN SOA  ns1.mageedu.com. admin.mageedu.com. (

2015073103 ; serial

3600       ; refresh (1 hour)

300        ; retry (5 minutes)

172800     ; expire (2 days)

21600      ; minimum (6 hours)

)

NS      ns1.mageedu.com.

NS      ns2.mageedu.com.

MX      10 mail.mageedu.com.

$ORIGIN mageedu.com.

ftp                     CNAME   www

lw                      A       192.168.85.134        #增加的那个记录

mail                    A       192.168.85.129

ns1                     A       192.168.85.128

ns2                     A       192.168.85.133

pop                     A       192.168.85.130

www                     A       192.168.85.133

注意:如果没有传送成功,检查一下你主服务器的数据文件中是否下入了该从服务器的NS记录,如果没有,那就说明域并不知道是DNS服务器,所以后面就无法传送了;

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值