云计算百科
云计算领域专业知识百科平台

RHCE第六章:DNS域名解析服务器

一、DNS域名解析服务器

1.作用

正向解析:通过域名解析成IP地址访问服务

反向解析:通过IP地址解析成域名访问服务

2.连接方式

DNS使用53端口监听网络

3.域名服务器

根域名服务器:全球总计只有十三台服务器,记录所有顶级域名服务器地址(如:*.com,*.net,*.uk,*.cn······)

顶级域名服务器:记录所有权威域名服务器地址(如:*.baidu.com,*.taobao.com······)

权威域名服务器:记录所有区域内站点的IP地址(如:www.baidu.com,image.taobao.com·····)

本地域名服务器:缓存访问过的网站的域名信息。不属于域名服务器的层级结构

4.域名解析过程

(1)本地电脑先检查浏览器缓存

(2)本地电脑检查host配置文件

(3)本地电脑 向 本地DNS服务器 发起 DNS解析请求

(4)本地DNS服务器 向 根DNS服务器 发起 DNS解析请求

(5)根DNS服务器 向 本地DNS服务器 返回 顶级DNS服务器地址

(6)本地DNS服务器 向 顶级DNS服务器 发起 DNS解析请求

(7)顶级DNS服务器 向 本地DNS服务器 返回 NameServer服务器地址

(8)本地DNS服务器 向 NameServer服务器 发起 DNS解析请求

(9)NameServer服务器 向 本地DNS服务器 返回 正确的DNS解析结果

(10)本地DNS服务器 向 本地电脑 返回 正确的DNS解析结果

一般访问域名只用到前两步,如果本地电脑没有缓存,则继续后面八步。第二次访问时,电脑有缓存,则无需后面八步。

二、安装DNS服务

[root@Server ~]# dnf install dns -y 错误:没有任何匹配: dns

[root@Server ~]# dnf search dns        #如果不知道某个服务(如:DNS)软件包的名称,则可以去搜服务关键字(如:DNS) ······

bind.x86_64 : The Berkeley Internet Name Domain (BIND) DNS (Domain Name System)             : server        #我们要下载DNS服务器,就找服务(server)相关的信息,此时要下载的包名就是bind ······

[root@Server ~]# rpm -ql bind        #查看安装bind产生哪些文件,也可以查看服务名称 /etc/named.conf        #主配置文件 /etc/named.rfc1912.zones        #区域管理配置文件 /usr/lib/systemd/system/named.service        #要启动DNS的服务名称 /var/named        #详细的域名解析配置文件

