服务器DNS域名解析

DNS服务概述

作用:将域名解析成IP地址
原因:我们对数字敏感,记不住这个IP地址,所以才有域名解析服务。
解析方式:
正向解析:域名解析出IP
反向解析:IP解析出域名

1、DNS服务器中存储着大量的ip地址和域名映射记录,它的记录文件也分为正向解析文件和反向解析文件。
2、正向解析文件中存储的记录称为A记录,A记录记录着域名和IP的映射关系。
3、反向解析文件中存储的记录称为PTR指针,PTR记录着IP和域名的映射关系。
4、DNS服务既属于TCP协议也属于UDP 协议,端口号为53号。

. 根域
国家域:cn 中国,hk 香港, uk 英国, au 澳大利亚
顶级域(领域):com 商业用途 net 网络组织 edu 教育
二级域:个性化的名称,每个域的二级域都不一样
主机名(用途):www(网页),mail(邮件)

解析过程

DNS的解析过程是分层解析的,一般客户机将解析的请求发送给它的DNS服务器,DNS服务器首先是从根DNS服务器(.)开始发送域名解析请求,根将COM域的IP反馈给客户机的本地DNS服务器,本地DNS服务器访问COM域服务器,COM域服务器反馈baidu域的ip给本地DNS服务器,本地DNS服务器访问baidu域服务器询问www域服务器的ip,baidu域服务器给dns服务器反馈www域的ip,这时本地DNS服务器得到www.baidu.com的精确ip后,直接将这个映射记录反馈给客户机,客户机直接访问www.baidu.com服务器,服务器反馈相应的数据。
DNS缓存:
其中一台DNS服务器可以上网区获取DNS映射记录,客户机将DNS服务器地址指向这台可以上网的DNS服务器,从而获取到相应的映射记录。
备注:开启路由功能的这台服务器需要预装DNS服务

缓存

实验环境 一台服务器192.168.188.10
一台客户机192.168.188.20

<span class="token punctuation">[</span>root@server1 <span class="token operator">~</span><span class="token punctuation">]</span># vi <span class="token operator">/</span>etc<span class="token operator">/</span>sysctl<span class="token punctuation">.</span>con 在最后一行添加<span class="token operator">--</span><span class="token operator">-</span>net<span class="token punctuation">.</span>ipv4<span class="token punctuation">.</span>ip_forward <span class="token operator">=</span> <span class="token number">1</span> <span class="token punctuation">[</span>root@server1 <span class="token operator">~</span><span class="token punctuation">]</span># sysctl <span class="token operator">-</span>p<span class="token operator">--</span><span class="token operator">--</span><span class="token operator">-</span>加载 net<span class="token punctuation">.</span>ipv4<span class="token punctuation">.</span>ip_forward <span class="token operator">=</span> <span class="token number">1</span> <span class="token punctuation">[</span>root@server1 <span class="token operator">~</span><span class="token punctuation">]</span># nslookup www<span class="token punctuation">.</span>google<span class="token punctuation">.</span>com<span class="token operator">--</span><span class="token operator">-</span>测试谷歌 Server<span class="token punctuation">:</span> <span class="token number">192.168</span><span class="token number">.1</span><span class="token number">.1</span> Address<span class="token punctuation">:</span> <span class="token number">192.168</span><span class="token number">.1</span><span class="token number">.1</span>#<span class="token number">53</span> Non<span class="token operator">-</span>authoritative answer<span class="token punctuation">:</span> Name<span class="token punctuation">:</span> www<span class="token punctuation">.</span>google<span class="token punctuation">.</span>com Address<span class="token punctuation">:</span> <span class="token number">173.252</span><span class="token number">.103</span><span class="token number">.64</span> <span class="token punctuation">[</span>root@server1 <span class="token operator">~</span><span class="token punctuation">]</span># yum <span class="token operator">-</span>y install bind<span class="token operator">*</span><span class="token operator">--</span><span class="token operator">--</span><span class="token operator">-</span>安装<span class="token constant">DNS</span>软件
 <span class="token punctuation">[</span>root@server1 <span class="token operator">~</span><span class="token punctuation">]</span># vi <span class="token operator">/</span>etc<span class="token operator">/</span>sysctl<span class="token punctuation">.</span>con 在最后一行添加<span class="token operator">--</span><span class="token operator">-</span>net<span class="token punctuation">.</span>ipv4<span class="token punctuation">.</span>ip_forward <span class="token operator">=</span> <span class="token number">1</span> <span class="token punctuation">[</span>root@server1 <span class="token operator">~</span><span class="token punctuation">]</span># sysctl <span class="token operator">-</span>p<span class="token operator">--</span><span class="token operator">--</span><span class="token operator">-</span>加载 net<span class="token punctuation">.</span>ipv4<span class="token punctuation">.</span>ip_forward <span class="token operator">=</span> <span class="token number">1</span> <span class="token punctuation">[</span>root@server1 <span class="token operator">~</span><span class="token punctuation">]</span># nslookup www<span class="token punctuation">.</span>google<span class="token punctuation">.</span>com<span class="token operator">--</span><span class="token operator">-</span>测试谷歌 Server<span class="token punctuation">:</span> <span class="token number">192.168</span><span class="token number">.1</span><span class="token number">.1</span> Address<span class="token punctuation">:</span> <span class="token number">192.168</span><span class="token number">.1</span><span class="token number">.1</span>#<span class="token number">53</span> Non<span class="token operator">-</span>authoritative answer<span class="token punctuation">:</span> Name<span class="token punctuation">:</span> www<span class="token punctuation">.</span>google<span class="token punctuation">.</span>com Address<span class="token punctuation">:</span> <span class="token number">173.252</span><span class="token number">.103</span><span class="token number">.64</span> <span class="token punctuation">[</span>root@server1 <span class="token operator">~</span><span class="token punctuation">]</span># yum <span class="token operator">-</span>y install bind<span class="token operator">*</span><span class="token operator">--</span><span class="token operator">--</span><span class="token operator">-</span>安装<span class="token constant">DNS</span>软件 
