DNS服务器之二:权威服务器的搭建(正向、反向、双向解析、远程更新、辅助DNS)与动态域名解析

 上一篇博客中,我们已经详细介绍了DNS服务器,其中包括权威与非权威DNS服务器。现在,我们以维护westos.com域为例,进行权威服务器的搭建

1 权威服务器的正向解析

1.1 权威服务器的配置(A记录):

在服务器上/etc/named.conf  
#forwarders { 114.114.114.114;};       将接下来找的服务器的114.114.114.114删掉
第一步:
vim /etc/named.rfc1912.zones   添加域westos.com
zone "westos.com" IN{
    type master;
    file "westos.com.zone";
    allow-update { none; };
};

第二步:cd /var/named
cp -p named.localhost westos.com.zone

第三步:vim westos.com.zone    其中@代表zone "westos.com" IN中引号内的内容,不以‘.‘结束的语句都会自动加入@的内容
$TTL 1D
@   IN SOA dns.westos.com. lee.westos.com. (           dns.westos.com是服务端的主机名     
                	   0   ;serial
      				   1D   ;refresh
     				   1H   ; retry
    				   1W   ;expire
     				   3H ) ; minimum


	     NS      dns.westos.com.                        指定dns主机,com后面记得要加. 
dns      A       172.25.254.133                         指定这台dns服务器的A记录
bbs      A       172.25.254.111

第四步:重启服务
       systemctl restart  named

DNS服务器之二:权威服务器的搭建(正向、反向、双向解析、远程更新、辅助DNS)与动态域名解析_第1张图片
DNS服务器之二:权威服务器的搭建(正向、反向、双向解析、远程更新、辅助DNS)与动态域名解析_第2张图片
DNS服务器之二:权威服务器的搭建(正向、反向、双向解析、远程更新、辅助DNS)与动态域名解析_第3张图片
DNS服务器之二:权威服务器的搭建(正向、反向、双向解析、远程更新、辅助DNS)与动态域名解析_第4张图片
DNS服务器之二:权威服务器的搭建(正向、反向、双向解析、远程更新、辅助DNS)与动态域名解析_第5张图片

 客户端的测试:dig bbs.westos.com   可以看到解析结果,提供服务的服务器

解析成功!
DNS服务器之二:权威服务器的搭建(正向、反向、双向解析、远程更新、辅助DNS)与动态域名解析_第6张图片
1.2 权威服务器的配置(CNAME):

CNAME记录,即:别名记录。这种记录允许将多个名字映射到同一台计算机。 通常用于同时提供WWW和MAIL服务的计算机。例如,有一台计算机名为“host.mydomain.com”(A记录)。 它同时提供WWW和MAIL服务,为了便于用户访问服务。可以为该计算机设置两个别名(CNAME):WWW和MAIL。

在DNS服务端:
在1.1已经做好的基础上,只需在westos.com.zone中添加记录

vim westos.com.zone
$TTL 1D
@   IN SOA dns.westos.com. lee.westos.com. (
        						    0   ;serial
       								1D   ;refresh
      								1H   ; retry
      								1W   ;expire
     							    3H ) ; minimum

         NS    dns.westos.com.
dns      A       172.25.254.133
bbs      A       172.25.254.111
www     CNAME    node1.westos.com.
node1    A       172.25.254.112
node1    A       172.25.254.222


DNS服务器之二:权威服务器的搭建(正向、反向、双向解析、远程更新、辅助DNS)与动态域名解析_第7张图片
DNS服务器之二:权威服务器的搭建(正向、反向、双向解析、远程更新、辅助DNS)与动态域名解析_第8张图片

在客户端测试:dig www.westos.com   就相当于先把www转换成了本地node1
            然后本地node1.westos.com解析成A地址

DNS服务器之二:权威服务器的搭建(正向、反向、双向解析、远程更新、辅助DNS)与动态域名解析_第9张图片1.3 权威服务器的配置(MX记录):
邮件交换记录 (MX record)是域名系统(DNS)中的一种资源记录类型,用于指定负责处理发往收件人域名的邮件服务器。MX记录允许设置一个优先级,当多个邮件服务器可用时,会根据该值决定投递邮件的服务器。简单邮件传输协议(SMTP)会根据MX记录的值来决定邮件的路由过程。

