实验2:DNS从服务器

实验目的

搭建DNS主从服务器架构,实现DNS服务冗余

环境要求

需要四台主机
DNS主服务器:10.0.0.175
DNS从服务器:10.0.0.79
web服务器:10.0.0.8
DNS客户端:10.0.0.57

前提准备

关闭SElinux
关闭防火墙
时间同步

实现步骤

主DNS服务器配置

参照前面案例的配置,修改只有两处:allow-transfer 和 slave

1. 配置 /etc/named.conf:

1
2
3
4
5
6
7
8
# allow-transfer { 从服务器IP;};	只允许从服务器进行区域传输
# 同步全部,将配置写入option{};同步区域,将配置写入zone "ZONE_NAME" {}

options {
...
allow-transfer {10.0.0.79;};
...
}

1.1 配置 /etc/named.rfc1912.zones

1
2
3
4
zone "magedu.local" IN {
type master;
file "magedu.local.zone";
};

2. 修改DNS区域数据库文件 /var/named/magedu.org.zone

1
2
3
4
5
6
7
8
9
10
11
$TTL 1D
@ IN SOA master admin.magedu.org. (
0 ; serial
1D ; refresh
1H ; retry
1W ; expire
3H ) ; minimum
NS master
master A 10.0.0.175
www A 10.0.0.8
slave A 10.0.0.6

3. 检查并重启DNS主服务器

1
2
3
4
5
6
[root@centos8 ~]$named-checkconf 
[root@centos8 slaves]$named-checkzone magedu.loacl /var/named/magedu.local.zone
zone magedu.loacl/IN: loaded serial 0
OK
[root@centos8 ~]$rndc reload
server reload successful

从DNS服务器配置

1
yum install bind -y

修改 /etc/named.conf

1
2
3
4
5
6
7
8
options {
...
// listen-on port 53 { 127.0.0.1; };
// allow-query { localhost; };
#不允许其它主机进行区域传输
allow-transfer { none;};
...
}

配置 /etc/named.rfc1912.zones

1
2
3
4
5
zone "magedu.local" IN {
type slave;
masters {10.0.0.175;};
file "slaves/magedu.local.slave";
};

检查并启动

1
2
3
4
[root@centos6 ~]$named-checkconf
[root@centos6 slaves]$service named start
Generating /etc/rndc.key: [ OK ]
Starting named: [ OK ]

查看是否生成magedu.local.slave,注意,DNS主从服务器都要配置正确才能生成,一开始DNS主服务器的allow-transfer配置错了从DNS从服务器的地址,就怎么也生成不了

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
[root@centos6 named]$ll /var/named/slaves/magedu.local.slave 
-rw-r--r-- 1 named named 361 Sep 17 20:29 /var/named/slaves/magedu.local.slave
[root@centos6 named]$cat !$
cat /var/named/slaves/magedu.local.slave
$ORIGIN .
$TTL 86400 ; 1 day
magedu.local IN SOA master.magedu.local. admin.magedu.org. (
0 ; serial
86400 ; refresh (1 day)
3600 ; retry (1 hour)
604800 ; expire (1 week)
10800 ; minimum (3 hours)
)
NS master.magedu.local.
$ORIGIN magedu.local.
master A 10.0.0.175
slave A 10.0.0.6
www A 10.0.0.8

客户端测试主从DNS服务架构

1
2
3
4
5
6
7
8
9
10
# 添加DNS从服务器ip到/etc/resolv.conf
[root@centos7 ~]$cat /etc/resolv.conf
# Generated by NetworkManager
search magedu.org
nameserver 10.0.0.175
nameserver 10.0.0.79

# 测试,将DNS主服务器关掉服务,只保留从DNS从服务器服务,或者关掉DNS从服务器服务,只保留DNS主服务器服务,结果是都能访问web服务器的http服务,只有DNS主从服务器都关掉服务,才无法访问web服务器的http服务
[root@centos7 ~]$curl www.magedu.local
www.magedu.local