[root@server1 ~]# vi /etc/sysctl.con 在最后一行添加---net.ipv4.ip_forward = 1 [root@server1 ~]# sysctl -p-----加载 net.ipv4.ip_forward = 1 [root@server1 ~]# nslookup www.google.com---测试谷歌 Server: 192.168.1.1 Address: 192.168.1.1#53 Non-authoritative answer: Name: www.google.com Address: 173.252.103.64 [root@server1 ~]# yum -y install bind*-----安装DNS软件
<span class="token punctuation">[</span>root@server1 <span class="token operator">~</span><span class="token punctuation">]</span># vi <span class="token operator">/</span>etc<span class="token operator">/</span>named<span class="token punctuation">.</span>conf
 <span class="token punctuation">[</span>root@server1 <span class="token operator">~</span><span class="token punctuation">]</span># vi <span class="token operator">/</span>etc<span class="token operator">/</span>named<span class="token punctuation">.</span>conf 
[root@server1 ~]# vi /etc/named.conf

在这里插入图片描述

root@server1 <span class="token operator">~</span><span class="token punctuation">]</span># systemctl start named<span class="token operator">--</span>启动
root@server1 <span class="token operator">~</span><span class="token punctuation">]</span># systemctl start named<span class="token operator">--</span>启动 
root@server1 ~]# systemctl start named--启动

客户机192.168.188.20

<span class="token punctuation">[</span>root@server1 <span class="token operator">~</span><span class="token punctuation">]</span># yum <span class="token operator">-</span>y install bind<span class="token operator">*</span> <span class="token operator">--</span><span class="token operator">--</span><span class="token operator">-</span>安装<span class="token constant">DNS</span> <span class="token punctuation">[</span>root@server1 <span class="token operator">~</span><span class="token punctuation">]</span># vi <span class="token operator">/</span>etc<span class="token operator">/</span>resolv<span class="token punctuation">.</span>conf
<span class="token punctuation">[</span>root@server1 <span class="token operator">~</span><span class="token punctuation">]</span># yum <span class="token operator">-</span>y install bind<span class="token operator">*</span> <span class="token operator">--</span><span class="token operator">--</span><span class="token operator">-</span>安装<span class="token constant">DNS</span> <span class="token punctuation">[</span>root@server1 <span class="token operator">~</span><span class="token punctuation">]</span># vi <span class="token operator">/</span>etc<span class="token operator">/</span>resolv<span class="token punctuation">.</span>conf 
[root@server1 ~]# yum -y install bind* -----安装DNS [root@server1 ~]# vi /etc/resolv.conf

在这里插入图片描述
就可以测试了

主从服务器解析

在这里插入图片描述
实验环境
主服务器一台192.168.188.10
从服务器一台192.168.188.20
客户机一台 192.168.188.30
都关闭防火墙和核心防护

在这里插入图片描述

主从服务器都安装bind*
在这里插入图片描述
主从服务器和客户机都要修改
在这里插入图片描述
在这里插入图片描述

