1,DNS的工作原理

DNS的工作原理 DNS分为Client和Server,Client扮演发问的角色,也就是问Server一个Domain Name,而Server必须要回答此Domain Name的真正IP地址。而当地的DNS先会查自己的资料库。如果自己的资料库没有,则会往该DNS上所设的的DNS询问,依此得到答案之后,将收到的答案存起来,并回答客户。 DNS服务器会根据不同的授权区(Zone),记录所属该网域下的各名称资料,这个资料包括网域下的次网域名称及主机名称。 在每一个名称服务器中都有一个快取缓存区(Cache),这个快取缓存区的主要目的是将该名称服务器所查询出来的名称及相对的IP地址记录在快取缓存区中,这样当下一次还有另外一个客户端到次服务器上去查询相同的名称 时,服务器就不用在到别台主机上去寻找,而直接可以从缓存区中找到该笔名称记录资料,传回给客户端,加速客户端对名称查询的速度。例如: 当DNS客户端向指定的DNS服务器查询网际网路上的某一台主机名称 DNS服务器会在该资料库中找寻用户所指定的名称 如果没有,该服务器会先在自己的快取缓存区中查询有无该笔纪录,如果找到该笔名称记录后,会从DNS服务器直接将所对应到的IP地址传回给客户端 ,如果名称服务器在资料记录查不到且快取缓存区中也没有时,服务器首先会才会向别的名称服务器查询所要的名称。例如: DNS客户端向指定的DNS服务器查询网际网路上某台主机名称,当DNS服务器在该资料记录找不到用户所指定的名称时,会转向该服务器的快取缓存区找寻是否有该资料 ,当快取缓存区也找不到时,会向最接近的名称服务器去要求帮忙找寻该名称的IP地址 ,在另一台服务器上也有相同的动作的查询,当查询到后会回复原本要求查询的服务器,该DNS服务器在接收到另一台DNS服务器查询的结果后,先将所查询到的主机名称及对应IP地址记录到快取缓存区中 ,最后在将所查询到的结果回复给客户端 。 范例 我们举例说明,假设我们要查询网际网路上的一个名称为www.test.com.cn,从此名称我们知道此部主机在中国CN,而且要找的组织名称test.com.cn此网域下的www主机,以下为名称解析过程的每一步骤。 《Step 1》在DNS的客户端(Reslover)键入查询主机的指令,如: c:\ping www.test.com.cn pinging www.test.com.cn 【192.72.80.36】with 32bytes of data reply from 192.72.80.36 bytes time <10ms ttl 253 《Step 2》而被指定的DNS服务器先行查询是否属于该网域下的主机名称,如果查出改主机名称并不属于该网域范围,之后会再查询快取缓存区的纪录资料,查是否有此机名称。 《Step 3》查询后发现缓存区中没有此纪录资料,会取得一台根网域的其中一台服务器,发出说要找www.test.com.cn的Request。 《Step 4》在根网域中,向Root Name Server询问,Root Name Server记录了各Top Domain分别是由哪些DNS Server负责,所以他会响应最接近的Name Server为控制CN网域的DNS伺服主机。 《Step 5》Root Name Server已告诉Local DNS Server哪部Name Server负责.cn这个Domain,然后Local DNS再向负责发出找寻www.test.com.cn的名称Request。 《Step 6》在.cn这个网域中,被指定的DNS服务器在本机上没有找到此名称的的纪录,所以会响应原本发出查询要求的DNS服务器说最近的服务器在哪里?他会回应最近的主机为控制com.cn网域的DNS伺服主机。 《Step 7》原本被查询的DNS服务器主机,收到继续查询的IP位置后,会再向com.cn的网域的DNS Server发出寻找www.test.com.cn名称搜寻的要求。 《Step 8》com.cn的网域中,被指定的DNS Server在本机上没有找到此名称的记录,所以会回复查询要求的DNS Server告诉他最接近的服务器在哪里?他就回应最接近为控制test.com.cn的网域的DNS主机。 《Step 9》原本被查询的DNS Server,在接收到应继续查询的位置,在向test.com.cn网域的DNS Server发出寻找www.test.com.cn的要求,最后会在test.com.cn的网域的DNS Server找到www.test.com.cn此主机的IP。 《Step 10》所以原本发出查询要求的DNS服务器,再接收到查询结果的IP位置后,响应回给原查询名称的DNS客户端。 两种真正DNS的查询模式 有两种询问原理,分为Recursive和Interactive两种。前者是由DNS代理去问,问的方法是用Interactive方式,后者是由本机直接做Interactive式的询问。由上例可以看出,我们一般查询名称的过程中,实际上这两种查询模式都是交互存在着的。 递归式(Recursive):DNS客户端向DNS Server的查询模式,这种方式是将要查询的封包送出去问,就等待正确名称的正确响应,这种方式只处理响应回来的封包是否是正确响应或是说是找不到该名称的错误讯息。 交谈式(Interactive):DNS Server间的查询模式,由Client端或是DNS Server上所发出去问,这种方式送封包出去问,所响应回来的资料不一定是最后正确的名称位置,但也不是如上所说的响应回来是错误讯息,他响应回来告诉你最接近的IP位置,然后再到此最接近的IP上去寻找所要解析的名称,反复动作直到找到正确位置

