主从复制:
dns服务器类型:
主服务器:区域解析库手动创建
从服务器:区域解析库不能手动创建和修改,要从主服务器同步而来
从服务器从主服务器上拉取区域解析库用完全区域传送axfr和不完全区域传送ixfr
完全区域传送是在从dns服务器第一次从主服务器同步是用完全区域传送axfr
1、配置主从dns服务器需要时间同步
crontab:
*/3 * * * * /usr/sbin/ntpdate 172.16.0.1 &> /dev/null
每3分钟从时间服务器同步一次时间
2、从服务器bind版本不能低于主服务器bind版本,以使从服务器能兼容主服务器bind程序特性
网域:bh4cxj.com
配置从服务器:
1、到域名注册商那里添加一个从dns服务器的ns记录
2、先确定从服务器的bind版本不低于主dns服务器
3、将主从dns服务器每3分钟和同一个时间服务器同步一次时间
# crontab -e
4、在主dns服务器的解析库中添加从dns服务器的ns记录和a记录,然后还要修改版本号
[root@localhost named]# vi /var/named/bh4cxj.com.zone
重新加载主dns服务器配置
[root@localhost named]# service named reload
5、添加一个从解析区域
修改主配置文件
[root@localhost etc]# vi /etc/named.conf
在从dns服务器上添加一个从解析区域
[root@localhost etc]# vi /etc/named.rfc1912.zones
检查语法
[root@localhost etc]# named-checkconf /etc/named.conf
启动服务
[root@localhost named]# service named start
[root@localhost named]# ls slaves/
可以看到已经从服务器上同步到解析库
看一看这个同步到的解析库内容
[root@localhost named]# cat slaves/bh4cxj.com.zone
可以看到版本号和从dns服务器正是在主服务器上做的修改,已经被同步到了从dns服务器的解析库
6、测试从dns服务器
查看所有的记录
[root@localhost named]# dig -t axfr bh4cxj.com @localhost
查询www.bh4cxj.com
[root@localhost named]# dig -t a www.bh4cxj.com @localhost
区域传送的限制功能
主dns服务器只允许从服务器区域传送
从dns服务器不允许任何服务器进行区域传送
bind中内置了acl访问控制列表
none:所有都不允许
any:允许任意
localhost: 本机
localnet:本网络
allow-transfer { ip; ip; };
将主dns服务器修改为仅允许从dns server进行区域传送
[root@localhost named]# vi /etc/named.rfc1912.zones
重载服务配置
在主dns上区域传送
[root@localhost named]# dig -t axfr bh4cxj.com @172.16.249.116
可以看到传送失败,在从dns服务器上测试
传送成功,设置生效
将从dns server修改为不允许任何人进行区域传送
在主dns server和从dns server上测试
[root@localhost named]# dig -t axfr bh4cxj.com @172.16.142.53
子域授权
子域:ops.bh4cxj.com
master ns: 172.16.142.153
slave ns: 172.16.142.154
mail: 172.16.142.125
www server: 172.16.142.180
ftp server: 172.16.142.121
子域授权,在其父域的区域解析库中添加“胶水记录(glue record)”
在父域bh4cxj.com的区域解析库中添加子域的ns记录
[root@localhost ~]# service named force-reload
配置子域ops.bh4cxj.com主从复制
1、安装bind
2、配置主配置文件
定义一个区域
3、为主dns server提供区域解析库
修改解析库文件的属组和权限
[root@localhost named]# chown :named ops.bh4cxj.com.zone
[root@localhost named]# chmod 640 ops.bh4cxj.com.zone
4、检查配置文件
[root@localhost named]# named-checkconf
[root@localhost named]# service namedc onfigtest
5、启动
6、测试
在从dns server上执行
[root@localhost ~]# dig -t axfr ops.bh4cxj.com @172.16.142.153
7、配置从dns server
定义一个从区域
限定区域传送
检查配置文件
8、启动测试
[root@localhost ~]# service named start
[root@localhost ~]# cat /var/named/slaves/ops.bh4cxj.com.zone
[root@localhost ~]# dig -t a
mail.ops.bh4cxj.com @localhost