六、搭建主从DNS服务#
主从DNS服务其实就是在多台相同环境机器上,都安装好Bind软件,再按照一定的规则修改主从的配置文件。
要求主从DNS服务器的时间要相同,关于时间如何同步,可以参考下面的ntp
6.1、搭建时间同步服务器-ntp#
在10.4.7.9
上安装时间同步服务器
~]# yum install -y ntp
修改配置文件ntp.conf
~]# rpm -ql ntp | grep conf /etc/ntp.conf /etc/sysconfig/ntpd /usr/share/man/man5/ntp.conf.5.gz ~]# vi /etc/ntp.conf
启动
[root@ntp-server ~]# rpm -ql ntp | grep bin /usr/bin/ntpstat /usr/sbin/ntp-keygen /usr/sbin/ntpd /usr/sbin/ntpdc /usr/sbin/ntpq /usr/sbin/ntptime /usr/sbin/tickadj [root@ntp-server ~]# systemctl start ntpd [root@ntp-server ~]# systemctl enable ntpd Created symlink from /etc/systemd/system/multi-user.target.wants/ntpd.service to /usr/lib/systemd/system/ntpd.service.
在客户端验证时间同步服务器是否正常启动
# 登陆10.4.7.0所在的其他网段的机器,验证如下 ~]# ntpdate 10.4.7.9 20 Aug 08:37:47 ntpdate[8399]: adjust time server 10.4.7.9 offset -0.017571 sec
在主从机器上添加crontab定时任务同步时间
参考之前的笔记:https://www.cnblogs.com/ZhuChangwu/p/11519940.html
~]# crontab -e */2 * * * * ntpdate 10.4.7.9 &> /dev/null [root@localhost ~]# crontab -l */2 * * * * ntpdate 10.4.7.9 &> /dev/null
6.2、开始搭建#
dns-master:10.4.7.7
dns-slave: 10.4.7.8
6.2.1、在master上的操作
1、设置允许哪些slave向自己同步数据
# 之前的配置如下 zone "meng.com" IN { type master; file "named.meng.zone"; allow-update { none; }; }; # 可以将allow-update { none; };删掉 # 也可以改写成: allow-update { 10.4.7.8; };
2、重启
6.2.2、在slave上的设置
1、使用crontab像时间同步服务器同步时间
2、修改/etc/named.conf
配置文件(同master)
3、修改/etc/named.rfc1912.zones
# master的named.rfc1912.zones自定义正向zone配置如下 zone "meng.com" IN { type master; file "named.meng.zone"; allow-update { none; }; }; # 响应的slave的追加配置如下 ~]# vi /etc/named.rfc1912.zones zone "meng.com" IN { type slave; # 因为slave的zone文件是从master中拉取过来的 # 所以slaves其实是个相对路径 # 全路径是:/var/named/slaves/named.meng.zone , /var/named在named.conf中有定义 file "slaves/named.meng.zone"; # 指定master位置 masters {10.4.7.7;}; };
4、重启
6.2.3、客户端的设置
为客户端设置两个dns服务。
echo nameserver 10.4.7.7 > /etc/resolv.conf echo nameserver 10.4.7.8 > /etc/resolv.conf
这样,当需要进行域名解析时,优先使用master。当master挂了后,客户端会使用备用的dns服务解析域名。