Linux网络中构建DNS主从域名服务器以及分离解析域名服务器

一、构建主从域名服务器

(一)、修改主域名服务器的区域配置文件,修改正、反向区域配置

vim  /etc/named.rfc1912.zone
zone "benet.com"  IN {
	type master;         #类型为主区域
	file "benet.com.zone";
	allow-transfer { 192.168.80.11; };     #允许"从服务器"下载正向区域数据,这里添"从服务器"的IP地址
};

zone "80.168.192.in-addr.arpa" IN  {
         type master;
        file "benet.com.zone. local"
        allow-transfer ( 192.168.80.11; );
};

(二)、修改从域名服务器的主配置文件

yum install -y bind
vim  /etc/named.conf
options {
     listen-on port 53 { 192.168.80.11; };   #监听53端口, ip地址使用提供服务的本地IP即可,也可用any代表所有
#    listen-on-v6 port 53 {::1; };
     directory  "/var/named";
     dump-file  "/var/named/data/cache dump.db";
     statistics-file "/var/named/data/named stats.txt";
     memstatistics-file "/var/named/data/named mem stats.txt";
     allow-query  { any; };     #充许使用本DNS解析服务的网段,也可用any代表所有
     ....
}     

(三)、修改从域名服务器区域配置文件,添加正、反区域配置

vim   /etc/named.rfc1912. zone
zone "benet.com"   IN   {
        type slave;       #类型为从区域
        masters { 192.168.80.10; };      #指定主服务器的IP地址
        file "slaves/benet.com.zone";    #下载的区域数据文件保存到slaves/目录下
};

zone "80.168.192.in-addr.arpa"  IN {
          type slave;
         masters { 192.168.80.10; }; 
         file "slaves/benet.com.zone.local";
};

(四)、主、从都重启动服务,并查看区域数据文件是否已下载成功

systemctl restart named
ls   -l   /var/named/slaves/

(五)、客户端的域名解析配置文件中添加从DNS服务器地址

echo  "nameserver  192.168.80.11" >> /etc/resolv.conf

(六)、测试

host  192.168.80.200
nslookup  192.168.80.200

(七)、停止主服务器的服务,模拟主服务器故障

systemctl stop named
host 192.168.80.200
nslookup 192.168.80.200

(八)、构建DNS主从域名服务器实操示例:

首先关闭防火墙
在这里插入图片描述

接着 更改主域名服务器的区域配置文件 vim /etc/named.rfc1912.zone
在这里插入图片描述

接着找第二台机器做从域名服务器,并且在该服务器中下载bind 软件包
在这里插入图片描述

接着修改主配置文件
在这里插入图片描述

接着修改从域名服务器区域配置文件,添加正、反区域配置
在这里插入图片描述
在这里插入图片描述

开启named 服务
在这里插入图片描述

可以查看到从服务器已经把主服务器的区域配置文件已经下载到自己的/var/named中的slaves中了
在这里插入图片描述

接着到客户机中更改一下域名解析配置文件,将主从服务器的IP 都加上。
在这里插入图片描述

此时用正向和反向解析一下,发现都可以解析出来。
在这里插入图片描述

接下来就可以实验停止主服务器的服务,模拟主服务器故障了。
首先用 systemctl stop named 停止 named服务,然后再用nslookup 解析一下,发现也可以解析出来,说明从服务器开始接替主服务器了。

在这里插入图片描述

二、分离解析域名服务器

分离解析的域名服务器实际也是主域名服务器,这里主要是指根据不同的客户端提供不同的域名解析记录。比如来自内网和外网的不同网段地址区域的客户机请求解析同一域名时,为其提供不同的解析结果,得到不同的IP地址。
在这里插入图片描述

配置网关服务器搭建DNS分离解析
在网关服务器搭建DNS分离解析,使局域网主机解析www.benet.com为192.168.80.200,外网主机解析www.benet.com为12.0.0.1.

(一)、为网关服务器配置双网卡

在关机状态下再添加一块网卡,重启系统

ifconfig  ens36  12.0.0.1/24
ifconfig

(二)、安装bind软件包

yum install -y bind

(三)、修改主配置文件

vim /etc/named. conf
options   {
          listen-on  port 53  { any; };  #监听本机或者any
#         listen-on-v6 port 53 (::1; };  #可以将该行注释掉
          director:  "/var/named";
          dump-file  "/var/named/data/cache dump.db";
          statistics-file "/var/named/data/named stats.txt";
          memstatistics-file "/var/named/data/named mem stats.txt";
          recursing-file "/var/named/data/named.recursing";
         secroots-file "/var/named/data/named.secroots";
         allow-query  { any; };     #允许所有主机解析
         ……
};

