DNS 解析-分布式层次结构&迭代递归查询示例

DNS:Domain Name System(域名系统)

 

1、存在的意义(即解决什么问题?)

简而言之:解决互联网上主机或者路由的识别问题

     在互联网上有多达到上亿的设备,而这些设备之间互相联通网络,每一台主机都需要一个唯一的标识符(就像是我们每个人都有一张身份证),而这个标识符就是IP地址,由于IP地址是数字,不利于我们人来使用,所以我们日常生活中使用的是域名,比如www.baidu.com,而域名和IP之间的映射我们就需要用到域名解析系统DNS。

2、分布式层次数据库

DNS 解析-分布式层次结构&迭代递归查询示例

如图,从上到下依次为:

  • 根域名服务器(root):如果本地域名服务器无法解析域名时,访问根域名服务器;而根域名服务器如果也不知道映射,会访问权威域名服务器获得映射,然后向本地域名服务器返回映射;(全球有13个根域名服务器)
  • *域名服务器(TLD):负责com、org、net、edu等*域名和国家*域名,例如cn、uk、fr等;
  • 权威域名服务器(Authoriative):组织的域名解析服务器,提供组织内部服务器的解析服务;

【注】本地域名服务器是什么?可以看到,它并不在分布式层次数据库这个结构内,它是从用户角度出发设定的一种域 名服务器,一般由本地 ISP 管理,距离用户不超过几个路由器距离,当主机进行DNS查询的时候,查询就会被发送到本地域名服务器;

例如:客户端想要查询www.yahoo.com的IP

首先,客户端查询根域名服务器,找到com域名解析服务器;

其次,客户端查询com域名解析服务器,找到yahoo.com域名解析服务器;

最后,客户端查询yahoo.com 域名解析服务器,获得www.yahoo.com的IP地址

 

3、DNS 迭代查询示例

例如:cis.poly.edu 主机想要获取gaia.cs.umass.edu的IP地址

【注】图片来源网络,侵权删

DNS 解析-分布式层次结构&迭代递归查询示例

也就是说,“我把这件事交给你,你能办多少,告诉我多少,我在你的基础上继续干,直到得到结果”;

4、DNS递归查询示例

DNS 解析-分布式层次结构&迭代递归查询示例

递归简而言之就是“这件事我交给你了,你办不完不要找我,我只要最终结果”