[root@Server ~]# vim /etc/named.conf          10 options {        #DNS服务的选项设置          11     listen-on port 53 { 192.168.153.100; };        #监听ip。修改成监听自己虚拟服务器ip          12     listen-on-v6 port 53 { ::1; };        #ipv6监听          13     directory   "/var/named";        #DNS数据目录位置          14     dump-file   "/var/named/data/cache_dump.db";        #默认缓存文件位置          15     statistics-file "/var/named/data/named_stats.txt";        #DNS状态文件保存文件          16     memstatistics-file "/var/named/data/named_mem_stats.txt";        #内存状态文件保存文件          17     secroots-file   "/var/named/data/named.secroots";        #安全根服务器保存位置          18     recursing-file  "/var/named/data/named.recursing";        #递归查询文件保存位置          19     allow-query     { 192.168.153.0/24; };        #允许哪些客户端可以访问,可以写IP地址、网段和所有主机(any)

      // 20     forwards        {114.114.114.114;};        #高速缓存,转发

         31     recursion yes;        #允许递归查询,如果删除掉了就是迭代查询

         33     dnssec-validation yes;        #开启加密

         35     managed-keys-directory "/var/named/dynamic";        #指定目录中文件保存位置

         45 logging {        #日志配置          46         channel default_debug {          47                 file "data/named.run";          48                 severity dynamic;          49         };          50 };                    52 zone "." IN {        #区域管理配置          53     type hint;          54     file "named.ca";          55 };                    57 include "/etc/named.rfc1912.zones";        #引用到的子配置          58 include "/etc/named.root.key";

[root@Server ~]# systemctl stop firewalld.service        #关闭网络防火墙 [root@Server ~]# setenforce 0        #关闭内核防火墙 [root@Server ~]# systemctl restart named        #重启DNS服务

[root@Client ~]# nmcli connection modify ens160 ipv4.dns 192.168.153.100        #修改客户端的DNS,指向服务器ip,把服务器当做DNS服务器 [root@Client ~]# nmcli connection reload        #重新加载 [root@Client ~]# nmcli connection up ens160        #激活ens160

[root@Client ~]# ping www.taobao.com PING www.taobao.com.danuoyi.tbcache.com (58.255.173.203) 56(84) 比特的数据。 64 比特,来自 58.255.173.203 (58.255.173.203): icmp_seq=1 ttl=128 时间=31.2 毫秒 64 比特,来自 58.255.173.203 (58.255.173.203): icmp_seq=2 ttl=128 时间=29.6 毫秒 64 比特,来自 58.255.173.203 (58.255.173.203): icmp_seq=3 ttl=128 时间=30.5 毫秒 ^C — www.taobao.com.danuoyi.tbcache.com ping 统计 — 已发送 3 个包, 已接收 3 个包, 0% packet loss, time 2893ms rtt min/avg/max/mdev = 29.612/30.448/31.230/0.661 ms #访问到DNS服务器,解析域名

[root@Client ~]# dnf install bind-utils -y        #安装访问工具

[root@Client ~]# nslookup www.taobao.com        #nslookup查找(拉回) Server:         192.168.153.100 Address:        192.168.153.100#53

Non-authoritative answer: www.taobao.com  canonical name = www.taobao.com.danuoyi.tbcache.com. Name:   www.taobao.com.danuoyi.tbcache.com Address: 58.255.173.202 Name:   www.taobao.com.danuoyi.tbcache.com Address: 58.255.173.203 Name:   www.taobao.com.danuoyi.tbcache.com Address: 2408:8756:4cff:f00e:403::19 Name:   www.taobao.com.danuoyi.tbcache.com Address: 2408:8756:4cff:f00e:403::18

[root@Client ~]# dig www.taobao.com        #dig查找(挖)

······

;; ANSWER SECTION: www.taobao.com.         290     IN      CNAME   www.taobao.com.danuoyi.tbcache.com. www.taobao.com.danuoyi.tbcache.com. 46 IN A     58.255.173.202 www.taobao.com.danuoyi.tbcache.com. 46 IN A     58.255.173.203

;; Query time: 2 msec ;; SERVER: 192.168.153.100#53(192.168.153.100) ;; WHEN: Wed Apr 23 16:14:05 CST 2025 ;; MSG SIZE  rcvd: 151

[root@Client ~]# nmcli device show        #检查配置ip信息 IP4.DNS[1]:                             192.168.153.100

三、正向解析

(1)

[root@Server ~]# vim /etc/named.conf          10 options {        #DNS服务的选项设置          11     listen-on port 53 { 192.168.153.100; };        #监听自己虚拟服务器ip          19     allow-query     { 192.168.153.0/24; };        #允许192.168.153.0/24网段可以访问

[root@Server ~]# systemctl stop firewalld.service        #关闭网络防火墙 [root@Server ~]# setenforce 0        #关闭内核防火墙 [root@Server ~]# systemctl restart named        #重启DNS服务

[root@Client ~]# nmcli connection modify ens160 ipv4.dns 192.168.153.100        #修改客户端的DNS,指向服务器ip,把服务器当做DNS服务器 [root@Client ~]# nmcli connection reload        #重新加载 [root@Client ~]# nmcli connection up ens160        #激活ens160

(2)

[root@Server ~]# vim /etc/named.rfc1912.zones        #编辑区域文件          17 zone "localhost.localdomain" IN {        #正向解析模版          18     type master;           19     file "named.localhost";          20     allow-update { none; };          21 };

         23 zone "xing.org" IN {        #创建自己的正向解析          24     type master;        #正向解析          25     file "xing.org.zone";        #文件名,文件相对路劲,保存在/var/anmed下          26 }

(3)

[root@Server ~]# cd /var/named/ [root@Server named]# ll 总用量 16 drwxrwx—. 2 named named   23  4月 23 15:57 data drwxrwx—. 2 named named   60  4月 23 15:58 dynamic -rw-r—–. 1 root  named 2112  3月 13 23:59 named.ca -rw-r—–. 1 root  named  152  3月 13 23:59 named.empty -rw-r—–. 1 root  named  152  3月 13 23:59 named.localhost        #正向解析文件模版 -rw-r—–. 1 root  named  168  3月 13 23:59 named.loopback        #反向解析文件模版 drwxrwx—. 2 named named    6  3月 13 23:59 slaves

[root@Server named]# cp -p named.localhost xing.org.zone        #复制正向解析模版为自己的正向解析文件,-p表示完全复制(源数据,权限都复制)

[root@Server named]# vim xing.org.zone        #编辑正向解析文件   1 $TTL 1D        #域名存活时间为1天   2 @   IN SOA  dns.xing.org. mail.admin.xing (

@表示正向解析域名xing.org        第二个@可以写成dns.xing.org.;'dns.xing.org'后面必须带'.',不然'dns.xing.org'会表示'dns.xing.org.xing.org'        rname.invalid.表示管理员邮箱,可以写成自己的邮箱(注意不能用'@',可以用'.'替代)   3                     2025042301  ; serial        #版本号(建议不超过10),2025年4月23号的01版本   4                     1D                  ; refresh        #刷新时间为1天   5                     1H                  ; retry        #重连时间。连接时连不上的话,下次连接时间为1小时   6                     1W                  ; expire        #过期时间为1周   7                     3H )                ; minimum        #最少次数3小时   8                                 NS  dns.xing.org.        #这里的@可以写成dns.xing.org   9 dns                           A   192.168.153.100       #第一个必须解析自己的ip   10                                 AAAA    ::1        #ipv6解析  11 www.123.com       A   192.168.153.101        #劫持123的ip

(4)

[root@Server named]# named-checkconf        #检查配置文件有无错误

[root@Server named]# named-checkzone xing.org xing.org.zone        #检查区域文件有无错误,第一个参数表示域名——xing.org,第二个参数表示文件名——xing.org.zone zone xing.org/IN: loaded serial 2025042301 OK        #表示区域文件无错误

[root@Client ~]# nslookup dns.xing.org        #拉回dns,后面必须加域名——xing.org Server:         192.168.153.100 Address:        192.168.153.100#53

Name:   dns.xing.org Address: 192.168.153.100 Name:   dns.xing.org Address: ::1

[root@Client ~]# nslookup www.123.com.xing.org        #拉回www.123.com Server:         192.168.153.100 Address:        192.168.153.100#53

Name:   www.123.com.xing.org Address: 1.2.3.4

四、反向解析

[root@Server named]# vim /etc/named.rfc1912.zones        #编辑区域文件          40 zone "1.0.0.127.in-addr.arpa" IN {        #反向解析模版          41     type master;          42     file "named.loopback";          43     allow-update { none; };          44 };

         46 zone "153.168.192.in-addr.arpa" IN {        #创建自己的反向解析,因为是通过ip/网段(如:192.168.153.0/24)解析域名,所以这里写的是ip/网段并且要倒过来写——153.168.192          47     type master;        #主DNS服务器          48     file "192.168.153.arpa";        #文件名,相对路径,保存在/var/named下          49 };

[root@Server named]# ll 总用量 20 drwxrwx—. 2 named named   23  4月 23 15:57 data drwxrwx—. 2 named named   60  4月 23 17:21 dynamic -rw-r—–. 1 root  named 2112  3月 13 23:59 named.ca -rw-r—–. 1 root  named  152  3月 13 23:59 named.empty -rw-r—–. 1 root  named  152  3月 13 23:59 named.localhost -rw-r—–. 1 root  named  168  3月 13 23:59 named.loopback        #反向解析模版 drwxrwx—. 2 named named    6  3月 13 23:59 slaves -rw-r—–. 1 root  named  234  4月 23 17:20 xing.org.zone [root@Server named]# cp -p named.loopback 192.168.153.arpa        #复制反向解析模版为自己反向解析文件

[root@Server named]# vim 192.168.153.arpa   1 $TTL 1D   2 @   IN SOA  dns.xing.org. rname.invalid. (   3                     0   ; serial   4                     1D  ; refresh   5                     1H  ; retry   6                     1W  ; expire   7                     3H )    ; minimum   8                                    NS  dns.xing.org.   9 dns.xing.org.               A     192.168.153.100        #解析自己的域名  10                                    AAAA    ::1

 11 100                             PTR dns.xing.org.        #PTR表示反向解析  12 101                             PTR www.xing.org.         13 102                             PTR image.xing.org.

[root@Server named]# named-checkconf        #检查配置文件有无错误 [root@Server named]# named-checkzone 153.168.192.in-addr.arpa 192.168.153.arpa        #检查域名文件有无错误,第一个参数写域名,第二个参数写文件名 192.168.153.arpa:9: ignoring out-of-zone data (dns.xing.org) zone 153.168.192.in-addr.arpa/IN: loaded serial 0 OK

五、主从DNS服务器

完全区域传送:将主服务器是的所有信息复制到辅助服务器上,来实现完全区域传送

(1)

[root@Server ~]# vim /etc/named.conf          11     listen-on port 53 { 192.168.153.100; };        #监听本机(服务器)ip          19     allow-query     { 192.168.153.0/24; };        #使192.168.153的网段可以访问 [root@Server ~]# vim /etc/named.rfc1912.zones          23 zone "xing.org" IN {          24     type master;        #正向解析的主服务器          25     file "xing.org.zone";        #文件名,相对路径          26     allow-transfer {192.168.153.200};        #允许转发给从服务器(客户端)          27 };          47 zone "153.168.192.in-addr.arpa" IN {          48     type master;        #反向解析的主服务器          49     file "192.168.153.arpa";        #文件名,相对路径          50     allow-transfer {192.168.153.200};        #允许转发给从服务器          51 };

[root@Server named]# cp -p named.localhost xing.org.zone        #复制正向解析 [root@Server named]# vim xing.org.zone        #编辑正向解析           1 $TTL 1D           2 @   IN SOA dns.xing.org. admin.xing.com. (           3                     0   ; serial           4                     1D  ; refresh           5                     1H  ; retry           6                     1W  ; expire           7                     3H )    ; minimum           8                 NS      dns.xing.org.        #做主从服务器时,dns和slave都必须有           9                 NS      slave.xing.org.        #从服务器          10 dns         IN     A       192.168.153.100        #解析主服务器          11 slave       IN     A       192.168.153.200        #解析从服务器          12 www       IN      A       192.168.153.100          13 ftp           IN     CNAME   www        #CNAME表示转发

[root@Server named]# cp -p named.loopback 192.168.153.arpa        #复制反向解析 [root@Server named]# vim 192.168.153.arpa        #编辑反向解析           1 $TTL 1D           2 @   IN SOA  dns.xing.org. admin.xing.com. (           3                     0   ; serial           4                     1D  ; refresh           5                     1H  ; retry           6                     1W  ; expire           7                     3H )    ; minimum           8                 NS  dns.xing.org.        #做主从服务器时必须有dns和slave           9                 NS  slave.xing.org.        #从服务器          10 100         PTR dns.xing.org.        #解析主服务器          11 200         PTR slave.xing.org.        #解析从服务器          12 100         PTR www.xing.org.

[root@Server named]# named-checkconf        #检查DNS的配置文件 [root@Server named]# named-checkzone xing.org xing.org.zone        #检查区域的正向解析文件 zone xing.org/IN: loaded serial 0 OK

[root@Server named]# named-checkzone 153.168.192.in-addr.arpa 192.168.153.arpa        #检查区域的反向解析文件 zone 153.168.192.in-addr.arpa/IN: loaded serial 0 OK [root@Server named]# systemctl restart named         [root@Server ~]# nmcli connection modify ens160 ipv4.dns 192.168.153.100        #dns改为自己的ip,使本机具备测试功能 [root@Server ~]# nmcli connection reload        #重新加载 [root@Server ~]# nmcli connection up ens160        #激活ens160

(2)

[root@Client ~]# dnf install bind -y [root@Client ~]# vim /etc/named.conf        #编辑配置文件          10 options {          11     listen-on port 53 { 192.168.153.200; };        #监听自己的ip          19     allow-query     { 192.168.153.0/24; };        #允许192.168.153网段访问

[root@Client ~]# vim /etc/named.rfc1912.zones        #编辑区域文件          23 zone "xing.org" IN {        #创建正向解析          24     type slave;        #从服务器          25     file "slaves/xing.org.zone";        #文件名称,保存到/var/named/slaves/xing.org.zone          26     masters {192.168.153.100;};        #指向主服务器          27 };          47 zone "153.168.192.in-addr.arpa" IN {        #创建反向解析          48     type slave;        #从服务器          49     file "slaves/192.168.153.arpa";        #文件名称,保存到/var/named/slaves/192.168.153.arpa          50     masters {192.168.153.100;};        #指向主服务器          51 };

[root@Client ~]# nmcli connection modify ens160 ipv4.dns 192.168.153.200        #dns改为自己的ip,使本机具备测试功能 [root@Client ~]# nmcli connection reload        #重新加载 [root@Client ~]# nmcli connection up ens160        #激活ens160

[root@Client ~]# systemctl restart named        #重启DNS服务 [root@Client ~]# ls /var/named/slaves/        #服务器(主服务器)和客户端(从服务器)都开启后,客户端会自动获取主服务器创建的正向解析和反向解析文件 192.168.153.arpa  xing.org.zone

然后再从服务器(客户端)nslookup(拉回)解析配置文件的IP

赞(0)
未经允许不得转载:网硕互联帮助中心 » RHCE第六章:DNS域名解析服务器
分享到: 更多 (0)

评论 抢沙发

评论前必须登录!