主服务器DNS1
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

zone <span class="token string">"aa.com"</span> <span class="token constant">IN</span> <span class="token punctuation">{<!-- --></span> type master<span class="token punctuation">;</span> file <span class="token string">"aa.com.zone"</span><span class="token punctuation">;</span> allow<span class="token operator">-</span>transfer <span class="token punctuation">{<!-- --></span> <span class="token number">192.168</span><span class="token number">.188</span><span class="token number">.20</span><span class="token punctuation">;</span> <span class="token punctuation">}</span><span class="token punctuation">;</span> also<span class="token operator">-</span>notify <span class="token punctuation">{<!-- --></span> <span class="token number">192.168</span><span class="token number">.188</span><span class="token number">.20</span><span class="token punctuation">;</span> <span class="token punctuation">}</span><span class="token punctuation">;</span> <span class="token punctuation">}</span><span class="token punctuation">;</span> zone <span class="token string">"188.168.192.in-addr.arpa"</span> <span class="token constant">IN</span> <span class="token punctuation">{<!-- --></span> type master<span class="token punctuation">;</span> file <span class="token string">"aa.com.local"</span><span class="token punctuation">;</span> allow<span class="token operator">-</span>transfer <span class="token punctuation">{<!-- --></span> <span class="token number">192.168</span><span class="token number">.188</span><span class="token number">.20</span><span class="token punctuation">;</span> <span class="token punctuation">}</span><span class="token punctuation">;</span> <span class="token punctuation">}</span><span class="token punctuation">;</span>
zone <span class="token string">"aa.com"</span> <span class="token constant">IN</span> <span class="token punctuation">{<!-- --></span> type master<span class="token punctuation">;</span> file <span class="token string">"aa.com.zone"</span><span class="token punctuation">;</span> allow<span class="token operator">-</span>transfer <span class="token punctuation">{<!-- --></span> <span class="token number">192.168</span><span class="token number">.188</span><span class="token number">.20</span><span class="token punctuation">;</span> <span class="token punctuation">}</span><span class="token punctuation">;</span> also<span class="token operator">-</span>notify <span class="token punctuation">{<!-- --></span> <span class="token number">192.168</span><span class="token number">.188</span><span class="token number">.20</span><span class="token punctuation">;</span> <span class="token punctuation">}</span><span class="token punctuation">;</span> <span class="token punctuation">}</span><span class="token punctuation">;</span> zone <span class="token string">"188.168.192.in-addr.arpa"</span> <span class="token constant">IN</span> <span class="token punctuation">{<!-- --></span> type master<span class="token punctuation">;</span> file <span class="token string">"aa.com.local"</span><span class="token punctuation">;</span> allow<span class="token operator">-</span>transfer <span class="token punctuation">{<!-- --></span> <span class="token number">192.168</span><span class="token number">.188</span><span class="token number">.20</span><span class="token punctuation">;</span> <span class="token punctuation">}</span><span class="token punctuation">;</span> <span class="token punctuation">}</span><span class="token punctuation">;</span> 
zone "aa.com" IN { type master; file "aa.com.zone"; allow-transfer { 192.168.188.20; }; also-notify { 192.168.188.20; }; }; zone "188.168.192.in-addr.arpa" IN { type master; file "aa.com.local"; allow-transfer { 192.168.188.20; }; };

在这里插入图片描述
正向解析
在这里插入图片描述

