DNS域名解析

目录

1.概述

1.1产生原因

1.2作用

1.3连接方式

1.4因特网的域名结构

1.4.1拓扑

1.4.2分类

1.4.3域名服务器类型划分

2. DNS域名解析过程

2.1分类

2.2解析图

2.2.2过程分析

3.搭建DNS域名解析服务器

3.1.概述

3.2安装软件

3.3bind服务中三个关键文件

3.4主配置文件分析

3.5区域配置文件

3.5.1作用

3.5.2区域配置文件示例分析

●正向解析​编辑

3.6正向解析资源文件

3.6.1概述

3.6.2模板内容分析

3.6.4域名解析记录分析

3.7反向解析资源文件

3.8实验1:正向解析

3.8.1准备工作

3.8.2DNS解析配置

3.8.3注意:第三步数据配置文件可以进行精简

3.9实验2:反向解析

4.部署DNS从服务器

4.1.作用:

4.2.实验3:主从DNS服务器

4.2.1.完全区域传送

4.2.2.增重区域传送


1.概述


1.1产生原因


●**IP地址:是互联网上计算机唯- -的逻辑地址, 通过IP地址实现不同计算机之间的相互通信,每
台联网计算机都需要通过IP地址来互相联系和分别,但由于IP地址是由一串容易混淆的数字串
构成,人们很难记忆所有计算机的IP地址,这样对于我们日常工作生活访问不同网站是很困难
的。
基于这种背景,人们在IP地址的基础.上又发展出了-种更易识别的符号化标识,这种标识由人
们自行选择的字母和数字构成,相比IP地址更易被识别和记忆,逐渐代替IP地址成为互联网用
户进行访问互联的主要入口。这种符号化标识就是域名
●域名虽然更易被用户所接受积使用,但计算机只能识别纯数字构成的IP地址,不能直接读取域
名。因此要想达到访问效果,就需要将域名翻译成IP地址。而DNS域名解析承担的就是这种翻
译效果


1.2作用


●DNS (Domain Name System)是互联网上的-项服务,用于将域名和IP地址进行相互映射,
使人更方便的访问互联网
正向解析:域名->IP
反向解析: IP->域名
 


1.3连接方式



DNS使用53端口监听网络

●查看方法:
●DNS默认以UDP这个较快速的数据传输协议来查询,但没有查询到完整的信息时,就会再次以
TCP协议重新查询则启动DNS时,会同时启动TCP以及UDP的port53


1.4因特网的域名结构


1.4.1拓扑


●由于因特网的用户数量较多,则因特网命名时采用层次树状结构的命名方法。
域名(domain name): 任何一个连接在因特网上的主机或路由器,都有一个唯一的层次结构的
名称
●域(domain): 是名字空间中-个可被管理的划分结构。

 


1.4.2分类


●国家顶级域名:采用IS03166的规定,如: cn代表中国, us代表美国,uk代表英国, 等等。国
家域名又常记为CCTLD(country code top-level domains, cc表示国家代码contry-code)
●通用顶级域名:最常见的通用顶级域名有7个
com (公司企业)
net (网络服务机构)
org (非营利组织)
int (国际组织)
gov (美国的政府部门)
mil (美国的军事部门)
●基础结构域名(infrastructure domain): 这种顶级域名只有一一个,即arpa,用于反向域名解
析,因此称为反向域名



1.4.3域名服务器类型划分




 


根域名服务器:最高层次的域名服务器,所有的根域名服务器都知道所有的顶级域名服务器的
域名和IP地址。本地域名服务器要对因特网上任何一个域名进行解析,只要自己无法解析,就首
先求助根域名服务器。则根域名服务器是最重要的域名服务器。假定所有的根域名服务器都瘫痪
了,那么整个DNS系统就无法工作。所以根域名服务器并不直接把待查询的域名直接解析出IP地
址,而是告诉本地域名服务器下一步应当找哪一个顶级域名服务器进行查询。

在与现有IPv4根服务器体系架构充分兼容基础上,由我国下一-代互联网国家工程中心领衔发

的"雪人计划”于2016年在美国、日本、印度、俄罗斯、德国、法国等全球16个国家完成25台
IPv6 (互联网协议第六版)根服务器架设,事实上形成了13台原有根加25台IPv6根的新格局,
 


