主DNS服务器搭建:
主DNS必须区域解析库,在/var/named/123.com.zone 先指定自己的一个二级域
例如123.com
①:在辅助配置文件(/etc/named.rfc1912.zones)进行定义自己的区域,
在最底部进行定义
zone "123.com" IN { type master; file "123.com.zone"; };
进行验证配置文件语法 named-checkconf
②:在区域解析库的指定目录(/var/named)写入区域解析库123.com.zone cd /var/named cp -p named.localhost 123.com.zone 注意:name.localhost为模板 必须接-p选项
③:写入123.com区域的区域解析库 vim 123.com.zone
$TTL 1D @ IN SOA @ admin1.123.com. (
2022011301 ; serial
1D ; refresh
1H ; retry
1W ; expire
3H ) ; minimum
NS ns1
NS ns2
MX 10 admin1
MX 20 admin2
ns1 A 192.168.10.100
ns2 A 192.168.10.250
admin1 A 192.168.10.110
admin2 A 192.168.10.120
web A 192.168.10.241
ftp A 192.168.10.100
www CNAME web
④:检查区域解析库的语法问题 named-checkzone "123.com" 123.com.zone
⑤:重载服务进行生效(查看当前DNS服务器的允许状态) rndc status rndc reload 重载服务 ⑥:进行客户端验证(验证成功,并且显示aa即为成功) dig -t A www.123.com @192.168.10.241 dig -t SOA 123.com @192.168.10.241 主从同步:
原理:从服务和主服务器一样,都是负责本区域 从服务的区域解析库是从主服务器上同步过来的(TCP--53)
从服务必须在辅助配置文件规定自己的主人是谁
主服务器必须在区域解析库内指定从DNS服务器 注意事项:
主从同步,必须要求主DNS服务的区域解析库更新序列号(或者强行重启)
从DNS服务器的同步过来的区域解析库必须放置在/var/named/slaves目录里面
1-->为一台独立的名称服务器
2-->主服务器的区域解析库文件中必须有一条NS记录是指向从服务器;
3-->从服务器只需要定义区域,而无需提供解析库文件,解析库文件要处于/var/named/slaves目录中; 二进制数据流文件(data)
4-->主从服务器时间应该同步,可通过ntp进行;
5-->bind程序的版本应该保持一致(或者从服务器版本高)
6-->如果主DNS服务器的区域解析库内容发生修改,需修改其序列号(一般往后+1)!
7-->可以通过/var/log/message查看主从DNS同步相关数据信息 操作步骤 开启另外一台虚拟机,将网络设置好
从服务器的操作:
yum -y install bind bind-libs bind-utils
①:现将从服务器搭建缓存DNS服务器(步骤参照主服务器)
②:配置从服务器辅助配置文件,定义本地区域123.com
zone "123.com" IN {
type slave; ---> 指定我自己为从服务器
masters { 192.168.10.100; }; ---> 指定主DNS服务器的IP
file "slaves/123.com.zone"; ---> 指定同步过来的解析库放置的路径 };
检查配置文件语法:named-checkconf
注意:从服务区域解析为同步,不需要checkzone
重载服务:rndc reload
主服务器的操作: 编辑主服务器的区域解析库,指定从服务器的NS记录 重载服务 rndc reload 从服务器的操作:
从服务查询是否将区域解析库同步过来
rndc reload
ls /var/named/slaves/
dig -t A www.123.com @192.168.10.16 成功即实验完成
tail /var/log/messages 查看同步情况的日志