前言
我们在上一篇说到,IP 地址的发明把我们纷乱复杂的网络设备整齐划一地统一在了同一个网络中。
但是类似于 192.168.1.0
这样的地址并不便于人类记忆,于是发明了 域名(Domain Name) 来帮助解决这样的问题。
对应的,我们也需要一个系统来帮助"翻译":
Part 1. DNS 是什么?
DNS (Domain Name System 的缩写) 的作用非常简单,就是根据域名查出对应的 IP 地址,你可以把它想象成一本巨大的电话本。
换句话说,DNS 是将域名映射到响应 IP 地址的服务。
Part 2. DNS 是如何工作的?
DNS 是我们今天使用 Internet 的核心。
最新报告显示,2020 年第三季度有 3.71
亿个域名,如果没有 DNS 将其对应解析成对应的 IP 地址,我们将会在网络世界中迷路。
当宁想要使用手机打电话给某人,宁几乎不太可能背出确切的电话号码,而是直接使用此人的名字进行搜索和拨号。
当宁想要加载网站时,DNS 会执行类似的操作。
解析域名或者主机名需要经历几个不同的阶段。
在某些情况下,DNS 解析是一个一步就完成的过程,而某些情况下,则需要联系多个 DNS 服务器。
下图就展示了这一过程必要的步骤,并且没有考虑浏览器缓存:
过程可能有些复杂,为了便于理解,我们在进一步说明之前需要先说明两点:「DNS 服务器和域名的分级」 以及 「DNS 缓存」。