为建立多边、民主、透明的国际互联网治理体系打下坚实基础。中国部署了其中的4台,由1台主
根服务器和3台辅根服务器组成,打破了中国过去没有根服务器的困境。
●顶级域名服务器:负责管理在该顶级域名服务器注册的二级域名
●权限域名服务器:负责-个”区"的域名服务器
●本地域名服务器:本地域名服务器不属于域名服务器的层次结构,当主机发出DNS查询时,这个
查询报文就发送给本地域名服务器
, 为了提高域名服务器的可靠性,DNS域名服务器都把数据复制到几个域名服务器来保存,如:
主服务器:在特定区域内具有唯- -性, 负责维护该区域内的域名与IP地址之间的对应关系
(真正干活的)
, 从服务器:从主服务器中获得域名与IP地址的对应关系并进行维护,以防主服务器宕机等情
况(打下手的)
缓存服务器:通过向其他域名解析服务器查询获得域名与IP地址的对应关系,并将经常查询

的域名信息保存到服务器本地,以此来提高重复查询时的效率, -般部署在企业内网的网关位
置,用于加速用户的域名查询请求
 


2. DNS域名解析过程


2.1分类


●递归解析: DNS服务器在收到用户发起的请求时,必须向用户返回- -个准确的查询结果。如果
DNS服务器本地没有存储与之对应的信息,则该服务器需要询问其他服务器,并将返回的查询结
果提交给用户
●迭代解析(反复) : DNS服务器在收到用户发起的请求时,并不直接回复查询结果,而是告诉另
-台DNS服务器的地址,用户再向这台DNS服务器提交请求,依次反复,直到返回查询结果


2.2解析图



 


2.2.2过程分析


第一步:在浏览器中输入www . google .com域名,本地电脑会检查浏览器缓存中有没有这个
域名对应的解析过的IP地址,如果缓存中有,这个解析过程就结束。浏览器缓存域名也是有限
制的,不仅浏览器缓存大小有限制,而且缓存的时间也有限制,通常情况下为几分钟到几小时不
等,域名被缓存的时间限制可以通过TTL属性来设置。这个缓存时间太长和太短都不太好,如果
时间太长,一旦域名被解析到的IP有变化,会导致被客户端缓存的域名无法解析到变化后的IP
地址,以致该域名不能正常解析,这段时间内有一部分用户无法访问网站。 如果设置时间太短,
会导致用户每次访问网站都要重新解析- -次域名
第二步:如果浏览器缓存中没有数据,浏览器会查找操作系统缓存中是否有这个域名对应的
DNS解析结果。其实操作系统也有一个[域名解析]的过程,在Linux 中可以通过/ etc/hosts文
件来设置,而在windows中可以通过配置C:\Windows\System32\drivers\etc\hosts 文件
来设置,用户可以将任何域名解析到任何能够访问的IP地址。例如,我们在测试时可以将一一个
域名解析到- -台测试服务器上,这样不用修改任何代码就能测试到单独服务器上的代码的业务逻
辑是否正确。正是因为有这种本地DNS解析的规程,所以有黑客就可能通过修改用户的域名来
把特定的域名解析到他指定的IP地址上,导致这些域名被劫持
第三步:前两步是在本地电脑.上完成的,若无法解析时,就要用到我们网络配置中的"DNS服务
器地址"了。操作系统会把这个域名发送给这个本地DNS服务器。每个完整的内网通常都会配
置本地DNS服务器,例如用户是在学校或工作单位接入互联网,那么用户的本地DNS服务器
肯定在学校或工作单位里面。它们- -般都会缓存域名解析结果,当然缓存时间是受到域名的失效
时间控制的。大约80%的域名解析到这里就结束了,后续的DNS迭代和递归也是由本地DNS
服务器负责
第四步:如果本地DNS服务器仍然没有命中,就直接到根DNS服务器请求解析
第五步:根DNS服务器返回给本地DNS域名服务器- -个顶级DNS服务器地址,它是国际顶级
域名服务器,如. com. .cn、 .org等, 全球只有13台左右
第六步:本地DNS服务器再向上- -步获得的顶级DNS服务器发送解析请求
第七步:接受请求的顶级DNS服务器查找并返回此域名对应的Name Server域名服务器的
地址,这个Name Server服务器就是我要访问的网站域名提供商的服务器,其实该域名的解析
任务就是由域名提供商的服务器来完成。比如我要访问 www.baidu.com. 而这个域名是从A
公司注册获得的,那么A公司.上的服务器就会有www.baidu.com的相关信息
第八步: 返回该域名对应的 IP和TTL值,本地DNS服务器会缓存这个域名和 IP的对应关系,
缓存时间由TTL值控制
●第九步: Name Server服务器收到查询请求后再其数据库中进行查询,找到映射关系后将其IP
地址返回给本地DNS服务器
●第十步:本地DNS服务器把解析的结果返回给本地电脑,本地电脑根据TTL值缓存在本地系统缓
存中,域名解析过程结束在实际的DNS解析过程中,可能还不止这10步,如Name Server可
能有很多级,或者有一个GTM来负载均衡控制,这都有可能会影响域名解析过程

 


