一、简述DNS服务器原理,并搭建主-辅服务器
1、简述DNS服务器原理
第一步:客户机提出域名解析请求,并将该请求发送给本地的域名服务器;
第二步:当本地的域名服务器收到请求后,就先查询本地的缓存,如果有该纪录项,则本地的域名服务器就直接把查询的结果返回;
第三步:如果本地的缓存中没有该纪录,则本地域名服务器就直接把请求发给根域名服务器,然后根域名服务器再返回给本地域名服务器一个所查询域(根的子域) 的主域名服务器的地址;
第四步:本地服务器再向上一步返回的域名服务器发送请求,然后接受请求的服务器查询自己的缓存,如果没有该纪录,则返回相关的下级的域名服务器的地址;
第五步:重复第四步,直到找到正确的纪录;
第六步:本地域名服务器把返回的结果保存到缓存,以备下一次使用,同时还将结果返回给客户 。
2、DNS服务器主从搭建
二台主机,一台当主服务器(192.1685.11/24),一台当从服务器(192.168.5.12/24),配置 shanghb.com?域的主从架构
(1)l两天主机安装BIND服务
yum install -y bind
(2)修改主服务配置文件/etc/named.conf
vim /etc/named.conf
// listen-on port 53 { 127.0.0.1; }; #注释此项
// allow-query { localhost; }; #注释此项
allow-transfer {192.168.5.12;}; #添加此项
(3)新建域解析文件 /var/named/shanghb.com.zone
cp /var/named/named.localhost /var/named/shanghb.com.zone -p
vim shanghb.com.zone
$TTL 1D
@ IN SOA ns1 admin (1 1D 10M 1W 1D)
NS ns1
NS ns2
ns1 A 192.168.5.11
ns2 A 192.168.5.12
www A 192.168.5.11
(4)在主服务器域文件?/etc/named.rfc1912.zones?中添加"shanghb.com"域
vim /etc/named.rfc1912.zones
#添加以下内容
zone "shanghb.com" IN { #添加此项
type master;
file "shanghb.com.zone";
}
named-checkconf #检查配置文件
named-checkzone shanghb.com /var/named/shanghb.com.zone #检查数据库文件
rndc reload #同步信息
(5)配置从服务器主配置文件 /etc/named.conf
vim /etc/named.conf
// listen-on port 53 { 127.0.0.1; }; #注释此项
// allow-query { localhost; }; #注释此项
allow-transfer {none;}; #添加此项
(6)并在从服务器的域文件?/etc/named.rfc1912.zones?中添加域信息
vim /etc/named.rfc1912.zones
#添加以下内容
zone "shanghb.com" IN {
type slave;
master {192.168.5.11;};
file "slaves/shanghb.com.zone.slave";
};
ls /var/named/slaves/
cat /var/named/slaves/shanghb.com.zone.slave
(7)启动主从服务器的DNS服务,并测试
systemctl start named
dig www.shanghb.com @192.168.5.11
dig www.shanghb.com@192.168.5.12
dig -t axfr shanghb.com @192.168.5.11
dig -t axfr shanghb.com @192.168.5.12