【网络是怎么连接的】—— 1.3 全世界 DNS 服务器的大接力

目录

1.3 全世界 DNS 服务器的大接力

1.3.1 DNS 服务器的基本工作

1.3.2 域名的层次结构

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

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


1.3 全世界 DNS 服务器的大接力

1.3.1 DNS 服务器的基本工作

DNS 服务器的基本工作:接收来自客户端的查询消息,根据消息的内容返回响应。

来自客户端的查询消息包含以下 3 种信息:

  • 域名:web服务器、邮件服务器(如@qq.com)
  • Class:最早设计DNS时考虑了除互联网外的其他网络,但没用到。
  • 记录类型:例如类型A(Address的)表示域名对应IP地址,类型MX(Mail eXchange,邮件交换)表示域名对应邮件服务器。

如查询 www.blog.csdn.net 的ip,客户端向DNS发送包含以下信息的查询信息:

  • 域名=www.blog.csdn.net 
  • Class=IN(只有互联网一个网络,所以全为IN)
  • 记录类型=A

DNS服务器查询到了匹配以上3个信息的记录则返回对应ip给客户端。

当记录类型为 MX 时,DNS 服务器会在记录中保存2种信息,分别是邮件服务器的域名优先级。此外,MX 记录的返回消息还包括邮件服务器的ip地址。


1.3.2 域名的层次结构

互联网中服务器太多,不可能把名称和ip只存放在一台DNS服务器里(也不可能放一台里,万一炸了岂不是全球断网是吧?)一定会出现在 DNS 服务器中找不到要查询的信息的情况。

当DNS服务器中找不到要查询的信息时DNS怎么工作?

信息分布保存在多台 DNS 服务器中,DNS 服务器相互接力配合。

信息是如何在 DNS 服务器上注册并保存的?

DNS 服务器中的所有信息都是按照域名分层次的结构来保存的,在域名中,越靠右的位置表示其层级越高,用句号 . 进行分隔。

比如 www.nikkeibp.co.jp 这个域名,jp 代表分配给日本这个国家的域;co 是日本国内进行分类的域,代表公司; nikkeibp 是分配给某个公司的域; www 则是服务器的名称。下级的域称为“子域”。

一个域的信息作为一个整体存放在 DNS 服务器中,不能拆开存放在多台 DNS 服务器中。


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

如何找到要访问的 Web 服务器的信息归哪一台 DNS 服务器?

将负责管理下级域的 DNS 服务器的 IP 地址注册到它们的上级 DNS 服务器中,然后上级 DNS 服务器的 IP 地址再注册到更上一级的 DNS 服务器中,以此类推,这样就可以通过上级 DNS 服务器查询出下级 DNS 服务器的 IP 地址。

在互联网中,com 和 jp 的上面还有一级域,称为根域。根域的 DNS 服务器信息保存在互联网中所有的 DNS 服务器中,因此,客户端只要能够找到任意一台DNS 服务器,就可以通过它找到根域 DNS 服务器再往下找。分配给根域 DNS 服务器的 IP 地址在全世界仅有 13 个。只要安装了 DNS 服务器程序,根域服务器信息也会被自动配置好、


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

有时候并不需要从最上级的根域开始查找,因为 DNS 服务器有一个缓存功能。如果要查询的域名和相关信息已经在缓存中,那么就可以直接返回响应,接下来的查询可以从缓存的位置开始向下进行。当要查询的域名不存在时,“不存在”这一响应结果也会被缓存。

但是,原本的注册信息可能会改变,导致缓存信息出错。因此,DNS 服务器中的信息设置有一个有效期,超出有效期,数据会从缓存中删除。另外,在对查询进行响应时,DNS 服务器也会告知客户端响应的结果是来自缓存中还是来自负责管理该域名的 DNS 服务器。


本节完。

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值