西部数码域名论坛

标题: 域名查询过程 [打印本页]

作者: yingdei    时间: 2016-1-10 04:56
标题: 域名查询过程
本帖最后由 yingdei 于 2018-6-22 03:45 编辑

以用户在浏览器输入www.west.cn为例,我们详细说明一下实际域名查询过程:

1、用户输入www.west.cn,浏览器调用操作系统resolver发起域名查询,此处不考虑浏览器的域名缓存;resolver封装一个dns请求报文,并将其发给运营商分配的local dns地址(或者用户自己配置的公共dns);

2、local dns查询缓存,如果命中则返回响应结果;否则向根服务器发起查询;

3、根服务器返回com地址。每一层级的DNS服务器都有缓存,实际都是先查缓存,没有缓存才返回下级域,此处不再重复;

4、local dns查询com。com返回west.cn地址;

5、local dns查询west.cn,west.cn返回www.west.cn对应记录结果。


理论上讲域名查询有两种方式:

迭代查询 A问B一个问题,B不知道答案说你可以问C,然后A再去问C,C推荐D,然后A继续问D,如此迭代.....

递归查询 A问B一个问题,B问C,C问D… 然后D告诉C,C告诉B,B告诉A

上述过程中从resolver到递归DNS再到根的查询过程为递归查询,递归DNS到根、到com、到MonkeyKing.net的过程为迭代查询。

注意:递归查询需要从系统层面来看,很难单纯的说一台DNS实现了递归查询。



作者: 米叔    时间: 2016-1-10 05:12
学习了。
作者: leostudio    时间: 2016-1-10 06:10
谢谢分享。

作者: yingdei    时间: 2016-1-10 06:11
leostudio 发表于 2016-1-10 06:10
谢谢分享。

谢谢顶贴
作者: sweety    时间: 2016-1-10 11:44
顶顶           
作者: liuyingzhi    时间: 2016-1-10 23:24

学习了。
作者: 绝对零度    时间: 2016-1-10 23:59
辛苦了
作者: jinshenku.cn    时间: 2016-1-11 01:16
路过表示 表示

作者: yingdei    时间: 2016-1-11 01:19
jinshenku.cn 发表于 2016-1-11 01:16
路过表示 表示

谢谢你的支持




欢迎光临 西部数码域名论坛 (https://www.west.club/) Powered by Discuz! X3.4