一、实验环境
1、BIND软件包介绍
BIND软件是一款开放源码的DNS服务器软件,由美国加州大学Berkeley分校开发和维护,全称为Berkeley Internet Name Domain。该软件在DNS(域名系统)领域具有重要地位,是目前世界上使用最为广泛的DNS服务器软件之一
- 主服务器程序:named.service
- 全局配置文件:/etc/named.conf
- 区域配置文件:/etc/named.rfc1912.zones
- 正向区域模板文件:/var/named/named.localhost
- 反向区域模板文件:/var/named/named.loopback
- 区域解析文件默认存放目录:/var/named/
- 配置文件语法验证命令:/usr/sbin/named.checkconf
2、全局配置文件解析
全局配置文件named.conf位于/etc/目录下
options {listen-on port 53 { 127.0.0.1; };		# 指定bind侦听的端口和IPlisten-on-v6 port 53 { ::1; };			# 指定bind侦听的端口和IPv6directory 	"/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";secroots-file	"/var/named/data/named.secroots";recursing-file	"/var/named/data/named.recursing";allow-query     { localhost; };			# 允许发起查询的主机recursion yes;							# 启用递归查询dnssec-validation yes;					# 启用DNSSEC验证managed-keys-directory "/var/named/dynamic";geoip-directory "/usr/share/GeoIP";pid-file "/run/named/named.pid";session-keyfile "/run/named/session.key";include "/etc/crypto-policies/back-ends/bind.config";
};logging {							# 日志channel default_debug {file "data/named.run";severity dynamic;};
};zone "." IN {					# 根区域type hint;					file "named.ca";
};include "/etc/named.rfc1912.zones";
include "/etc/named.root.key";
3、区域配置文件解析
区域配置文件named.rfc1912.zones位于/etc/目录下
。。。略。。。
zone "localhost" IN {				# 正向查找区域type master;					# 区域类型:主要区域file "named.localhost";			# 区域数据文件所在路径allow-update { none; };			# 不允许任何主机或网络更新区域数据
};。。。略。。。zone "0.in-addr.arpa" IN {			# 反向查找区域type master;					# 区域类型:主要区域file "named.empty";				# 区域数据文件所在路径allow-update { none; };			# 不允许任何主机或网络更新区域数据
};
4、拓扑及需求
| 正向记录 | 反向记录 | 资源记录 | 
|---|---|---|
| dns.meaauf.com | 192.168.10.1 | A/PTR | 
| www.meaauf.com | 192.168.10.2 | A/PTR | 
| web.meaauf.com | www.meaauf.com | CNAME | 
| mail.meaauf.com | 1921.68.10.3 | MX,10 | 

二、主DNS服务器配置
1、地址信息配置
配置IP地址
nmcli connection modify ens160 ipv4.method manual ipv4.addresses 192.168.10.1/24 ipv4.dns 192.168.10.1
nmcli connection up ens160
查看IP地址信息及DNS
ip add show ens160
cat /etc/reslov.conf

2、YUM本地源配置
可以查看【RedHat9 | DNF/YUM仓库管理软件包】
3、关闭SELinux
修改配置文件以达到永久关闭
vim /etc/selinux/config
修改内容
SELINUX=disabled

重启生效
reboot
查看重启后SELinux的状态
sestatus

4、安装BIND9
安装BIND9
dnf -y install bind
5、修改全局配置文件
编辑全局配置文件
vim /etc/named.conf
修改以下内容
listen-on port 53 { any; };
listen-on-v6 port 53 { any; };
allow-query { any; };
dnssec-validation no;

 
检查配置文件语法
named-checkconf
6、修改区域配置文件
编辑区域配置文件
vim /etc/named.rfc1912.zones
添加正向区域和反向区域
zone "meaauf.com" IN {type master;file "meaauf.com.zone";allow-update { none; };
};
zone "10.168.192.in-addr.arpa" IN {type master;file "meaauf.com.ref";allow-update { none; };
};
7、新建正反区域解析文件
复制正向区域解析模板
cp -p /var/named/named.localhost /var/named/meaauf.com.zone
复制反向区域解析模板
cp -p /var/named/named.loopback /var/named/meaauf.com.ref
编辑正向解析区域文件
vim /var/named/meaauf.com.zone
修改为以下内容
$TTL 1D
@       IN SOA  @ rname.invalid. (0       ; serial1D      ; refresh1H      ; retry1W      ; expire3H )    ; minimumNS      @A       192.168.10.1
dns     A       192.168.10.1
www     A       192.168.10.2
web     CNAME   www.meaauf.com.
mail    A       192.168.10.3
@       MX      10      192.168.10.3
编辑反向解析区域文件
vim /var/named/meaauf.com.ref
修改为以下内容
$TTL 1D
@       IN SOA  @ rname.invalid. (0       ; serial1D      ; refresh1H      ; retry1W      ; expire3H )    ; minimumNS      @A       192.168.10.1
1       PTR     dns.meaauf.com.
2       PTR     www.meaauf.com.
3       PTR     mail.meaauf.com.
@       MX      10      mail.meaauf.com.
8、启用DNS服务
启动DNS服务并加入开机自启
systemctl enable --now named.service
调整防火墙策略
firewalld-cmd --add-service=dns --permanent
firrwalld-cmd --reload
三、测试客户端配置
1、地址信息配置
配置IP地址
nmcli connection modify ens160 ipv4.method manual ipv4.addresses 192.168.10.10/24 ipv4.dns 192.168.10.1
nmcli connection up ens160
查看IP地址信息及DNS
ip add show ens160
cat /etc/reslov.conf

2、关闭SELinux
修改配置文件以达到永久关闭
vim /etc/selinux/config
修改内容
SELINUX=disabled

重启生效
reboot
查看重启后SELinux的状态
sestatus

3、使用nslookup测试
正向解析
nslookup
> dns.meaauf.com
> www.meaauf.com
> web.meaauf.com
> mail.meaauf.com

反向解析
nslookup
> 192.168.10.1
> 192.168.10.2
> 192.168.10.3

邮件记录解析
nslookup
> set type=MX
> meaauf.com
