探索浏览器(三)全世界的DNS服务器工作原理

1.DNS服务器的基本工作

基本工作就是根据客户端需要查询的域名和记录类型查找相关的记录,并向客户端返回响应消息(见图1.14)。其中来自客户端的查询消息包含3种:
(a)域名
服务器、邮件服务器(@后面的部分)的名称
(b)Class
早期Class是用来识别网络的信息。如今只有互联网这一种网络了,因此Class值永远表示互联网,即IN。
©记录类型
表示域名对应何种类型的记录。例如,类型为A,表示域名对应的是IP地址;类型为MX,表示邮件服务器。对于不同的记录类型,服务器的返回信息也不同。
例如:如果要查询 www.lab.glasscom.com 这个域名对应的 IP 地址,客户端会向 DNS 服务器发送包含以下信息的查询消息。
(a) 域名 = www.lab.glasscom.com
(b) Class = IN
(c) 记录类型 = A

【补充】
由于邮件服务也可以注册A类型域名,所以我们可以理解成域名之前已经绑定给了某个IP地址的某台具体设备。

图片.png

2.域名的层次结构

世界上服务器数量很多,如果保存在同一台DNS服务器中,一定会出现查询不到信息的情况。如果保存在多台DNS服务器中,会怎么保存?
①首先,DNS服务器中的所有信息都是以分层次结构保存。DNS域名都是用据点来分隔的,比如www.lab.glasscom.com,点代表不同层次的界限,越靠左层级越高。比如 www.lab.glasscom.com 这个域名如果按照公司里的组织结构来说,大概就是“com 事业集团 glasscom 部 lab 科的 www”这样。其中,相当于一个层级的部分称为域。因此,com 域的下一层是glasscom 域,再下一层是 lab 域,再下面才是 www 这个名字。
简而言之,就是将信息分布保存在多台 DNS 服务器中,这些 DNS 服务器相互接力配合,从而查找出要查询的信息。

3.寻找相应的DNS服务器并获取IP地址

①首先,域名按层级存放在不同的DNS服务器中。
图片.png

②客户端首先会查找最近的DNS服务器,由于该服务器没有存放查询域名的相关信息,所以需要从顶层开始向下查找。最近的DNS服务器保存了根域名DNS服务器(.),因此将客户端的查询消息转发给根域DNS服务器,然后这样一级级查找。
【补充】
①所有DNS服务器都存放了根域名DNS服务器地址
②有时候,一台DNS服务器可以管理多个域的信息,也就是上级域和下级域共享同一台DNS服务器。

4.通过缓存加快DNS服务器的响应

DNS服务器有一个"缓冲"功能,可以记住之前查询过的域名。如果要查询的域名和相关信息已经在缓存中,那么可以直接返回响应。当缓存中没有查询的域名,并会添加到缓存区中。另外,DNS服务器的缓存区也有时间限制,过期了就会删除。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值