注意:
从客户端到本地DNS服务器是属于递归查询,而DNS服务器之间使用的交互查询就是迭代查

114.114.114.114是国内移动、电信和联通通用的DNS,手机和电脑端都可以使用,干净无广
告,解析成功率相对来说更高,国内用户使用的比较多,而且速度相对快、稳定,是国内用户
上网常用的DNS。
223.5.5.5和223.6.6.6是阿里提供的免费域名解析服务器地址
8.8.8.8是GOOGLE公司提供的DNS, 该地址是全球通用的,相对来说,更适合国外以及访问
国外网站的用户使用

 


3.搭建DNS域名解析服务器


3.1.概述


●BIND: Berkeley Internet Name Domain,伯克利因特网域名解析服务是- -种全球使用最
广泛的、最高效的、最安全的域名解析服务程序


3.2安装软件


[root@server ~]# yum insta1l bind -y


3.3bind服务中三个关键文件


●/etc/named.conf:主配置文件,共59行,去除注释和空行之和有效行数仅30行左右,用于设置
bind服务程序的运行
●/etc/named.rfc1912.zones :区域配置文件(zone) ,用于保存域名和IP地址对应关系文件
的所在位置,类似于图书目录,当需要修改域名与IP映射关系时需要在此文件中查找相关文件位
●/var/named目录:数据配置文件目录,该目录存储保存域名和!P地址映射关系的数据文件
 

3.4主配置文件分析


●主配置文件共4部分组成
options{}
logging{}
zone{}
include
●常用参数:


●一般需要修改三部分:
listen-on port 53 { 127.0.0.1; };即监听ip及端口
allow-query { localhost; };允许那些客户端访问
recursion yes;是否开启递归查询


3.5区域配置文件


3.5.1作用


●/etc/named.rfc1912.zones文件为bind服务程序的区域配置文件,用来保存域名与IP地址映射
关系文件的位置,是一-系列功能模板的集合


3.5.2区域配置文件示例分析

●正向解析

 

●反向解析


3.6正向解析资源文件


3.6.1概述


●**查看:
[root@server ~]# vim /var/named/named.localhost
●注意:推荐对该模板文件进行局部修改


3.6.2模板内容分析
 




3.6.4域名解析记录分析


A记录: A代表Address,用来指定域名对应的IP地址,如将item.taobao.com指定到
115.238.23.xxx,将switch.taobao.com指定到121.14.24.xxx
MX记录: Mail Exchange,就是可以将某个域名下的邮件服务器指向自己的Mail Server,如
taobao.com域名的A记录IP地址是115.238.25.xxx,如果将MX记录设置为
115.238.25.xx,即xxx@taobao.com的邮件路由,DNS会将邮件发送到115.238.25.xxx
所在的服务器,而正常通过Web请求的话仍然解析到A记录的IP地址
NS记录:为某个包指定DNS解析服务器,也就是这个域名由指定的iP地址的DNS服务器取
解析
CNAME记录: Canonical Name,即别名解析。所谓别名解析就是可以为-一个域名设置- 个或
者多个别名,如将aaa.com解析到bbb.net.将ccc.com也解析到bbb.net,其中bbb.net
分别是aaa.com和cc.com的别名
●TXT记录:为某个主机名或域名设置说明,如可以为ddd.net设置TXT记录为"这是XXX的博
客"这样的说明
 

