当前位置:   article > 正文

域名解析原理_域名解析的原理csdn

域名解析的原理csdn

1.1.1 域名解析原理

http://book.51cto.com  2007-04-24 14:04  王达  电子工业出版社   我要评论(1)
1.1.1  域名解析原理
在互联网上,最终确定访问主机位置的不是域名,也不是计算机的MAC地址,而是IP地址。而DNS服务,或者叫域名服务、域名解析服务,就是提供域名与IP地址的相互转换,也可以说是一种对应(映射)关联。在DNS服务器中通常会有一个域名与IP地址的映射表,以便用户无论是输入服务器名(相当于域名),还是服务器的IP地址都可以及时得到转换,查找到相应的服务器。这就是在局域网中,通常要把局域网中的邮件服务器域名记录也添加到DNS记录的原因了。
IP地址(特指IPv4地址)是由一个共12位的分段数字组成的,中间用句点将其分隔为4部分(例如,192.161.1.42)。之所以有了IP地址,还要域名,那是因为数字格式的IP地址难以记忆,而域名一般都有代表性(如公司名称),便于记忆,如 www.grfwgz.com等。其实这也方便了所使用的域名实现个性化更改,但IP地址可以总是不变的。如果用户在浏览器地址栏中输入的是域名,则必须转换成对应的IP地址,这就是域名解析过程。
域名解析有正向解析和反向解析之说,正向解析就是将域名转换成对应的IP地址的过程,它应用于在浏览器地址栏中输入网站域名时的情形;而反向解析是将IP地址转换成对应域名的过程,但在访问网站时无须进行反向解析,即使在浏览器地址栏中输入的是网站服务器IP地址,因为互联网主机的定位本身就是通过IP地址进行的,只是在同一IP地址下映射多个域名时需要。另外反向解析经常被一些后台程序使用,用户看不到。
除了正向、反向解析之外,还有一种称为“递归查询”的解析。“递归查询”的基本含义就是在某个DNS服务器上查找不到相应的域名与IP地址对应关系时,自动转到另外一台DNS服务器上进行查询。通常递归到的另一台DNS服务器对应域的根DNS服务器。因为对于提供互联网域名解析的互联网服务商,无论从性能上,还是从安全上来说,都不可能只有一台DNS服务器,而是由一台或者两台根DNS服务器(两台根DNS服务器通常是镜像关系),然后再在下面配置了多台子DNS服务器来均衡负载的(各子DNS服务器都是从根DNS服务器中复制查询信息的),根DNS服务器一般不接受用户的直接查询,只接受子DNS服务器的递归查询,以确保整个域名服务器系统的可用性。当用户访问某网站时,在输入了网站网址(其实就包括了域名)后,首先就有一台首选子DNS服务器进行解析,如果在它的域名和IP地址映射表中查询到相应的网站的IP地址,则立即可以访问,如果在当前子DNS服务器上没有查找到相应域名所对应的IP地址,它就会自动把查询请求转到根DNS服务器上进行查询。如果是相应域名服务商的域名,在根DNS服务器中是肯定可以查询到相应域名IP地址的,如果访问的不是相应域名服务商域名下的网站,则会把相应查询转到对应域名服务商的域名服务器上。
现在假设要访问example.microsoft.com网站,整个递归查询过程如图1-1所示。具体步骤序列号和响应方向均已在图中标注。递归查询部分体现在(4)、(6)和(8)这3步。具体说明如下。
图1-1  递归过程示例
客户端发起访问后,首先由首选服务器分析全名,并确定顶级域“com”具有权威性控制的服务器的位置,于是通过图中的第(4)步递归到“com”DNS服务器,以便获取“.com”服务器的参考信息。这一步包括了图中的第(1)~(4)四步。
然后进一步分析,发现所访问的网址需要对一级域名microsoft.com域名位置进行确定,发送反馈信息,再通过图中的第(6)步继续使用递归查询递归到“microsoft.com”DNS服务器上,以便获取“microsoft.com”服务器的参考信息。本步骤包括图中的第(5)和第(6)两步。
再进一步分析又得到,所查询的服务器域名还包括二级域名“example”,继续反馈信息,来自“microsoft.com”服务器的参考性应答再通过图中的第(8)步递归到“example.microsoft.com”DNS服务器,以便获取“example.microsoft.com”服务器的参考信息。本步骤包括图中的第(8)和第(9)两步。
最后,与服务器“example.microsoft.com”联系上并解析后,因为再没有下级的域名了,所以它向启动递归的源服务器作出权威性地应答。当源服务器接收到表明已获得对请求查询的权威性应答的响应时,它将此应答转发给发出请求的客户端。本步骤包括图中的第(9)和第(10)两步。
通过以上10个步骤后,就完成了整个递归查询过程。
尽管执行上述递归查询过程可能需要占用大量资源,但对于DNS服务器来说它仍然具有一些性能上的优势。例如,在递归过程中,执行递归查询的DNS服务器,获得有关DNS域名空间的信息。该信息由服务器缓存起来并可再次使用,以便提高使用此信息或与之匹配的后续查询的应答速度。虽然打开与关闭DNS服务时,这些缓存信息将被清除,但是随着时间的推移,它们会不断增加并占据大量的服务器内存资源。
其实以上递归查询,在局域网中有相应的应用,如图1-2所示就是一个包括递归查询的完整名称解析过程图。其中的Q1,Q2,Q3…代表询问的顺序号;而A1,A2,A3…则代表对应上述询问顺序号的应答顺序号。
图1-2  完整的DNS查询过程
通过查询过程的初始步骤可知,DNS域名由本机的程序使用。该请求随后传送至DNS客户服务,以便使用本地缓存信息进行解析。如果可以解析查询的名称,则应答该查询,处理完成。当然要真正实施递归查询,必须在本地网络系统中配置多台DNS服务器,并且配置递归查询选项设置,如图1-3所示的对话框是在配置DNS服务器时打开的,在这里可以递归查询到服务器的地址;而如图1-4所示则是要在DNS服务器属性设置中禁用递归查询功能。
图1-3  递归查询服务器配置对话框

图1-4  DNS服务器属性对话框“高级”选项卡
声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/盐析白兔/article/detail/893953
推荐阅读
相关标签
  

闽ICP备14008679号