Post

一文看懂计算机网络原理

一文看懂计算机网络原理

DNS 查询

域名对应的 IP 地址,都保存在 DNS 服务器。我们输入域名,浏览器就会在后台,自动向 DNS 服务器发出请求,获取对应的 IP 地址。这就是 DNS 查询。

域名的树状结构

DNS 是一个分布式系统,1.1.1.1只是用户查询入口,它也需要再向其他 DNS 服务器查询,才能获得最终的 IP 地址。要说清楚 DNS 完整的查询过程,就必须了解域名是一个树状结构。

最顶层的域名是根域名(root),然后是顶级域名(top-level domain,简写 TLD),再是一级域名、二级域名、三级域名。

  1. 根域名。所有域名的起点都是根域名,它写作一个点.,放在域名的结尾。因为这部分对于所有域名都是相同的,所以就省略不写了,比如example.com等同于example.com.。任何一个域名结尾加一个点,浏览器都可以正常解读。
  2. 顶级域名。根域名的下一级是顶级域名。它分成两种:通用顶级域名(gTLD,比如.com.net)和国别顶级域名(ccTLD,比如.cn.us)。顶级域名由国际域名管理机构 ICANN 控制,它委托商业公司管理 gTLD,委托各国管理自己的国别域名。
  3. 一级域名。一级域名就是你在某个顶级域名下面,自己注册的域名。比如,google.com 就是谷歌在顶级域名.com 下面注册的。
  4. 二级域名。二级域名是一级域名的子域名,是域名拥有者自行设置的,不用得到许可。

域名的逐级查询

域名的树状结构的意义在于,只有上级域名,才知道下一级域名的 IP 地址,需要逐级查询。每一级域名都有自己的 DNS 服务器,存放下级域名的 IP 地址。所以,如果想要查询二级域名mail.google.com的 IP 地址,需要三个步骤。

  1. 查询根域名服务器,获得顶级域名服务器 .com(又称 TLD 服务器)的 IP 地址。
  2. 查询 TLD 服务器.com,获得一级域名服务器google.com的 IP 地址。
  3. 查询一级域名服务器google.com,获得二级域名mail.google.com的 IP 地址。
This post is licensed under CC BY 4.0 by the author.