DNS的正向、反向解析的服务配置知识点及实验
概述:DNS称域名解析协议:本质就是一个翻译机,url(俗称网址,用于定位和访问互联网上的资源)翻译成机器路由可以查找的IP地址。连接方式通常是互联网,Internet进行连接。
一、域名

域名分为以下五种:
1、顶级域名划分:
根据性质划分:com企业 org 组织 gov政府 edu教育
根据国家划分:cn中国 jp日本 uk 英国 us美国
通用域名划分:net,xyz,top,online,com.cn
2、根域名服务器 : 根域名服务器负责告诉用户哪些服务器 管理 .com .xyz .net ....
3、顶级域名服务器 : 管理相应的顶级域名下知道xxx.com是哪他台服务器管理
4、权威域名服务器: 管理完整域名的解析。
5、本地域名服务器:114.114.114.114 8.8.8.8 235.3.3.4
二、DNS解析过程

三、搭建DNS域名解析服务器
1、安装
命令:yum/dnf install bind -y
2、配置文件
# dns服务器全局设置
options {listen-on port 53 { 127.0.0.1; }; #重要: ipv4监听地址listen-on-v6 port 53 { ::1; }; # ipv6 监听地址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"; # 内存分析文件secroots-file "/var/named/data/named.secroots"; # 安全根域名文件recursing-file "/var/named/data/named.recursing";allow-query { 172.25.254.200; };# 重要:决定那些地址可以来获取dns解析服务recursion yes; # 重要 yes:递归查询 no:迭代查询dnssec-validation yes; # 是否开启加密传输,使用默认即可managed-keys-directory "/var/named/dynamic"; # dns密钥保存位置geoip-directory "/usr/share/GeoIP";pid-file "/run/named/named.pid"; # pid保存在该文件中session-keyfile "/run/named/session.key"; # 通信密钥}logging {channel default_debug {file "data/named.run"; #日志保存的文件severity dynamic; # 日志级别};};3、配置区域信息文件
进入/etc/named.rfc1912.zones(声明文件)配置想要配置的文件
4、进入etc/named(数据文件)
[root@server named]# ls
data dynamic named.ca named.empty
named.localhost # 正向解析的模版配置文件
named.loopback # 反向解析的模版配置文件
slavesnamed.localhost(正向解析)模版说明
$TTL 1D # 生存时间
@ IN SOA @ rname.invalid. (0 ; serial # 序列号1D ; refresh # 刷新时间1天1H ; retry # 重新连接间隔 1小时1W ; expire # 过期 1 周3H ) ; minimum # 缓存3小时
# 权威域名解析服务器NS ns.xxxx.com
mail.xxx.com A 127.0.0.1
image.xxx.com AAAA ::1# @ 当前的区域名称 xxx.com
# IN internet
# SOA 开始的授权记录
# rname.invalid. :管理员的邮箱named.loopback(反向解析)模板说明
#反向区域文件 [root@localhost ~]# vim /var/named/named.172.24.8 $TTL 1D @ IN SOA ns.baidu.com. admin.baidu.com. ( 0 1D 1H 1W 3H )IN NS ns.baidu.com. 128 IN PTR ns.baidu.com. 128 IN PTR www.baidu.com. 128 IN PTR mail.baidu.com. 128 IN PTR ftp.baidu.com. #反解需要注意:主机名尽量使用完整的FQDN,即要写上“.”
四、正向解析的实验配置
在server 服务器上去配置
1、配置主配置文件/etc/named.conf
命令:
vim /etc/named.conf进入后仅用配置第11行与19行即可。如同所示:

2、配置/etc/named.rfc1912.zones(声明文件)
命令:
vim /etc/named.rfc1912.zones进入后配置自己想要配置的文件即可。如下所示:
zone"openlab.com"IN{type masterfile"openlab.com.zone";allow-update{none;};
};3、配置/var/named(数据文件)
cd /var/named复制named.localhost中归属组、权限、内容一并给自己要配置的文件
cp -a named.localhost openlab.come.zones而后进入要配置的文件中去修改
vim openlab.com.zone配置地址可随意,具体如图:

配置完成后记得重启系统
systemctl restart named.service在client客户端去验证
4、
五、反向解析的实验配置
在server服务器上进行配置
1、基于正向解析的配置所以不用配置/etc/named.conf的主配置文件。直接
去/etc/named.rfc1912.zones文件中进行配置。
vim /etc/named.rfc1912.zones
zone "108.168.192.in-addr.arpa" IN { #双引号内的反向解析的区域名type master;file "192.168.108.arpa";#反向解析的文件/var/named/172.25.254.arpaallow-update { none; };
};进行以上修改就可以
2、进入/var/named文件中进行数据配置文件如下:
vim 192.168.108.arpa
而后重启

在client中进行测试
3、查看是否正确

六、主从服务器的配置
1、基于dns的正向、反向解析的配置
命令:
# 1.配置主服务器 修改声明文件,将正向和反向声明做转发处理,转发给从服务器
vim /etc/named.rfc1912.zonese
######
zone "openlab.com" IN {type master;file "openlab.com.zone";allow-transfer{192.168.108.101;}; # 允许转发给从服务器
};
.....
zone "108.168.192.in-addr.arpa" IN {type master;file "192.168.108.arpa";allow-transfer { 172.25.254.101; };
};
####### 2.配置从服务器
# 2.1关闭防火墙
systemctl disable --now firewalld
setenforce 0# 2.2修改/etc/named.conf
vim /etc/named.conf
#########
listen-on port 53 { any; };
allow-query { any; };
########## 2.3修改/etc/named.rfc1912.zones
vim /etc/named.rfc19212.zones
#########
zone "openlab.com" IN {type slave; # 身份为从服务器masters {192.168.108.100;}; # 从服务器的主为 192.168.108.100file "slaves/openlab.com.zone"; # 从服务器的区域数据文件保存位置
};zone "108.168.192.in-addr.arpa" IN {type slave;masters {192.168.108.100;};file "slaves/172.25.254.arpa";
};
######### 3.两边都重启服务
systemctl restart named# 4.将主从ip写到客户端的dns中,然后使用nslookup 进行正反向解析测试
nmcli connection modify ens160 +ipv4.dns 192.168.108.101
nmcli connection up ens160# 主从都在线时 使用主进行解析
[root@client ~]# nslookup bbs.openlab.com
Server: 192.168.108.100
Address: 192.168.108.100#53Name: bbs.openlab.com
Address: 192.168.108.101# 当将主强制下线后 从进行解析
[root@client ~]# nslookup bbs.openlab.com
Server: 192.168.108.101
Address: 192.168.108.101#53Name: bbs.openlab.com
Address: 192.168.108.101[root@client ~]# nslookup 192.168.108.101
101.108.168.192.in-addr.arpa name = www.openlab.com.2、client中进行测试即可
想要然从服务器启动,那就让主服务器关机