3.7反向解析资源文件

3.8实验1:正向解析

3.8.1准备工作

3.8.2DNS解析配置



●第一步:服务端操作,配置DNS主配置文件


●第二步:服务端操作,编辑区域配置文件,可以清空后添加,也推荐选择- 个解析模版进行修改


●第三步:服务端操作,编辑数据配置文件,推荐使用cp -a命令完全拷贝- -份正向解析模版

(named.localhost) ,在修改局部


3.8.3注意:第三步数据配置文件可以进行精简


●SOA起始授权记录: openlab.com. IN SOA ns.openlab.com. admin.openlab.com.(),
表示openlab.com.这个域名指定dns服务器为ns.openlab.com.这台主机,以及其它附加信息
●ns记录: openlab.com. IN NS ns.openlab.com. ,声明openlab.com.这个域名的dns服务器为ns.openlab.com.主机
●**以上区别: NS记录仅仅只是声明该域内哪台主机是dns服务器,用来提供名称解析服务, NS
记录不会区分哪台dns服务器是master哪台dns服务器是slave。而SOA记录则用于指定哪个NS
记录对应的主机是master dns服务器,也就是从多个dns服务器中挑选-台任命其为该域内的
master dns服务器,其他的都是slave,都需要从master上获取域相关数据
A记录:表示那台主机解析为什么IP地址
●CNAME记录: 别名
●精简原则:
可以使用@替代域名,如@替代openlab.com.
可以使用空格或tab重复继承上-行第-列的值
可以省略域名,会自动补全,如: www为www.openlab.com.
配置文件可以省略如下:
 


3.9实验2:反向解析

●第一步:服务端操作,基于上例,继续完成,主配置文件按照上例设置不变,编辑区域配置文
件,选择一个反向解析模版进行修改

●第二步:服务端操作,编辑数据配置文件,复制- -份反向解析模版(named.lcvpwwbash
改局部即可

●第三步:服务端重启服务

●第四步:客户端操作,测试


4.部署DNS从服务器


4.1.作用:


DNS作为重要的互联网基础设施服务,保证DNS域名解析服务的正常运转至关重要,只有这样
才能提供稳定、快速且不间断的域名查询服务
DNS域名解析服务中,从服务器可以从主服务器上获取指定的区域数据文件,从而起到备份解析
记录与负载均衡的作用,因此通过部署从服务器可以减轻主服务器的负载压力,还可以提升用户
的查询效率
●注意:
        时间同步必须保持一致性
        bind最好使用同-版本


4.2.实验3:主从DNS服务器


4.2.1.完全区域传送


●将一个区域文件复制到多个从服务器上的过程称为区域传送
●将主服务器的所有信息全部复制到从服务器中,称为完全区域传送,即复制整个区域文件
●实验说明
 


●第一步:两个服务器server和node1恢复快照, 安装软件,设置静态IP


●第二步:主服务器server端操作,设置dns主配置文件,修改内容如下:
 


●第三步:主服务器server操作, 设置区域配置文件


●第四步:主服务器server端操作,设置正向解析的数据配置文件

●第五步:主服务器server端操作,重启服务

●第六步:从服务器node1端操作,修改主配置文件

●第七步:从服务器node1端操作,修改区域配置文件,注意:

●第八步:从服务器node1端重启服务,当从服务器服务重启,会向主服务器同步拉取数据到/var/named/slaves

●第九步:测试,定位客户端node2,修改网卡的dns为从服务器的IP

修改dns相关信息:

 nmcli c modify ens160 ipv4.method manual ipv4.addresses 192.168.233.140/24 ipv4.gateway 192.168.233.2 ipv4.dns 114.114.114.114

4.2.2.增重区域传送

●功能:仅复制区域中变化的数据部分

●第一步:末服条器senver端操作,修改数据配置文件

●第二步:主服务器server端操作,重启服务

●第三步:从服务器node1端,重启服务

●第四步:客户端node2测试

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值