DNS原理及其解析过程剖析(图文)

DNS原理及其解析过程剖析(图⽂)
⽹络通讯⼤部分是基于TCP/IP的,⽽TCP/IP是基于IP地址的,所以计算机在⽹络上进⾏通讯时只能识别如“202.96.134.133”之类的IP地址,⽽不能认识域名。我们⽆法记住10个以上IP地址的⽹站,所以我们访问⽹站时,更多的是在浏览器地址栏中输⼊域名,就能看到所需要的页⾯,这是因为有⼀个叫“DNS服务器”的计算机⾃动把我们的域名“翻译”成了相应的IP地址,然后调出IP地址所对应的⽹页。
什么是DNS?
DNS( Domain Name System)是“域名系统”的英⽂缩写,是⼀种组织成域层次结构的计算机和⽹络服务命名系统,它⽤于TCP/IP⽹络,它所提供的服务是⽤来将主机名和域名转换为IP地址的⼯作。DNS就是这样的⼀位“翻译官”,它的基本⼯作原理可⽤下图来表⽰。
DNS域名称
域名系统作为⼀个层次结构和分布式数据库,包含各种类型的数据,包括主机名和域名。DNS数据库中的名称形成⼀个分层树状结构称为域命名空间。域名包含单个标签分隔点,例如:im.qq。
完全限定的域名 (FQDN) 唯⼀地标识在 DNS 分层树中的主机的位置,通过指定的路径中点分隔从根引⽤的主机的名称列表。下图显⽰与主机称为 im 内 qq DNS 树的⽰例。主机的 FQDN 是 im.qq。
DNS 域的名称层次结构
DNS域名称空间的组织⽅式
路网按其功能命名空间中⽤来描述 DNS 域名称的五个类别的介绍详见下表中,以及与每个名称类型的⽰例。
DNS 和 Internet 域
互联⽹域名系统由名称注册机构负责维护分配由组织和国家/地区的顶级域在 Internet 上进⾏管理。这些域名按照国际标准3166。⼀些很多现有缩写,保留以供组织中,以及两个字母和三个字母的国家/地区使⽤的缩写使⽤下表所⽰。⼀些常见的DNS域名称如下图:
资源记录
十字滑块联轴器
DNS 数据库中包含的资源记录 (RR)。每个 RR 标识数据库中的特定资源。我们在建⽴DNS服务器时,经常会⽤到SOA,NS,A之类的记录,在维护DNS服务器时,会⽤到MX,CNAME记录。
常见的RR见下图:
Dns服务的⼯作过程
当 DNS 客户机需要查询程序中使⽤的名称时,它会查询本地DNS 服务器来解析该名称。客户机发送的每条查询消息都包括3条信息,以指定服务器应回答的问题。
●指定的 DNS 域名,表⽰为完全合格的域名 (FQDN) 。
●指定的查询类型,它可根据类型指定资源记录,或作为查询操作的专门类型。
● DNS域名的指定类别。
吸油烟机止回阀对于DNS 服务器,它始终应指定为 Internet 类别。例如,指定的名称可以是计算机的完全合格的域名,如im.qq,并且指定的查询类型⽤于通过该名称搜索地址资源记录。
DNS 查询以各种不同的⽅式进⾏解析。客户机有时也可通过使⽤从以前查询获得的缓存信息就地应答查询。DNS 服务器可使⽤其⾃⾝的资源记录信息缓存来应答查询,也可代表请求客户机来查询或联系其他 DNS 服务器,以完全解析该名称,并随后将应答返回⾄客户机。这个过程称为递归。
另外,客户机⾃⼰也可尝试联系其他的 DNS 服务器来解析名称。如果客户机这么做,它会使⽤基于服务器应答的独⽴和附加的查询,该过程称作迭代,即DNS服务器之间的交互查询就是迭代查询。
DNS 查询的过程如下图所⽰。
1、在浏览器中输⼊www.qq域名,操作系统会先检查⾃⼰本地的hosts⽂件是否有这个⽹址映射关系,如果有,就先调⽤这个IP地址映射,完成域名解析。
2、如果hosts⾥没有这个域名的映射,则查本地DNS解析器缓存,是否有这个⽹址映射关系,如果有,直接返回,完成域名解析。
3、如果hosts与本地DNS解析器缓存都没有相应的⽹址映射关系,⾸先会TCP/ip参数中设置的⾸选DNS服务器,在此我们叫它本地DNS服务器,此服务器收到查询时,如果要查询的域名,包含在本地配置区域资源中,则返回解析结果给客户机,完成域名解析,此解析具有权威性。
4、如果要查询的域名,不由本地DNS服务器区域解析,但该服务器已缓存了此⽹址映射关系,则调⽤这个IP地址映射,完成域名解析,此解析不具有权威性。f型钢
5、如果本地DNS服务器本地区域⽂件与缓存解析都失效,则根据本地DNS服务器的设置(是否设置转发器)进⾏查询,如果未⽤转发模式,本地DNS就把请求发⾄13台根DNS,根DNS服务器收到请求后会判断这个域名()是谁来授权管理,并会返回⼀个负责该顶级域名服务器的⼀个IP。本地DNS服务器收到IP信息后,将会联系负责域的这台服务器。这台负
责域的服务器收到请求后,如果⾃⼰⽆法解析,它就会⼀个管理域的下⼀级DNS服务器地
一次性拖鞋
址(qq)给本地DNS 服务器。当本地DNS服务器收到这个地址后,就会qq域服务器,重复上⾯的动作,进⾏查询,直⾄到www.qq主机。
6、如果⽤的是转发模式,此DNS服务器就会把请求转发⾄上⼀级DNS服务器,由上⼀级服务器进⾏解析,上⼀级服务器如果不能解析,或根DNS或把转请求转⾄上上级,以此循环。不管是本地DNS服务器⽤是是转发,还是根提⽰,最后都是把结果返回给本地DNS服务器,由此DNS服务器再返回给客户机。
srvcc从客户端到本地DNS服务器是属于递归查询,⽽DNS服务器之间就是的交互查询就是迭代查询。
附录:本地DNS配置转发与未配置转发数据包分析
新建⼀DNS,具体怎么建我这⾥就不再描述了,见我的上⼀篇博⽂《在Win2003中安ind【部署智能DNS】》
1、DNS服务器不设转发
在192.168.145.228服务器上安装上wireshark软件,并打开它,设置数据包为UDP过滤,在192.168.145.12客户机上⽤nslookup命令查询⼀下www.sohu,马上可以看到本地DNS服务器直接查全球13台根域中的某⼏台,然后⼀步步解析,通过递代的⽅式,直到到www.sohu对应的I
P为220.181.118.87。
本地DNS服务器得到www.sohu的IP后,它把这个IP返回给192.168.145.12客户机,完成解析。
2、DNS服务器设置转发
因www.sohu域名在第⼀步的验证中使⽤过,有缓存,为了不受上步实验⼲扰,我们在客户机上192.168.145.12上nslookup www.baidu。从图上看,本地DNS把请求转发⾄192.168.133.10服务器,133.10服务器把得到的IP返回给本地DNS,然后本地DNS再把IP告诉DNS客户机,完成解析。

本文发布于:2024-09-23 05:23:03,感谢您对本站的认可!

本文链接:https://www.17tex.com/tex/4/344444.html

版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系,我们将在24小时内删除。

标签:查询   服务器   域名
留言与评论(共有 0 条评论)
   
验证码:
Copyright ©2019-2024 Comsenz Inc.Powered by © 易纺专利技术学习网 豫ICP备2022007602号 豫公网安备41160202000603 站长QQ:729038198 关于我们 投诉建议