@ <span class="token constant">IN</span> <span class="token constant">SOA</span> @ rname<span class="token punctuation">.</span>invalid<span class="token punctuation">.</span> <span class="token punctuation">(</span> <span class="token number">0</span> <span class="token punctuation">;</span> serial <span class="token number">1</span>D <span class="token punctuation">;</span> refresh <span class="token number">1</span>H <span class="token punctuation">;</span> retry <span class="token number">1</span>W <span class="token punctuation">;</span> expire <span class="token number">3</span>H <span class="token punctuation">)</span> <span class="token punctuation">;</span> minimum <span class="token constant">NS</span> @ <span class="token constant">A</span> <span class="token number">192.168</span><span class="token number">.188</span><span class="token number">.10</span> www <span class="token constant">IN</span> <span class="token constant">A</span> <span class="token number">192.168</span><span class="token number">.188</span><span class="token number">.10</span> ftp <span class="token constant">IN</span> <span class="token constant">A</span> <span class="token number">192.168</span><span class="token number">.188</span><span class="token number">.20</span> mail <span class="token constant">IN</span> <span class="token constant">CNAME</span> www
@ <span class="token constant">IN</span> <span class="token constant">SOA</span> @ rname<span class="token punctuation">.</span>invalid<span class="token punctuation">.</span> <span class="token punctuation">(</span> <span class="token number">0</span> <span class="token punctuation">;</span> serial <span class="token number">1</span>D <span class="token punctuation">;</span> refresh <span class="token number">1</span>H <span class="token punctuation">;</span> retry <span class="token number">1</span>W <span class="token punctuation">;</span> expire <span class="token number">3</span>H <span class="token punctuation">)</span> <span class="token punctuation">;</span> minimum <span class="token constant">NS</span> @ <span class="token constant">A</span> <span class="token number">192.168</span><span class="token number">.188</span><span class="token number">.10</span> www <span class="token constant">IN</span> <span class="token constant">A</span> <span class="token number">192.168</span><span class="token number">.188</span><span class="token number">.10</span> ftp <span class="token constant">IN</span> <span class="token constant">A</span> <span class="token number">192.168</span><span class="token number">.188</span><span class="token number">.20</span> mail <span class="token constant">IN</span> <span class="token constant">CNAME</span> www 
@ IN SOA @ rname.invalid. ( 0 ; serial 1D ; refresh 1H ; retry 1W ; expire 3H ) ; minimum NS @ A 192.168.188.10 www IN A 192.168.188.10 ftp IN A 192.168.188.20 mail IN CNAME www

反向解析
在这里插入图片描述

@ <span class="token constant">IN</span> <span class="token constant">SOA</span> aa<span class="token punctuation">.</span>com<span class="token punctuation">.</span> rname<span class="token punctuation">.</span>invalid<span class="token punctuation">.</span> <span class="token punctuation">(</span> <span class="token number">0</span> <span class="token punctuation">;</span> serial <span class="token number">1</span>D <span class="token punctuation">;</span> refresh <span class="token number">1</span>H <span class="token punctuation">;</span> retry <span class="token number">1</span>W <span class="token punctuation">;</span> expire <span class="token number">3</span>H <span class="token punctuation">)</span> <span class="token punctuation">;</span> minimum <span class="token constant">NS</span> aa<span class="token punctuation">.</span>com<span class="token punctuation">.</span> <span class="token constant">A</span> <span class="token number">192.168</span><span class="token number">.188</span><span class="token number">.10</span> <span class="token number">110</span> <span class="token constant">IN</span> <span class="token constant">PTR</span> www<span class="token punctuation">.</span>aa<span class="token punctuation">.</span>com<span class="token punctuation">.</span> <span class="token number">111</span> <span class="token constant">IN</span> <span class="token constant">PTR</span> ftp<span class="token punctuation">.</span>aa<span class="token punctuation">.</span>com<span class="token punctuation">.</span>
@ <span class="token constant">IN</span> <span class="token constant">SOA</span> aa<span class="token punctuation">.</span>com<span class="token punctuation">.</span> rname<span class="token punctuation">.</span>invalid<span class="token punctuation">.</span> <span class="token punctuation">(</span> <span class="token number">0</span> <span class="token punctuation">;</span> serial <span class="token number">1</span>D <span class="token punctuation">;</span> refresh <span class="token number">1</span>H <span class="token punctuation">;</span> retry <span class="token number">1</span>W <span class="token punctuation">;</span> expire <span class="token number">3</span>H <span class="token punctuation">)</span> <span class="token punctuation">;</span> minimum <span class="token constant">NS</span> aa<span class="token punctuation">.</span>com<span class="token punctuation">.</span> <span class="token constant">A</span> <span class="token number">192.168</span><span class="token number">.188</span><span class="token number">.10</span> <span class="token number">110</span> <span class="token constant">IN</span> <span class="token constant">PTR</span> www<span class="token punctuation">.</span>aa<span class="token punctuation">.</span>com<span class="token punctuation">.</span> <span class="token number">111</span> <span class="token constant">IN</span> <span class="token constant">PTR</span> ftp<span class="token punctuation">.</span>aa<span class="token punctuation">.</span>com<span class="token punctuation">.</span> 
@ IN SOA aa.com. rname.invalid. ( 0 ; serial 1D ; refresh 1H ; retry 1W ; expire 3H ) ; minimum NS aa.com. A 192.168.188.10 110 IN PTR www.aa.com. 111 IN PTR ftp.aa.com.

启动DNS