在DNS服务端:
在1.1已经做好的基础上,只需在westos.com.zone中添加记录
vim westos.com.zone
$TTL 1D
@   IN SOA dns.westos.com. lee.westos.com. (
       					  0   ;serial
       					 1D   ;refresh
       					 1H   ; retry
      					 1W   ;expire
      					 3H ) ; minimum


               NS    dns.westos.com.
dns             A       172.25.254.133
bbs             A       172.25.254.111
www           CNAME    node1.westos.com
node1           A       172.25.254.112
node1           A       172.25.254.222
westos.com.    MX 1     172.25.254.172     指定负责处理发往westos.com域的邮件由172.25.254.172处理,优先级为1     

systemctl restart named

DNS服务器之二:权威服务器的搭建(正向、反向、双向解析、远程更新、辅助DNS)与动态域名解析_第10张图片

客户端:> /var/spool/mail/root      清空邮件
       mail [email protected]     向westos.com发送邮件,输入传输邮件内容 以.结束
       mailq   可以看到邮件已经传送到westos.com,但是接收端25端口没开,就不属于dns服务的内容了

DNS服务器之二:权威服务器的搭建(正向、反向、双向解析、远程更新、辅助DNS)与动态域名解析_第11张图片

2 权威服务器的反向解析

正向解析就是域名到ip地址的映射,反之,反向解析就是ip地址到域名的映射。为实现反向解析,服务器配置如下:

第一步:vim /etc/named.rfc1912.zones   
zone "254.25.172.in-addr.arpa" IN{                  添加反向解析域
    type master;
    file "172.25.254.ptr";
    allow-update { none; };
};


第二步:cd /var/named                               生成反向解析记录文件
       cp -p named.loopback  172.25.254.ptr

第三步:vim 172.25.254.ptr
$TTL 1D
@   IN SOA dns.westos.com. lee.westos.com. (
        					0   ;serial
       						1D   ;refresh
       						1H   ; retry
       						1W   ;expire
       						3H ) ; minimum

         NS     dns.westos.com.
dns      A       172.25.254.172
111     PTR      hello.westos.com
222     PTR       node1.westos.com       

第四步:systemctl restrt named

DNS服务器之二:权威服务器的搭建(正向、反向、双向解析、远程更新、辅助DNS)与动态域名解析_第12张图片
DNS服务器之二:权威服务器的搭建(正向、反向、双向解析、远程更新、辅助DNS)与动态域名解析_第13张图片
DNS服务器之二:权威服务器的搭建(正向、反向、双向解析、远程更新、辅助DNS)与动态域名解析_第14张图片

在客户端查看地址到域名的反向解析:
dig -x 172.25.254.111
dig -x 172.25.254.222

DNS服务器之二:权威服务器的搭建(正向、反向、双向解析、远程更新、辅助DNS)与动态域名解析_第15张图片
DNS服务器之二:权威服务器的搭建(正向、反向、双向解析、远程更新、辅助DNS)与动态域名解析_第16张图片

3 权威服务器的双向解析

我们想要使不同网段解析出来的ip地址不一致,同一个域名,不同网段解析出来的地址不一样,这样就可以实现访问的分流,比如公司内部员工解析出来的是内部ip地址,而外部人员解析出来的是外部ip地址,这样就可以使公司的服务器负担变小。因为只有一台主机,为使实验效果明显,我们使服务器本机访问解析为一个地址,除此之外都算外网,解析成另外一个地址。
步骤如下:

第一步:vim /etc/named.conf       设置内外网包含不同的子配置文件
view localhost {
  match-clients { localhost;};
 zone"." IN {
   type hint;
    file "named.ca";
};
include "/etc/named.rfc1912.zones";
};

view outernet {
  match-clients { any;};
 zone"." IN {
   type hint;
    file "named.ca";
};
include "/etc/named.rfc1912.outer.zones";
};


第二步:cp -p /etc/named.rfc1912.zones /etc/named.rfc1912.outer.zones     生成外网的子配置文件
vim /etc/named.rfc1912.outer.zones
zone "westos.com" IN{
    type master;
    file "westos.com.outer.zone";
    allow-update { none; };
};