DNS的工作原理

2,DNS服务器的工作原理是什么

DNS域名系统
DNS,Domain Name System或者Domain Name Service(域名系统或者余名服务)。域名系统为Internet上的主机分配域名地址和IP地址。用户使用域名地址,该系统就会自动把域名地址转为IP地址。域名服务是运行域名系统的Internet工具。执行域名服务的服务器称之为DNS服务器,通过DNS服务器来应答域名服务的查询。
解决方案就是采用DNS服务器系统。与主机表不一样,DNS服务器不依赖一个大型映射文件,DNS服务器只包含有限的信息,因为他们知道到哪里能找到他们想知道的域的细节。当DNS服务器得到对某个主机的请求,而该请求的主机又并不在其缓冲内,那么DNS服务器只是知道了这件事然后去询问知道答案的“某计算机”。这台计算机是一种授权服务器,负责维护DNS信息。如果某台服务器在被询问到其域内的某个地址时它可以确定地指出该地址存在,那么这台服务器就是所谓的授权服务器。      如果接触的服务器并不包含有关的域名信息,该服务器就会将请求传递给接触链路上更高级别的授权服务器,这样就形成了一系列查询直到最后找到需要的信息。实际上,这意味着请求可以被任意数量的服务器处理,在Internet上这种来来回回的行为每时每刻都在发生。最早发出请求的服务器将缓冲信息以满足未来的需求而无须向授权服务器再发请求。DNS服务器的管理员为这些信息设置了超时限制以避免缓冲中充满了名字请求的旧数据。      DNS转换不会花费太多的时间,但它确实增加了你的请求到达远端计算机的时间。你可以自己做个快速测试(虽然很简单):首先用域名,比如www.microsoft.com来访问对应的Web站点,然后用IP地址198.105.232.4再实验一下。如果你要这么做,则请务必关闭你的浏览器然后再重新打开以初始化新的会话;否则你不过是载入了页面的缓冲版本(记住装载页面的延迟原因可能来自许多因素,所以对结果要有所保留)。      DNS服务的最常用软件是Berkeley Internet Name Domain,也就是BIND,它源自U.C. Berkeley但现在则由Internet Software Consortium.负责。其最新版本4.9.3包含了标准的 Unix版本和附加的Windows NT 端口。BIND提供了解析器和名字服务器软件,解析器做实际的查询工作而名字服务器则提供响应。BIND将名字服务器分成三个部分:主服务器包含了有关一个域的全部数据;次服务器则有效地从主服务器拷贝DNS数据库;唯缓冲服务器通过缓冲查询来建立例外的DNS数据库。只有主服务器和次服务器才被当作涉及特定域的授权服务器。      要理解 DNS 服务器怎么操作就有必要理解域名层次本身。在这一层次的顶部是根域。这一域上的信息驻留在从整个Internet中所选的一些根服务器上。在根域下面是顶级域,也就是国家代码或机构代码。国家代码的例子有SG (新加坡)和CA (加拿大)等。而机构代码则包括众所周知的COM(商业机构)、EDU(教育机关)、GOV(政府机构)和NET(网络机构)等(注意在美国以外的顶级域通常是国家编码,但是基于美国的地点通常省略国家编码)。在顶级域下面是次级域(whitehouse.gov、microsoft.com、inforamp.net 等诸如此类),然后是第 3级域,等等等等向下以此类推。      如果你想在美国建立域名,那么你必须联系网络信息中心NIC。在它同意你的请求以前,你首先要保证你想要的名字还没被使用,其次要保证目前至少有 2台服务器可以提供新域名的服务。当 NIC 最后同意请求时,它将承认你的次级域,并将指向该名字的指针放到顶级域所在的服务器内。例如,如果你请求域名mybiz.com,那么你必须首先让Internet上的2 台名字服务器提供信息服务(你的 ISP的服务器能做到这一点),然后NIC 将把 mybiz 放到COM 域服务器系统内,其指针将指向那2台特定服务器。      一旦设置了适当的主域,你就可以增加所希望的任何数量的子域。你可能想要命名你的计算机为sales.mybiz.com,而另一台则被叫做techsupport.mybiz.com等等。这些工作可就不需要 NIC 的同意了,而且,事实上NIC也不管这事。但是,如果你想要任何人都能实际地访问你的子域,那么你最好将有关子域的信息尽快地放到上级域内。在特定的情况下,关于sales.mybiz.com 和 techsupport.mybiz.com 的IP信息必须放在mybiz.com服务器上。这一层次中的每台服务器都包含了一个DNS数据库,其入口被称作NS记录,每条这样的记录包含了域或子域的名字,此外还加上作为域或者子域服务器的主机的名字。在我们的例子中,我们将告诉根服务器它能在我们的 DNS 服务器上找到mybiz.com及其全部子域的信息,而这些信息则位于details.mybiz.com这台计算机上。      现在我们来看看这一切是如何运作的。某所大学的某人在指向你的最新子域的网页上看见了一个链接 techsupport.mybiz.com。然后她点击该链接,于是她的本地DNS 服务器(很可能位于这所大学的某台计算机上)开始工作。首先,服务器搜索它自己的 DNS数据库以转换信息,但是,因为它以前从来没遇见过 techsupport.mybiz.com,所以服务器没有该域存在的记录而且不能解析IP地址。不过,它的 DNS 数据库包含了一个根服务器的地址(所有的 DNS 服务器必须设置该索引)。于是本地 DNS 服务器就到Internet上查询该根服务器。根服务器在其DNS 数据库里查找COM 顶级域,然后它用NS 记录回复该大学的 DNS 服务器,告诉它可以从details.mybiz.com 处查询到mybiz.com 的信息。大学的服务器就这样做了,而且从 details.mybiz.com那里知道了techsupport.mybiz.com 的对应IP 地址。在这一过程中最根本的阶段是,大学的DNS 服务器缓冲了该 NS 记录,结果下次该大学的任何人在需要涉及到mybiz.com、details.mybiz.com 、ortechsupport.mybiz.com等对应的IP地址转换时,相关信息在本地即可获得。      正如其他的Internet协议一样,DNS由几个Internet的RFC(请求评论)规范(最初是RFC 882、883和973)。不过要理解DNS 服务器的工作原理最好的标准还是RFC 1035。你可以在Internet上的好几个地方找到RFC 1035,比如在 http://www.crynwr.com/crynwr/rfc1035/ 就有一个不错的HTML 版本。正如你可能想到的那样,RFC具有相当的技术性,你不大可能会对超出DNS 服务器一般操作的细节感兴趣。但是如果你想做个服务器管理员,那么就记住 RFC吧。
DNS是指:域名服务器(Domain Name Server)。在Internet上域名与IP地址之间是一一对应的,域名虽然便于人们记忆,但机器之间只能互相认识IP地址,它们之间的转换工作称为域名解析,域名解析需要由专门的域名解析服务器来完成,DNS就是进行域名解析的服务器。 在域名注册机构注册DNS的步骤及其注册的有关规定是什么? 目前国际域名的DNS必须在国际域名注册商处注册,国内域名的DNS必须在CNNIC注册,这两种注册我公司都提供。 条件:如果注册国际DNS服务器的,dns服务器的名称必须是在我公司注册的国际英文域名才能注册,有独立IP地址,DNS服务器域名前的前缀最好是dns.、ns.等 详见: www.lx360.net支持中心

DNS服务器的工作原理是什么


文章TAG:dns原理  DNS的工作原理  
下一篇