加入收藏 | 设为首页 | 会员中心 | 我要投稿 湖南网 (https://www.hunanwang.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 教程 > 正文

收集协议:从理论到实践,全方位熟悉DNS(理论篇)

发布时间:2019-06-19 06:03:14 所属栏目:教程 来源:Java从算法到架构
导读:对付 DNS(Domain Name System) 各人必定不生疏,不就是用来将一个网站的域名转换为对应的IP吗。当我们发明可以上QQ但不能赏识网页时,我们会想到也许是域名处事器挂掉了;当我们用别人提供的hosts文件赏识到一个不存在的网页时,我们会相识到域名理会体系的

这样,全部的域名资源记录都生涯在多个域名处事器中,而且全部的域名处事器也构成了一个条理的索引布局,便于我们后头举办域名理会。下面以一个简化的域名空间为例子,声名域名资源记录是怎样生涯在域名处事器中的,如下图a:

收集协议:从理论到实践,全方位熟悉DNS(理论篇)

域名处事器

图中域名空间分别为A, B, C, D, E, F, G七个DNS地区,每个DNS地区都有多个势力巨子域名处事器,这些域名处事器内里生涯了很多域名理会记录。对付上图的NDS地区E来说,它的势力巨子域名处事器内里生涯的记录如图中表格所示。

细心调查上图你也许会发明地区A、B并没有父地区,他们之间并没有一条路径连在一路。这将导致一个很贫困的题目,那就是地区A的势力巨子域名处事器也许基础不知道地区B的存在。熟悉到这一点后,你也许会想出一个很天然的办理方案,就是在A中记录B域名处事器的地点,同时在B中记录A的,这样它们两个就接洽起来了。可是思量到我们有高出250个顶级域名,这样做并不是很适当。

而我们行使的域名体系则回收了一种越发智慧的要领,那就是引入根域名处事器,它生涯了全部顶级地区的势力巨子域名处事器记录。此刻通过根域名处事器,我们可以找到全部的顶级地区的势力巨子域名处事器,然后就可以往下一级一级找下去了。下图为环球根域名处事器的漫衍图,可以在这里找到。

收集协议:从理论到实践,全方位熟悉DNS(理论篇)

顶级域名处事器

此刻为止,我们的势力巨子域名处事器和根域名处事器着实构成了一个树,树根为根域名处事器,下面每个节点都是一个地区的势力巨子域名处事器,对付图a中各个DNS地区的势力巨子域名处事器,它们构成了下面这棵树(现实中,一个势力巨子域名处事器也许生涯有多个DNS地区的记录,因此势力巨子域名处事器之间的接洽并不组成一棵树。这部门的具体内容可以参考RFC 1034: 4. NAME SERVERS。下面为了轻易领略,将其简化为一棵树):

收集协议:从理论到实践,全方位熟悉DNS(理论篇)

域名处事器树

域名理会

我们已经有了一个域名处事器集群,该集群公道地生涯了域名空间和域名资源记录的对应相关。此刻我们要做的就是发送一个DNS哀求给域名处事器,然后坐等它返回正确的域名资源记录,这个进程叫作域名理会。

严酷来说,域名理会的进程最早要追溯到成立收集毗连。由于每当毗连上收集之后,计较机遇自动得到一个默认的DNS处事器,虽然你也可以用本身信赖的DNS处事器,好比8.8.8.8(DNS处事器也有信赖不信赖之分,是的,实践篇会讲到),我们把这个域名处事器也叫作当区域名处事器。接下来当我们必要知道一个域名对应的资源记录时,会向当区域名处事器提倡哀求,假如该域名刚亏适当区域名处事器所辖属的域名地区(DNS zone)内,那么可以直接返回记录。

假如在当区域名处事器没有发明该域名的资源记录,就必要在整个域名空间搜刮该域名。而整个域名空间的资源记录存储在一个分层的、树状接洽的一系列域名处事器上,以是当区域名处事器起主要从根域名处事器开始往下搜刮。这里有一个题目就是当区域名处事器怎样找到根域名处事器在那边呢?着实域名处事器启动的时辰,就会加载一个设置文件,内里生涯了根域名处事器的NS记录(要知道根域名处事器地点一样平常很是不变,不会等闲改变,而且数目很少,以是这个设置文件会很小)。找到根域名处事器之后,就可以一级一级地往下查找啦。

如故以我们的图a为例,此刻假设地区E内的某个用户想会见math.sysu.edu.cn,那么哀求的进程如下:

收集协议:从理论到实践,全方位熟悉DNS(理论篇)

域名理会进程

用说话简朴描写如下:

1:用户:喂,当区域名处事器,汇报我math.sysu.edu.cn的地点;

2:当区域名处事器:哎呀,我不知道啊,不在我的辖区,容我去问问晚年迈吧。root老大,能汇报我math.sysu.edu.cn的地点吗;

3:根域名处事器:忙着呢,你去问B(.cn);

4:当区域名处事器:喂,B,汇报我math.sysu.edu.cn的地点;

5:B:你去问D(.edu.cn);

6:当区域名处事器:喂,D,汇报我math.sysu.edu.cn的地点;

7:D:你去问F(sysu.edu.cn);

8:当区域名处事器:喂,F,汇报我math.sysu.edu.cn的地点;

9:F:容老衲看看,哎呀,找到了,是X.X.X.X;

10:当区域名处事器:踏破铁鞋终于找到啦,喂用户,出来啊,我找到了,是X.X.X.X

细心想想,这和我们邮寄快递其实是千篇一致啊,假设你从美国邮对象到广州市番禺区,起首快递送到中国(不外这里没有一个相同根域名处事器的中转站罢了),然后往下到广东省,接下来是广州市,再往下是番禺了。

上面的是当区域名处事器的迭代理会进程,着实也可以递归查询,这里就不说了,原理差不多。

缓存机制

此刻整个域名体系已经可觉得我们提供域名理会处事了,当我们输入域名,计较机发送DNS哀求,然后DNS处事器返回给我们理会的功效,统统看起来很美满。然而是不是可以更美满呢?

回首一下平常赏识网站的环境,我们会发明两个较量故意思的结论:

1:80%的时刻我们都在看那些20%的网站,这就是台甫鼎鼎的80/20 Rule;

2:我们会在一个网站的差异网页之间跳转,也就是不绝地会见统一个域名,相同措施会见的局部性道理。

(编辑:湖南网)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

热点阅读