<span class="token punctuation">[</span>root@server1 named<span class="token punctuation">]</span># systemctl start named <span class="token punctuation">[</span>root@server1 named<span class="token punctuation">]</span># systemctl status named<span class="token punctuation">.</span>service
<span class="token punctuation">[</span>root@server1 named<span class="token punctuation">]</span># systemctl start named <span class="token punctuation">[</span>root@server1 named<span class="token punctuation">]</span># systemctl status named<span class="token punctuation">.</span>service 
[root@server1 named]# systemctl start named [root@server1 named]# systemctl status named.service

验证DNS1
在这里插入图片描述

5.DNS2 192.168.188.20
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

zone <span class="token string">"aa.com"</span> <span class="token constant">IN</span> <span class="token punctuation">{<!-- --></span> type slave<span class="token punctuation">;</span> masters <span class="token punctuation">{<!-- --></span> <span class="token number">192.168</span><span class="token number">.188</span><span class="token number">.10</span><span class="token punctuation">;</span> <span class="token punctuation">}</span><span class="token punctuation">;</span> allow<span class="token operator">-</span>notify <span class="token punctuation">{<!-- --></span> <span class="token number">192.168</span><span class="token number">.188</span><span class="token number">.10</span><span class="token punctuation">;</span> <span class="token punctuation">}</span><span class="token punctuation">;</span> file <span class="token string">"slaves/aa.com.zone"</span><span class="token punctuation">;</span> <span class="token punctuation">}</span><span class="token punctuation">;</span> zone <span class="token string">"188.168.192.in-addr.arpa"</span> <span class="token constant">IN</span> <span class="token punctuation">{<!-- --></span> type slave<span class="token punctuation">;</span> masters <span class="token punctuation">{<!-- --></span> <span class="token number">192.168</span><span class="token number">.188</span><span class="token number">.10</span><span class="token punctuation">;</span> <span class="token punctuation">}</span><span class="token punctuation">;</span> allow<span class="token operator">-</span>notify <span class="token punctuation">{<!-- --></span> <span class="token number">192.168</span><span class="token number">.188</span><span class="token number">.10</span><span class="token punctuation">;</span> <span class="token punctuation">}</span><span class="token punctuation">;</span> file <span class="token string">"slaves/aa.com.local"</span><span class="token punctuation">;</span> <span class="token punctuation">}</span><span class="token punctuation">;</span>
zone <span class="token string">"aa.com"</span> <span class="token constant">IN</span> <span class="token punctuation">{<!-- --></span> type slave<span class="token punctuation">;</span> masters <span class="token punctuation">{<!-- --></span> <span class="token number">192.168</span><span class="token number">.188</span><span class="token number">.10</span><span class="token punctuation">;</span> <span class="token punctuation">}</span><span class="token punctuation">;</span> allow<span class="token operator">-</span>notify <span class="token punctuation">{<!-- --></span> <span class="token number">192.168</span><span class="token number">.188</span><span class="token number">.10</span><span class="token punctuation">;</span> <span class="token punctuation">}</span><span class="token punctuation">;</span> file <span class="token string">"slaves/aa.com.zone"</span><span class="token punctuation">;</span> <span class="token punctuation">}</span><span class="token punctuation">;</span> zone <span class="token string">"188.168.192.in-addr.arpa"</span> <span class="token constant">IN</span> <span class="token punctuation">{<!-- --></span> type slave<span class="token punctuation">;</span> masters <span class="token punctuation">{<!-- --></span> <span class="token number">192.168</span><span class="token number">.188</span><span class="token number">.10</span><span class="token punctuation">;</span> <span class="token punctuation">}</span><span class="token punctuation">;</span> allow<span class="token operator">-</span>notify <span class="token punctuation">{<!-- --></span> <span class="token number">192.168</span><span class="token number">.188</span><span class="token number">.10</span><span class="token punctuation">;</span> <span class="token punctuation">}</span><span class="token punctuation">;</span> file <span class="token string">"slaves/aa.com.local"</span><span class="token punctuation">;</span> <span class="token punctuation">}</span><span class="token punctuation">;</span> 
zone "aa.com" IN { type slave; masters { 192.168.188.10; }; allow-notify { 192.168.188.10; }; file "slaves/aa.com.zone"; }; zone "188.168.192.in-addr.arpa" IN { type slave; masters { 192.168.188.10; }; allow-notify { 192.168.188.10; }; file "slaves/aa.com.local"; };

加载
在这里插入图片描述

把DNS1服务关掉再用客户机nslookup ftp.aa.com

在这里插入图片描述

原文链接:https://blog.csdn.net/weixin_50345059/article/details/109431923

© 版权声明
THE END
喜欢就支持一下吧
点赞0 分享