第三步:cd /var/named
cp -p westos.com.zone westos.com.outer.zone      生成外网的数据解析文件
vim westos.com.outer.zone
$TTL 1D
@   IN SOA dns.westos.com. lee.westos.com. (
        0   ;serial
       1D   ;refresh
       1H   ; retry
       1W   ;expire
       3H ) ; minimum


               NS    dns.westos.com.
dns             A       1.1.1.133
bbs             A      1.1.1.111
www           CNAME    node1.westos.com
node1           A       1.1.1.112
node1           A       1.1.1.222
westos.com.    MX 1     1.1.1.133

DNS服务器之二:权威服务器的搭建(正向、反向、双向解析、远程更新、辅助DNS)与动态域名解析_第17张图片
DNS服务器之二:权威服务器的搭建(正向、反向、双向解析、远程更新、辅助DNS)与动态域名解析_第18张图片
DNS服务器之二:权威服务器的搭建(正向、反向、双向解析、远程更新、辅助DNS)与动态域名解析_第19张图片
DNS服务器之二:权威服务器的搭建(正向、反向、双向解析、远程更新、辅助DNS)与动态域名解析_第20张图片

测试:本机dig bbs.westos.com  得到172.25.254.100的解析结果
      server虚拟机dig bbs.westos.com    得到1.1.1.100的解析结果

DNS服务器之二:权威服务器的搭建(正向、反向、双向解析、远程更新、辅助DNS)与动态域名解析_第21张图片
DNS服务器之二:权威服务器的搭建(正向、反向、双向解析、远程更新、辅助DNS)与动态域名解析_第22张图片

4 辅助DNS的部署

当只有一台主DNS时,所有的访问压力都在一台主机上,故设置辅助DNS可以帮助主DNS分担访问压力。
4.1 主辅DNS服务器的部署分别如下

1.主DNS服务器:/etc/named.conf 
将3中做的双向解析注释掉  

vim /etc/named.rfc1912.zones
zone "westos.com" IN{
    type master;
    file "westos.com.zone";
    also-notify { 172.25.254.92; };                 主DNS通知辅助DNS
  //  allow-transfer { 172.25.254.92; };          允许向172.25.254.92主机传送数据(企业7可以不写)
    allow-update { none; };
};

systemctl restart named

2.辅助DNS:
hostnamectl set-hostname dns-slave.westos.com
yum install bind.x86_64
主配置文件修改/etc/named.conf   
       和主DNS配置文件一样:53端口对所有主机开,允许所有主机询问
vim /etc/named.rfc19192.zones
zone "westos.com" IN{
    type slave;
     masters { 172.25.254.172; };
     file "slaves/westos.com.zone";
    allow-update { none; };
};
systemctl restart named

DNS服务器之二:权威服务器的搭建(正向、反向、双向解析、远程更新、辅助DNS)与动态域名解析_第23张图片
DNS服务器之二:权威服务器的搭建(正向、反向、双向解析、远程更新、辅助DNS)与动态域名解析_第24张图片
DNS服务器之二:权威服务器的搭建(正向、反向、双向解析、远程更新、辅助DNS)与动态域名解析_第25张图片
DNS服务器之二:权威服务器的搭建(正向、反向、双向解析、远程更新、辅助DNS)与动态域名解析_第26张图片
DNS服务器之二:权威服务器的搭建(正向、反向、双向解析、远程更新、辅助DNS)与动态域名解析_第27张图片

测试辅助DNS:
将server端域名解析服务器写为172.25.254.92
 当主DNS服务器重启以后,在辅助端cd /var/named 中目录slaves会生成westos.com.zone(加密字符)
dig www.westos.com  看是否是从主服务器中获取的解析

DNS服务器之二:权威服务器的搭建(正向、反向、双向解析、远程更新、辅助DNS)与动态域名解析_第28张图片DNS服务器之二:权威服务器的搭建(正向、反向、双向解析、远程更新、辅助DNS)与动态域名解析_第29张图片
DNS服务器之二:权威服务器的搭建(正向、反向、双向解析、远程更新、辅助DNS)与动态域名解析_第30张图片
辅助DNS搭建成功!
DNS服务器之二:权威服务器的搭建(正向、反向、双向解析、远程更新、辅助DNS)与动态域名解析_第31张图片
4.2 主辅DNS服务器的更新
当主服务器数据信息更新以后,辅助DNS的数据信息也得同步更新。故更新方法如下:

