一、配置需求及网络拓扑
1、配置拓扑
2、配置需求
- 使用【主DNS服务器】管理meaauf.cn域和gz.meaauf.cn域;并将bj.meaauf.cn域委派给【子域DNS服务器】进行管理。
- 在【主DNS服务器】上添加相应的A记录、别名记录、MX记录和PTR记录:
- 【辅助DNS服务器】作为meaauf.cn域、gz.meaauf.cn域和bj.meaauf.cn域的辅助DNS服务器。
- 在【子域DNS服务器】上添加相应的A记录、别名记录、MX记录和PTR记录:
- 【子域DNS服务器】作为meaauf.cn域和gz.meaauf.cn域的辅助DNS服务器。
- 使用unbound配置【缓存DNS服务器】为完全转发缓存DNS服务器,指向【主DNS服务器】。
- 在【DNS测试客户机】上进行域名解析测试。
主DNS解析记录
正向 | 反向 | 类型 |
---|---|---|
dns.meaauf.cn | 192.168.10.1 | A/PTR |
dns.gz.meaauf.cn | 192.168.10.2 | A/PTR |
www.gz.meaauf.cn | 192.168.10.3 | A/PTR |
web.gz.meaauf.cn | www.gz.meaauf.cn | CNAME |
mail.gz.meaauf.cn | 192.168.10.4 | A/PTR |
gz.meaauf.cn | none | MX,优先级1 |
子域DNS解析记录
正向 | 反向 | 类型 |
---|---|---|
dns.bj.meaauf.cn | 192.168.20.10 | A/PTR |
www.bj.meaauf.cn | 192.168.20.11 | A/PTR |
mail.bj.meaauf.cn | 192.168.20.12 | A/PTR |
web.bj.meaauf.cn | www.bj.meaauf.cn | CNAME |
bj.meaauf.cn | none | MX,优先级3 |
二、基础网络及路由配置
1、主DNS服务器
基础网络配置,主DNS指向自己,辅助DNS指向辅助DNS服务器
nmcli connection modify ens160 ipv4.method manual ipv4.addresses 192.168.10.1/24 ipv4.dns 192.168.10.1 +ipv4.dns 192.168.10.2
nmcli connection up ens160
添加默认路由
- 临时添加:route add default gw 192.168.10.2
- 添加在网卡链接中:nmcli connection modfiy xxx ipv4.routes “0.0.0.0/0 192.168.10.2”
nmcli connection modify ens160 ipv4.routes "0.0.0.0/0 192.168.10.2"
nmcli connection up ens160
关闭SELinux
sed -i 's/enforcing/disabled/g' /etc/selinux/config # 将文件中的enforcing替换为disabled
reboot
查看IP地址配置详情
查看路由表条目
route -n
查看SELinux状态
sestatus
2、辅助DNS服务器配置
基础网络配置
nmcli connection modify ens160 ipv4.method manual ipv4.addresses 192.168.10.2/24 ipv4.dns 192.168.10.1 +ipv4.dns 192.168.10.2
nmcli connection add con-name ens224 ifname ens224 ipv4.method manual ipv4.addresses 192.168.20.20/24 ipv4.dns 192.168.10.1 +ipv4.dns 192.168.10.2 ipv4.routes "0.0.0.0/0 192.168.20.10"
nmcli connection up ens224
开启路由转发
echo net.ipv4.ip_forward=1 >> /etc/sysctl.conf
sysctl -p # 立即生效路由配置
关闭SELinux
sed -i 's/enforcing/disabled/g' /etc/selinux/config
reboot
查看IP地址配置详情
查看路由表条目
route -n
查看SELinux状态
sestatus
3、子域DNS服务器配置
基础网络配置
nmcli connection modify ens160 ipv4.method manual ipv4.addresses 192.168.20.10/24 ipv4.dns 192.168.10.1 +ipv4.dns 192.168.10.2 ipv4.routes "192.168.10.0/24 192.168.20.20"
nmcli connection add con-name ens224 ifname ens224 type ethernet ipv4.method manual ipv4.addresses 192.168.30.1/24 ipv4.dns 192.168.10.1 +ipv4.dns 192.168.10.2 ipv4.routes "192.168.40.0/24 192.168.30.2"
nmcli connection up ens160
nmcli connection up ens224
开启路由转发
echo net.ipv4.ip_forward=1 >> /etc/sysctl.conf
sysctl -p # 立即生效路由配置
关闭SELinux
sed -i 's/enforcing/disabled/g' /etc/selinux/config
reboot
查看IP地址配置详情
查看路由条目
route -n
查看SELinux状态
sestatus
4、缓存DNS服务器配置
基础网络配置
nmcli connection modify ens160 ipv4.method manual ipv4.addresses 192.168.30.2/24 ipv4.dns 192.168.10.1 +ipv4.dns 192.168.10.2 ipv4.routes "0.0.0.0/0 192.168.30.1"
nmcli connection add con-name ens224 ifname ens224 type ethernet ipv4.method manual ipv4.addresses 192.168.40.1/24 ipv4.dns 192.168.10.1 +ipv4.dns 192.168.10.2
nmcli connection up ens160
nmcli connection up ens224
开启路由转发
echo net.ipv4.ip_forward=1 >> /etc/sysctl.conf
sysctl -p # 立即生效路由配置
关闭SELinux
sed -i 's/enforcing/disabled/g' /etc/selinux/config
reboot
查看IP地址配置详情
查看路由条目
route -n
查看SELinux状态
sestatus
5、测试客户机配置
基础网络配置
nmcli connection modify ens160 ipv4.method manual ipv4.addresses 192.168.40.2/24 ipv4.dns 192.168.10.1 +ipv4.dns 192.168.10.2 ipv4.routes "0.0.0.0/0 192.168.40.1"
nmcli connection up ens160
关闭SELinux
sed -i 's/enforcing/disabled/g' /etc/selinux/config
reboot
查看IP地址配置详情
查看路由条目
route -n
查看SELinux状态
sestatus
6、在客户机上测试网络联通性
使用PING命令测试网络连通性
ping 192.168.10.1 -c3
ping 192.168.20.20 -c3
ping 192.168.30.1 -c3
ping 192.168.40.1 -c3
三、主DNS服务器配置
1、配置yum本地源
新建挂载目录,挂载映像文件
mkdir /mnt/cdrom
mount /dev/cdrom /mnt/cdrom
vim /etc/yum.repos.d/dvd.repo
# 写入下列内容
[BaseOS]
name=BaseOS
baseurl=file:///mnt/cdrom/BaseOS
enabled=1
gpgcheck=0
[AppStream]
name=AppStream
baseurl=file:///mnt/cdrom/AppStream
enabled=1
gpgcheck=0
更新软件源的缓存
dnf makecache
将挂载加入开机自动挂载
vim /etc/fstab
# 追加一行
/dev/cdrom /mnt/cdrom iso9660 defaults 0 0
2、安装BIND
安装DNS服务软件-bind
dnf -y install bind
3、编辑全局配置文件
编辑全局配置文件
vim /etc/named.conf
修改以下内容
listen-on port 53 { any; };
listen-on-v6 port 53 { any; };
allow-query { any; };
dnssec-validation no;
4、编辑区域配置文件
编辑配置文件,添加meaauf.com和gz.meaauf.com区域
vim /etc/named.rfc1912.zones
# 在文件末尾添加以下内容
zone "meaauf.com" IN {
type master;
file "meaauf.cn.zone";
};
zone "gz.meaauf.com" IN {
type master;
file "gz.meaauf.cn.zone";
};
zone "10.168.192.in-addr.arpa" IN {
type master;
file "meaauf.cn.ref";
};
5、构建正反向解析区域配置文件
新建meauf.cn正向查询区域配置文件
cp -p /var/named/named.localhost /var/named/meaauf.cn.zone
vim /var/named/meaauf.cn.zone
修改为以下内容
$TTL 1D
@ IN SOA @ rname.invalid. (
0 ; serial
1D ; refresh
1H ; retry
1W ; expire
3H ) ; minimum
NS @
A 192.168.10.1
dns A 192.168.10.1
新建gz.meauf.cn正向查询区域配置文件
cp -p /var/named/named.localhost /var/named/gz.meaauf.cn.zone
vim /var/named/gz.meaauf.com.zone
修改为以下内容
$TTL 1D
@ IN SOA @ rname.invalid. (
0 ; serial
1D ; refresh
1H ; retry
1W ; expire
3H ) ; minimum
NS @
A 192.168.10.1
dns A 192.168.10.2
www A 192.168.10.3
web CNAME www.gz.meaauf.cn.
mail A 192.168.10.4
gz.meaauf.cn. MX 1 192.168.10.4
新建反向查询区域配置文件
cp -p /var/named/named.loopback /var/named/meaauf.cn.ref
vim /var/named/meaauf.cn.ref
修改为以下内容
$TTL 1D
@ IN SOA @ rname.invalid. (
0 ; serial
1D ; refresh
1H ; retry
1W ; expire
3H ) ; minimum
NS @
A 192.168.10.1
1 PTR dns.meaauf.cn.
2 PTR dns.gz.meaauf.cn.
3 PTR www.gz.meaauf.cn.
4 PTR mail.gz.meaauf.cn.
@ MX 1 gz.meaauf.cn.
启动DNS服务并加入开机自启,调整防火墙规则
systemctl enable --now named.service
firewalld-cmd --add-service=dns --permanent
firewalld-cmd --reload
6、使用nslookup测试
如果出现文件配置没有问题,但是解析不出结果:可以尝试删除对应区域解析文件,重新复制重新编写
使用nslookup测试
nslookup
> dns.meaauf.cn
> www.gz.meaauf.cn
> 192.168.10.2
> 192.168.10.3
> set type=MX
> gz.meaauf.cn
四、子域DNS服务器配置
1、配置yum本地源
新建挂载目录,挂载映像文件
mkdir /mnt/cdrom;
mount /dev/cdrom /mnt/cdrom;
vim /etc/yum.repos.d/dvd.repo;
# 写入下列内容
[BaseOS]
name=BaseOS
baseurl=file:///mnt/cdrom/BaseOS
enabled=1
gpgcheck=0
[AppStream]
name=AppStream
baseurl=file:///mnt/cdrom/AppStream
enabled=1
gpgcheck=0
更新软件源的缓存
dnf makecache
将挂载加入开机自动挂载
vim /etc/fstab
# 追加一行
/dev/cdrom /mnt/cdrom iso9660 defaults 0 0
2、安装BIND
安装DNS服务软件-bind
dnf -y install bind
3、编辑全局配置文件
编辑全局配置文件
vim /etc/named.conf
修改以下内容
listen-on port 53 { any; };
listen-on-v6 port 53 { any; };
allow-query { any; };
dnssec-validation no;
4、子域服务器添正反解析区域
委派区域比较抽象,概念性很强,需要理清配置顺序
- 在子域中创建 bj.meaauf.cn 正向和反向解析区域
主DNS服务器上创建bj.meaauf.cn区域的委派解析
vim /etc/named.rfc1912.zones
# 追加下列内容
zone "bj.meaauf.cn" IN {
type master;
file "bj.meaauf.cn.zone";
};
zone "20.168.192.in-addr.arpa" IN {
type master;
file "bj.meaauf.cn.ref";
};
5、子域DNS构建正反向解析区域配置文件
新建正向查询区域配置文件
cp -p /var/named/named.localhost /var/named/bj.meaauf.cn.zone
vim /var/named/bj.meaauf.cn.zone
写入下列内容
$TTL 1D
@ IN SOA @ rname.invalid. (
0 ; serial
1D ; refresh
1H ; retry
1W ; expire
3H ) ; minimum
NS @
A 192.168.20.10
dns A 192.168.20.10
www A 192.168.20.11
mail A 192.168.20.12
web CNAME www.bj.meaauf.cn.
@ MX 3 192.168.20.12
新建反向查询区域配置文件
cp -p /var/named/named.loopback /var/named/bj.meaauf.cn.ref
vim /var/named/bj.meaauf.cn.ref
写入下列内容
$TTL 1D
@ IN SOA @ rname.invalid. (
0 ; serial
1D ; refresh
1H ; retry
1W ; expire
3H ) ; minimum
NS @
A 192.168.20.10
10 PTR dns.bj.meaauf.cn.
11 PTR www.bj.meaauf.cn.
12 PTR mail.bj.meaauf.cn.
@ MX 3 bj.meaauf.cn.
启动DNS服务并加入开机自启,调整防火墙规则
systemctl enable --now named.service
firewalld-cmd --add-service=dns --permanent
firewalld-cmd --reload
6、使用客户机测试
将客户机的DNS指向子域DNS服务器
nmcli connection modify ens160 ipv4.dns 192.168.20.10
nmcli connection up ens160
使用nslookup测试
nslookup
> dns.bj.meaauf.cn
> www.bj.meaauf.cn
> 192.168.20.11
> 192.168.20.12
> set type=MX
> bj.meaauf.cn
如果能顺利解析,则证明DNS的配置没有问题,在做完委派后如果解析不成功,则是委派的问题。
7、在父域建立与子域的连接
主DNS服务器上创建委派区域正向解析记录
vim /var/named/meaauf.cn.zone
# 追加两条记录
bj.meaauf.cn. NS dns.bj.meaauf.cn.
# 指定委派区域bj.meaauf.cn管理工作由域名服务器dns.bj.meaauf.cn负责
dns.bj.meaauf.cn. A 192.168.20.10
# 添加域名服务器dns.bj.meaauf.cn的A记录,定位子域bj.meaauf.cn所在位置
在主DNS服务器上所有的DNS反向解析区域都是192.168.10.x网段的,而委派解析的网段都是192.168.20.x,我们需要先建立20.x网段的反向解析区域
编辑主DNS服务器的区域配置文件
vim /etc/named.rfc1912.zones
# 在文件末尾追加以下内容
zone "20.168.192.in-addr.arpa" IN {
type master;
file "bj.meaauf.cn.ref";
};
在主DNS服务器上添加一个反向区域解析文件
cp -p /var/named/named.loopback /var/named/bj.meaauf.cn.ref
vim /var/named/bj.meaauf.cn.ref
修改为以下内容
$TTL 1D
@ IN SOA @ rname.invalid. (
0 ; serial
1D ; refresh
1H ; retry
1W ; expire
3H ) ; minimum
NS @
A 192.168.10.1
10 NS dns.bj.meaauf.cn.
11 NS dns.bj.meaauf.cn.
12 NS dns.bj.meaauf.cn.
13 NS dns.bj.meaauf.cn.
重新启动DNS服务
systemctl restart named.service
8、在子域建立与父域的连接
修改子域DNS服务器bj.meaauf.cn正向解析区域文件
vim /var/named/bj.meaauf.cn.zone
修改原有的NS记录
bj.meaauf.cn. NS dns.bj.meaauf.cn.
重启DNS服务
systemctl restart named.service
9、使用客户机测试
将客户机的DNS重新指向主DNS服务器
nmcli connection modfiy ens160 ipv4.dns 192.168.10.1
nmcli connection up ens160
nslookup
> dns.bj.meaauf.cn
> www.bj.meaauf.cn
> web.bj.meaauf.cn
> 192.168.20.11
> 192.168.20.12
> set type=MX
> bj.meaauf.cn
五、辅助DNS服务器配置
1、配置yum本地源
新建挂载目录,挂载映像文件
mkdir /mnt/cdrom
mount /dev/cdrom /mnt/cdrom
vim /etc/yum.repos.d/dvd.repo
# 写入下列内容
[BaseOS]
name=BaseOS
baseurl=file:///mnt/cdrom/BaseOS
enabled=1
gpgcheck=0
[AppStream]
name=AppStream
baseurl=file:///mnt/cdrom/AppStream
enabled=1
gpgcheck=0
更新软件源的缓存
dnf makecache
将挂载加入开机自动挂载
vim /etc/fstab
# 追加一行
/dev/cdrom /mnt/cdrom iso9660 defaults 0 0
2、安装BIND
安装DNS服务软件-bind
dnf -y install bind
3、编辑全局配置文件
编辑全局配置文件
vim /etc/named.conf
修改以下内容
listen-on port 53 { any; };
listen-on-v6 port 53 { any; };
allow-query { any; };
dnssec-validation no;
4、编辑区域配置文件
编辑配置文件
vim /etc/named.rfc1912.zones
添加以下内容
zone "meaauf.cn" IN {
type slave;
file "slaves/meaauf.cn.zone";
masters { 192.168.10.1; };
};
zone "gz.meaauf.cn" IN {
type slave;
file "slaves/gz.meaauf.cn.zone";
masters { 192.168.10.1; };
};
zone "bj.meaauf.cn" IN {
type slave;
file "slaves/bj.meaauf.cn.zone";
masters { 192.168.20.10; };
};
zone "10.168.192.in-addr.arpa" IN {
type slave;
file "slaves/meaauf.cn.ref";
masters { 192.168.10.1; };
};
zone "20.168.192.in-addr.arpa" IN {
type slave;
file "slaves/bj.meaauf.cn.ref";
masters { 192.168.20.10; };
};
5、启动服务并查看区域传送效果
启动DNS服务并加入开机自启,调整防火墙规则
systemctl enable --now named.service
firewalld-cmd --add-service=dns --permanent
firewalld-cmd --reload
在开启服务后可以看到区域传送的结果,通过查看/var/named/slaves目录
ll /var/named/slaves
六、子域DNS服务器作辅助DNS服务器
编辑区域配置文件
vim /etc/named.rfc1912.zones
添加对应的正向区域和反向区域
zone "meaauf.cn" IN {
type slave; # 类型为:slave
file "slaves/meaauf.cn.zone"; # 区域文件存储位置
masters { 192.168.10.1; }; # 主DNS服务器地址
};
zone "10.168.192.in-addr.arpa" IN {
type slave;
file "slaves/meaauf.cn.ref";
masters { 192.168.10.1; };
};
zone "gz.meaauf.cn" IN {
type slave;
file "slaves/gz.meaauf.cn.zone";
masters { 192.168.10.1; };
};
重启DNS服务
systemctl restart named.service
查看/var/slaves目录下,可以看到区域传送过来的区域文件
ll /var/named/slaves
七、缓存DNS服务器配置
1、配置yum本地源
新建挂载目录,挂载映像文件
mkdir /mnt/cdrom
mount /dev/cdrom /mnt/cdrom
vim /etc/yum.repos.d/dvd.repo
# 写入下列内容
[BaseOS]
name=BaseOS
baseurl=file:///mnt/cdrom/BaseOS
enabled=1
gpgcheck=0
[AppStream]
name=AppStream
baseurl=file:///mnt/cdrom/AppStream
enabled=1
gpgcheck=0
更新软件源的缓存
dnf makecache
将挂载加入开机自动挂载
vim /etc/fstab
# 追加一行
/dev/cdrom /mnt/cdrom iso9660 defaults 0 0
2、安装unbound
安装DNS服务软件-unbound
dnf -y install unbound
3、编辑主配置文件
编辑主配置文件
vim /etc/unbound/unbound.conf
修改基础参数信息
interface: 0.0.0.0 # 侦听所有IPv4网络接口
interface: ::0 # 侦听所有IPv6网络接口
access-control: 0.0.0.0/0 allow # 允许IPv4客户端发送递归查询
access-control: ::0/0 allow # 允许IPv6客户端发送递归查询
设置为完全转发缓存DNS服务器,添加转发域
forward-zone:
name: "." # 转发所有查询
forward-addr: 192.168.10.1 # 指定转发到哪一台DNS服务器
指定不需要进行DNSSEC(Domain Name System Security Extensions)验证的域名
domain-insecure: "meaauf.cn" # 禁用特定未签名区域的DNSSEC验证
检查配置文件语法
unbound-checkconf
启动DNS服务并加入开机自启,调整防火墙规则
systemctl enable --now unbound.service
firewalld-cmd --add-service=dns --permanent
firewalld-cmd --reload
八、客户机测试
修改DNS一共有三种方式
- 使用nmcli命令修改DNS指向
- 修改/etc/resolv.conf文件
- 修改网卡配置文件
1、客户机DNS指向主DNS服务器
在上面配置网络信息时,已经预先将DNS指向主DNS服务器
验证meaauf.cn域
nslookup
> dns.meaauf.cn
> 192.168.10.1
验证gz.meaauf.cn域
nslookup
> dns.gz.meaauf.cn
> www.gz.meaauf.cn
> web.gz.meaauf.cn
> mail.gz.meaauf.cn
> 192.168.10.2
> 192.168.10.3
> set type=MX
> gz.meaauf.cn
验证bj.meaauf.cn域
nslookup
> dns.bj.meaauf.cn
> www.bj.meaauf.cn
> mail.bj.meaauf.cn
> 192.168.20.10
> 192.168.20.11
> set type=MX
> bj.meaauf.cn
2、客户机DNS指向辅助DNS服务器
修改DNS指向
nmcli connection modify ens160 ipv4.dns 192.168.10.2
nmcli connection up ens160
验证meaauf.cn域
nslookup
> dns.meaauf.cn
> 192.168.10.1
验证gz.meaauf.cn域
nslookup
> dns.gz.meaauf.cn
> www.gz.meaauf.cn
> web.gz.meaauf.cn
> mail.gz.meaauf.cn
> 192.168.10.2
> 192.168.10.3
> set type=MX
> gz.meaauf.cn
验证bj.meaauf.cn域
nslookup
> dns.bj.meaauf.cn
> www.bj.meaauf.cn
> mail.bj.meaauf.cn
> 192.168.20.11
> 192.168.20.12
> set type=MX
> gz.meaauf.cn
3、客户机DNS指向缓存DNS服务器
修改DNS指向
vim /etc/NetworkManager/system-connections/ens160.nmconnection
# 修改下列选项
dns=192.168.40.1;
重新读取网卡配置文件,启用网卡连接
nmcli connection reload
nmcli connection up ens160
验证meaauf.cn域
nslookup
> dns.meaauf.cn
验证gz.meaauf.cn域
nslookup
> dns.gz.meaauf.cn
> www.gz.meaauf.cn
> web.gz.meaauf.cn
> mail.gz.meaauf.cn
> set type=MX
> gz.meaauf.cn
验证bj.meaauf.cn域
nslookup
> dns.bj.meaauf.cn
> www.bj.meaauf.cn
> mail.bj.meaauf.cn
> set type=MX
> gz.meaauf.cn