DNS相关知识
- 根域名服务器(root-servers.org)是互联网域名解析系统(DNS)中最高级别的域名服务器,全球仅有13台根服务器。
- 部分根域名服务器在全球设有多个镜像服务器
- 任何域名解析都要经过这13台根服务器获得顶级索引,并不是说您访问 .com 会经过这些服务器,访问 .cn 就不经过这些服务器
- 每一个顶级域,不管是gTLD(通用顶级域),还是ccTLD(国别顶级域),它们都有自己的域名服务器(即该顶级域的NS记录)
域名解析的步骤
在输入网址后,域名解析通常所需步骤如下:
- 第一步:客户机提出域名解析请求,查找本地HOST文件后将该请求发送给本地的域名服务器。
- 第二步:当本地的域名服务器收到请求后,就先查询本地的缓存,如果有该纪录项,则本地的域名服务器就直接把查询的结果返回。
- 第三步:如果本地DNS缓存中没有该纪录,则本地域名服务器就直接把请求发给根域名服务器,然后根域名服务器再返回给本地域名服务器一个所查询域(根的子域)的主域名服务器的地址(例如请求域名为.com域,则返回负责.com域解析的主域名服务器——辅助服务器)。
- 第四步:本地服务器再向上一步返回的域名服务器发送请求,然后接受请求的服务器查询自己的缓存,如果没有该纪录,则返回相关的下级的域名服务器的地址。
- 第五步:重复第四步,直到找到正确的纪录。
- 第六步:本地域名服务器把返回的结果保存到缓存,以备下一次使用,同时还将结果返回给客户机。
文字可能很难理解,网民们是伟大的,看到这张图应该很形象的演示了上述过程:
本地DNS向其他DNS服务器发送的查询请求可能有:递归查询和迭代查询两种,示例如下:
迭代查询
转自:http://www.xiaoxiaozi.com/2013/04/23/2409/