码迷,mamicode.com
首页 > 其他好文 > 详细

DNS迭代查询和递归查询

时间:2015-03-11 02:00:18      阅读:383      评论:0      收藏:0      [点我收藏+]

标签:迭代递归查询

DNS的因特网标准是RFC 1034,1035,被设计成为一个联机的分布式数据库系统。

DNS规定,域名中的标号都是由英文字母和数字组成,每个标号不超过63个字符,也不分大小写,(例如,www.baidu.com或WWW.BaiDU.coM在域名中是等效的).标号中除了连接符(-)外不能使用其他的标点符号。  

根域名服务器 (root name server):根域名服务器是最高层次的域名服务器,也是最重要的域名服务器。所有的根域名服务器都知道所有的顶级域名服务器的域名和IP地址。根域名服务器是最重要的服务器,因为不管是哪一台本地服务器,若要对因特网上的任何一个域名进行解析,只要自己无法解析,就首先要求助于根域名服务器。在因特网上共有13个不同IP地址的根域名服务器,它们的名字是用一个英文字母命名,从a一直到m(前13个字母)。这些根域名服务器对应的域名分别是a.rootservers.net,...,m.rootservers.net。但请注意,根域名服务器的数目并不是13个机器,而是13套装置(13 installations)[W-ROOT].实际上截至2014年10月,全球有504台根服务器,被编号为A到M共13个标号大部分借由任播(Anycast)技术,编号相同的根服务器使用同一个IP,504台根服务器总共只使用13个IP,因此可以抵抗针对其所进行的分布式拒绝服务攻击(DDoS)。中国大陆在北京有两台编号为L的镜像,编号为F、I、J的镜像各一台,共5台;香港有编号为D、J的镜像各2台,编号为A、F、I、L的镜像各一台,共8台;台湾则有编号为F、I、J各一台,共3台。

任播:任播的IP数据包的终点是一组在不同地点的主机,但具有相同的IP地址,IP数据包交付给离数据源点最近的一个主机。

DNS迭代查询和递归查询的过程。

第一,主机向本地域名服务器的查询一般都是采用递归查询(recursive query)。如果主机所查询的本地域名服务器不知道被查询域名的IP,那么本地域名服务器就以DNS客户端的身份,向其他的根域名服务器发出查询请求报文(即替代该主机继续查询),而不是让该主机自己进行下一步查询。因此递归查询返回的查询结果或者是要查的IP,或者是报错,表示无法查询到所需要的IP地址。

第二,本地域名服务器向根域名服务器发出查询通常是采用迭代查询 (iterative query)。迭代查询的特点是:当根域名服务器收到本地域名服务器的迭代请求报文时,要么给出要查询的IP地址,要么告诉本地域名服务器:"你下一步应当向哪一个域名服务器进行查询"。

技术分享






本文出自 “Running” 博客,请务必保留此出处http://dg123.blog.51cto.com/4750342/1619178

DNS迭代查询和递归查询

标签:迭代递归查询

原文地址:http://dg123.blog.51cto.com/4750342/1619178

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!