主DNS服务器:
vim westos.com.zone
$TTL 1D
@   IN SOA dns.westos.com. lee.westos.com. (
       					 2019051201   ;serial     此位标志着是否更新,最大位数10位,只有该位更改,才认为内容有更改
       					 	1D   ;refresh
       					 	1H   ; retry
      					 	1W   ;expire
      					 	3H ) ; minimum


               NS    dns.westos.com.
dns             A       172.25.254.172
bbs             A       172.25.254.111
www           CNAME    node1.westos.com
node1           A       172.25.254.20
node1           A       172.25.254.25
westos.com.    MX 1     172.25.254.172 

sysemctl restart named

辅助DNS:dig www.westos.com   检查是否有更新

DNS服务器之二:权威服务器的搭建(正向、反向、双向解析、远程更新、辅助DNS)与动态域名解析_第32张图片
更新成功!
DNS服务器之二:权威服务器的搭建(正向、反向、双向解析、远程更新、辅助DNS)与动态域名解析_第33张图片

5 权威DNS的远程更新

当我们想要添加新的数据信息到DNS服务器的数据文件当中,这就涉及到远程更新。远程更新分为两种:ip远程更新和key加密远程更新。分别介绍如下:
5.1 ip远程更新:

1.当有信息数据写入更新并重启以后,服务器的数据文件就会被自动改变,所以我们先将原来的
数据文件备份
cp -p /var/named/westos.com.zone /opt/

2.想要被更新的服务器的配置更改如下:
chmod 770 /var/named    				 允许对数据目录写
vim /etc/named.rfc1912.zones
zone "westos.com" IN{
    type master;
    file "westos.com.zone";
    also-notify { 172.25.254.92; };                
    allow-update { 172.25.254.172; };     这里写允许哪台主机更新服务器(允许自己更新自己)
};
systemctl restart named

3.更新测试:
nsupdate --> server 172.25.254.172--> update add test.westos.com 86400 
A 172.25.254.100 --> send -->quit
dig test.westos.com  
当更新并重启服务以后,
会生成westos.com.zone.jnl文件
文件westos.com.zone内容改变了
当做下一个实验时,将其删掉,将备份移回来

DNS服务器之二:权威服务器的搭建(正向、反向、双向解析、远程更新、辅助DNS)与动态域名解析_第34张图片
DNS服务器之二:权威服务器的搭建(正向、反向、双向解析、远程更新、辅助DNS)与动态域名解析_第35张图片
DNS服务器之二:权威服务器的搭建(正向、反向、双向解析、远程更新、辅助DNS)与动态域名解析_第36张图片
DNS服务器之二:权威服务器的搭建(正向、反向、双向解析、远程更新、辅助DNS)与动态域名解析_第37张图片
DNS服务器之二:权威服务器的搭建(正向、反向、双向解析、远程更新、辅助DNS)与动态域名解析_第38张图片
5.2 key加密更新:

第一步:生成加密字符串
       cd /mnt
	  dnssec-keygen -a HMAC-MD5 -b 128 -n HOST westos
第二步:生成加密文件  cp /etc/rndc.key /etc/westos.key -p
  	   cat Kwestos.+157+48160.key
	   vim /etc/westos.key   将名字改为westos,然后加密字符改为自己生成的
第三步:修改主配置文件 
       vim /etc/named.conf   添加include "/etc/westos.key"
       cd /var/named
       rm -fr westos.com.zone*
       cp -p /opt/westos.com.zone .
第四步:修改子配置文件  
        vim westos.com.zone
	    vim /etc/named.rfc1912.zones   将allow-update { key westos; };
        systemctl restart named        然后重启服务
第五步:测试:
        cd /mnt
        nsupdate -k Kwestos.+157+48160.private    使用加密字符串更新
        dig trest.westos.com  

