第十四章、DNS域名解析服务
1、DNS系统的作用
1.1 正向解析 ——根据域名查找对应的IP地址
1.2 反向解析——根据IP地址查找对应的域名
1.3 DNS系统的分布式数据结构
1.3.1 示例:南京大学 https://www.nju.edu.cn.
①根.——根域名DNS服务器:专门负责根域名
②一级DNS服务器:专门负责一级域名的解析(一般代表一种类型的组织机构或国家地区)
.com(工商企业)
.net(网络供应商)
.edu(教育机构)
.cn(中国国家域名)
.orq(团体组织)
.gov(政府部门)
③二级DNS服务器:专门负责二级域名的解析
.net.cn
.edu.cn
.com.cn
④子域名DNS服务器:专门负责子域名的解
.sina.com.cn
.pku.edu.cn
⑤主机站点
mail
www
1.3.2 服务器找寻IP——域名映射关系
① 优先找缓存
② 看DNS配置
/etc/reolv.conf
/etc/hosts——优先级最高
ifcfg-ens33——DNS1
③ 就近原则,找最近的DNS服务器(外部)
④ 迭代和递归过程
先找就近的根域服务器
根据迭代和递归的方式,然后找顶级域DNS服务器.cn
找二级域DNS服务器.com.cn
找子域DNS服务器.sina.com.cn
找主机名DNS服务器12.12.12.12
得到解析结果,返回给客户端
⑤将解析记录保存在缓存中
⑥获取到域名——IP解析内容
2、DNS系统类型
2.1、缓存域名服务器
2.1.1 也称为DNS高速缓存服务器
2.1.2 通过向其他域名服务器查询获得域名 ->IP地址记录
2.1.3 将域名查询结果缓存到本地,提高重复查询时的速度
2.2 主域名服务器
2.2.1 特定DNS区域的权威服务器,具有唯一性
2.2.2 负责维护该区域内所有域名->IP地址的映射记录
2.2.3 需要自行建立所负责区域的地址数据文件
2.3 从域名服务器
2.3.1 也称为辅助域名服务器,是对主域名服务器的热备份
2.3.2 其维护的域名->IP地址记录来源于主域名服务器
2.3.3 需要从主域名服务器自动同步区域地址数据库
3、实验准备
3.1 实验环境:
2台机器
centos DNS服务端 192.168.110.11
windows 10 DNS客户端 192.168.110.15
3.2 网络环境:
3.2.1 Vmnet8(NAT模式)——两台机器都是.
3.2.2 Vmware workstation 的虚拟网络编辑器中的DHCP功能必须关闭
3.2.3 确定好Vmnet8 NAT模式的IP地址段是多少
3.2.4 确保服务端能ping通百度,客户端能ping通服务端
3.2.5 客户端的默认网卡为服务端的IP地址
3.3 系统环境:
3.3.1 先安装好bind服务
3.3.3 每台机器,关闭防火墙、核心防护
4、 操作步骤
4.1 安装bind软件包
[root@xiaolei ~]# yum install -y bind
4.2 查询bind软件主要配置文件
[root@xiaolei ~]# rpm -qc bind
/etc/logrotate.d/named
/etc/named.conf ###主配置文件 控制系统全局
/etc/named.iscdlv.key
/etc/named.rfc1912.zones ###区域配置文件 控制具体单个区域
/etc/named.root.key
/etc/rndc.conf
/etc/rndc.key
/etc/sysconfig/named
/var/named/named.ca
/var/named/named.empty
/var/named/named.localhost ###区域数据配置文件 区域信息
/var/named/named.loopback
4.3 修改主要配置文件
[root@xiaolei ~]# vim /etc/named.conf
…………
options {
listen-on port 53 { 192.168.110.11; }; ###监听53端口,ip地址使用服务端本 地IP,也可用any表示所有
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"; ###内存统计 文件的位置
recursing-file "/var/named/data/named.recursing";
secroots-file "/var/named/data/named.secroots";
allow-query { any; }; ###允许使用本DNS解析服务的网段,也可用any代表所有
…………
zone "." IN { ###正向解析“."根区域
type hint; ###类型为根区域
file "named.ca"; ###区域数据文件为named.ca,记录了13台根域服务 器的域名和IP地址等信息
};
include "/etc/named.rfc1912.zones"; ###包含区域配置文件里的所有配置
include "/etc/named.root.key";
4.3 修改区域配置文件,添加正向区域配置
[root@xiaolei ~]# vim /etc/named.rfc1912.zones
…………
zone "0.in-addr.arpa" IN {
type master;
file "named.empty";
allow-update { none; };
}; ###将此模版5yy复制,p粘贴修改
zone "niuma.com" IN { ###正向解析"niuma.com"区域
type master; ###类型为主区域
file "niuma.com.zone"; ###指定区域数据文件为niuma.com.zone
allow-update { none; };
};
4.4 配置正向区域数据文件
[root@xiaolei ~]# cd /var/named/
[root@xiaolei named]# ls
data named.ca named.localhost slaves
dynamic named.empty named.loopback
[root@xiaolei named]# cp -p named.localhost niuma.com.zone ###保留源文件的权限和 属主的属性复制
[root@xiaolei named]# ls
data named.ca named.localhost niuma.com.zone
dynamic named.empty named.loopback slaves
[root@xiaolei ~]# vim /var/named/niuma.com.zone
$TTL 1D
@ IN SOA niuma.com. rname.invalid. (
0 ; serial
1D ; refresh
1H ; retry
1W ; expire
3H ) ; minimum
NS niuma.com.
A 192.168.110.11
www IN A 192.168.110.21
ftp IN CNAME www
* IN A 192.168.110.21
~
$TTL 1D——有效解析记录的生存周期
@——是一个变量,表示当前的DNS区域名
IN——表示internet
SOA记录(Start of Authority)——标识区域的起点,并包含有关区域的管理信息,如主服务器地址、管理员邮箱、序列号等。
NS——记录当前区域的DNS服务器的名称
A——记录主机的IP地址
CNAME——使用别名,ftp 是www的别名
*——泛域名解析,代表任意主机名
4.5 启动服务,关闭防火墙
[root@xiaolei ~]# systemctl start named
[root@xiaolei ~]# [root@xiaolei ~]# systemctl stop firewalld
[root@xiaolei ~]# setenforce 0
4.6 在客户端的域名解析配置文件中添加DNS服务器地址
[root@xiaolei ~]# vi /etc/resolv .conf #修改完后立即生效
nameserver 192.168.80.10
或
vi /etc/sysconfig/network-scripts/ifcfg-ens33
#修改完后需要重启网卡
DNS1=192.168.80.10
systemctl restart network
4.7 测试DNS解析
C:\Users\WL>nslookup www.niuma.com
服务器: UnKnown
Address: 192.168.110.11
名称: www.niuma.com
Address: 192.168.110.21
C:\Users\WL>nslookup ftp.niuma.com
服务器: UnKnown
Address: 192.168.110.11
名称: www.niuma.com
Address: 192.168.110.21
Aliases: ftp.niuma.com
C:\Users\WL>nslookup ff.niuma.com
服务器: UnKnown
Address: 192.168.110.11
名称: ff.niuma.com
Address: 192.168.110.21
5、补充——DNS常见记录
5.1 A记录——正向解析,也称为主机记录,用于将域名映射到IPv4地址。这是最常用的DNS记录类型,用于将域名解析为对应的IP地址
5.2 SOA记录——起始授权机构记录,用于说明该区域的权威DNS服务器信息,包括主服务器、邮箱地址、刷新间隔、重试间隔、过期时间等。SOA记录是DNS区域的关键记录,用于维护区域的一致性
5.3 P记录——反向解析,用于将IP地址映射到对应的主机名,实现通过IP地址访问域名的效果
5.4 CNAME记录——别名记录,用于将一个域名映射到另一个域名,通常用于设置重定向或简化域名管理
5.5 AAAA记录——与A记录类似,但用于将域名映射到IPv6地址
IPv4地址。这是最常用的DNS记录类型,用于将域名解析为对应的IP地址
5.2 SOA记录——起始授权机构记录,用于说明该区域的权威DNS服务器信息,包括主服务器、邮箱地址、刷新间隔、重试间隔、过期时间等。SOA记录是DNS区域的关键记录,用于维护区域的一致性
5.3 P记录——反向解析,用于将IP地址映射到对应的主机名,实现通过IP地址访问域名的效果
5.4 CNAME记录——别名记录,用于将一个域名映射到另一个域名,通常用于设置重定向或简化域名管理
5.5 AAAA记录——与A记录类似,但用于将域名映射到IPv6地址