include "/etc/named.rfc1912. zones";

(四)、修改区域配置文件

vim  /etc/named.rfc1912. zones
view "lan" {              #定义内网view, view代表容器分割
	match-clients { 192.168.80.0/24; };     #匹配内网网段
	zone "benet.com" IN {         #设置要解析的区域
	    type master;
	    file "benet.com. zone.lan";    #数据配置文件
     };
};
     zone "." IN {       #可将根域配置从主配置文件剪切过来
          type hint;     #hint是根区域类型
         file "named.ca";
     };
};

view "wan" {       #定义外网view
   match-clients { any; };    #匹配除了内网网段以外的任意地址
   zone "benet.com" IN {
      type master;
      file "benet.com. zone.wan";;
    };
};
#注意:一旦启用view,所有的zone必须都在view下,所以要把系统默认的自检用的zone也放在view下或者删除

(五)、修改区域数据配置文件

cd /var/named
cp -p named.localhost  benet.com.zone.lan
cp -p named.localhost  benet.com.zone.wan

vim  benet.com.zone.lan
$TTL 1D
@        IN SOA benet.com.  admin.benet.com.   {
........
          NS     benet.com.
         А     192.168.80.10
www  IN  A     192.168.80.100    #内网主机通过解析www.benet.com的地址得到192.168.80.100

vim  benet.com.zone.wan
$TTL 1D
@       IN SOA  benet.com.  admin.benet.com.  {
........
        NS      benet.com.  
        A       12.0.0.1
www  IN A      12.0.0.100     #外网主机通过解析ww.benet.com的地址得到12.0.0.100

(六)、启动服务

systemctl start named

(七)、在内、外网客户端的域名解析配置文件中添加DNS服务器地址

echo "nameserver 192.168.80.10" >> /etc/resolv.conf   #内网客户端

echo "nameserver 12.0.0.1" >> /etc/resolv.conf    #外网客户端

(八)、在内、外网客户端上测试

nslookup www.benet.com

(九)、分离解析域名服务器实操示例:

首先添加一块网卡在自己的网关服务器上。
在这里插入图片描述

然后用ifconfig 查看一下网卡,发现新网卡 ens36 添加成功
在这里插入图片描述

接着将新网卡ens36 进行一下修改。注意了,新加的网卡ens36 里面一开始是什么东西也没有的,需要我们将/etc/sysconfig/network-scripts/ifcfg-ens33 复制到 /etc/sysconfig/network-scripts/ifcfg-ens36中去,然后再vim /etc/sysconfig/network-scripts/ifcfg-ens36来修改新网卡的配置。
在这里插入图片描述
在这里插入图片描述

重启网卡后发现网卡更改成功。
在这里插入图片描述

进入主配置文件进行修改,修改:listen-on port 53 { any; }; 监听本机或者any;listen-on-v6 port 53 (::1; }; 可以将该行注释掉; allow-query { any; }; 允许所有主机解析。
在这里插入图片描述

接着改区域配置文件,注意:一旦启用view容器,所有的zone必须都在view下,所以要把系统默认的自检用的zone也放在view下 或者将改配置文件下的内容全部删除后重新添加。
我们这里删除所有数据后重新添加。
在这里插入图片描述

对于每一行配置的意义,可以参考上面理论部分。
在这里插入图片描述

接着修改区域数据配置文件,首先复制原文件数据到内外网的区域数据配置文件。
在这里插入图片描述

该处修改的是内网主机通过解析www.gengcc.com的地址得到192.168.226.150
在这里插入图片描述

该处修改的是外网主机通过解析ww.gengcc.com的地址得到12.0.0.100
在这里插入图片描述

在内网客户端的域名解析配置文件中添加DNS服务器地址,然后进行解析。
在这里插入图片描述
在这里插入图片描述

在外网客户端的域名解析配置文件中添加DNS服务器地址,然后解析。
在这里插入图片描述

在windows 虚拟机上模拟外网客户端解析。
首先就是将该windows 虚拟机的IPV4 更改成网关服务器的外网网段内的地址。

在这里插入图片描述

在这里插入图片描述

猜你喜欢

转载自blog.csdn.net/Gengchenchen/article/details/110898759