DNS服务器之二:权威服务器的搭建(正向、反向、双向解析、远程更新、辅助DNS)与动态域名解析_第39张图片
DNS服务器之二:权威服务器的搭建(正向、反向、双向解析、远程更新、辅助DNS)与动态域名解析_第40张图片
DNS服务器之二:权威服务器的搭建(正向、反向、双向解析、远程更新、辅助DNS)与动态域名解析_第41张图片
DNS服务器之二:权威服务器的搭建(正向、反向、双向解析、远程更新、辅助DNS)与动态域名解析_第42张图片
DNS服务器之二:权威服务器的搭建(正向、反向、双向解析、远程更新、辅助DNS)与动态域名解析_第43张图片

6 动态域名解析:DDNS

 DDNS是将用户的动态IP地址映射到一个固定的域名解析服务上,用户每次连接网络的时候客户端程序就会通过信息传递把该主机的动态IP地址传送给位于服务商主机上的服务器程序,服务器程序负责提供DNS服务并实现动态域名解析。
 就是利用dhcp+dns实现,当同一个域名对应的Ip变化时,dhcp服务器告诉dns域名和ip地址的对应关系,dns服务器从而可以解析出地址。这一过程是动态的,故称动态域名解析。实现过程如下:

我们将dhcp服务和dns配置在一台主机中,在#5中我们已经生成加密key,若配置前没有生成key,重复5中key加密的步骤
服务器的配置:
第一步:cd /var/named
  		rm -fr westos.com.zone*
 		cp -p /opt/westos.com.zone .

第二步:   yum install dhcp -y
		  cp /user/share/doc/dhcp*/dhcp.conf.example  /etc/dhcp/dhcpd.conf
		  vim /etc/dhcp/dhcpd.conf
	  改: option domain-name "westos.com";
          option domain-name-servers 172.25.254.172;
  加入语句:ddns-update-style interim;
       改:subnet 172.25.254.0 netmask 255.255.255.0 {
           range 172.25.254.130 172.25.254.150;
           option routers 172.25.254.72;
            };
  加入语句,当dhcp服务器通知dns服务器时,也就是dns服务器的更新,使用westos key加密更新:
  	       key westos {               
  	            algorithm hmac-md5;
 	            secret 自己生成的加密字符;
	         };
	       zone westos.com. {
  	            primary 127.0.0.1;
   	            key westos;              
	         }

 	      systemctl restart dhcpd
          systemctl restart named

DNS服务器之二:权威服务器的搭建(正向、反向、双向解析、远程更新、辅助DNS)与动态域名解析_第44张图片
DNS服务器之二:权威服务器的搭建(正向、反向、双向解析、远程更新、辅助DNS)与动态域名解析_第45张图片
DNS服务器之二:权威服务器的搭建(正向、反向、双向解析、远程更新、辅助DNS)与动态域名解析_第46张图片

客户端的测试:
       hostnamectl set-hostname news.westos.com
      cat /etc/reslov.conf       	由172.25.254.172服务器提供服务 
       改ip获取方式为dhcp
       systemctl restart dhcpd
       systemctl restart named
       ip addr show              	查看ip地址
       dig news.westos.com       	看解析的地址
       当在服务器中改变了获取的地址池,使客户端获取的ip地址改变
       dig news.westos.com        	看解析的地址是否改变

在这里插入图片描述
DNS服务器之二:权威服务器的搭建(正向、反向、双向解析、远程更新、辅助DNS)与动态域名解析_第47张图片DNS服务器之二:权威服务器的搭建(正向、反向、双向解析、远程更新、辅助DNS)与动态域名解析_第48张图片DNS服务器之二:权威服务器的搭建(正向、反向、双向解析、远程更新、辅助DNS)与动态域名解析_第49张图片
可以看到服务端的数据文件被更新
DNS服务器之二:权威服务器的搭建(正向、反向、双向解析、远程更新、辅助DNS)与动态域名解析_第50张图片
更改服务端dhcp分配的地址池

DNS服务器之二:权威服务器的搭建(正向、反向、双向解析、远程更新、辅助DNS)与动态域名解析_第51张图片DNS服务器之二:权威服务器的搭建(正向、反向、双向解析、远程更新、辅助DNS)与动态域名解析_第52张图片DNS服务器之二:权威服务器的搭建(正向、反向、双向解析、远程更新、辅助DNS)与动态域名解析_第53张图片DNS服务器之二:权威服务器的搭建(正向、反向、双向解析、远程更新、辅助DNS)与动态域名解析_第54张图片

你可能感兴趣的:(Linux)