这是我参与「第三届青训营 -后端场」笔记创作活动的第4篇笔记。
DNS域名解析过程
在互联网中的管理规则其实跟图书馆的管理规则很像,都是通过层级去划分管理的。 以www.bilibili.com为例首先从左往右以www开始,www代表的就是主机名,访问mail.bilibili.com、member.bilibili.com是会跳转到不同的界面的
后面的bilibili.这个意思是上面三个mail、member、space都隶属与bilibili这个域名进行统一的管理,(类比qq也是一样的)
再后面的.com,也就是意思是bilibili.这个域名隶属与com域名来进行管理、当然.net、.cn同理
域名是以.来划分的,所以在域名的背后都是有一个.的,当然com属于一个域名后面肯定也是有一个点的,因为com这些域名都是由root去管理也就是.root我们就没必要去将root写上,同时也会将.省略就得到了我们平常经常使用的域名
这个根root仅仅只使用了13个域名,但注意是域名不是服务器,这13个域名在全世界上对应1467台服务器,那么也就是说这1467台服务器大多数的IP地址都是相同的因为只有13个域名,在这些服务器之间采用了一种任播的技术,这样当我们访问root节点服务器的时候就能够寻找到我们身边最近的一个root服务器
域名的分类
通过浏览器请求服务的过程
- 先看看浏览器中是否有这个IP地址的缓存,同时也要查找看本地主机文件中是否有对应的记录(host文件)如果有就直接返回结果
- 我们在进行域名解析的时候要调用一个解析器(这个解析器可以理解为一个代码的接口,我们只需要输入域名,就会返回一个IP地址)
- 然后解析器就会向本地DNS服务器发送请求(我们电脑中会有这台服务器的IP地址),这台本地DNS服务器一般由LSP负责管理
- 本地DNS服务器在收到请求后会查看自己的缓存,如果有就直接返回IP地址,并且会标注非权威
- 接下来的步骤就会由DNS服务器来完成,我们解析器只需要等待结果即可。