什么是DNS?

DNS 是域名系统的缩写,它由 解析器 和 域名服务器 组成,具有将 域名 解析对应 IP地址 功能的服务器,它包含所有主机的域名和对应的IP地址。

为什么要域名解析?

电脑和服务器之间的连接是通过唯一的IP地址来完成的,但IP地址并不便于记忆,就有了容易被记住的地址(域名)代替IP地址, 怎么将域名和IP关联起来呢?就有了DNS服务器将 域名 解析为对应的 IP 地址。

为什么要缓存域名解析?

浏览器在访问一个网站后,获取到网站域名的实际IP地址后会对其IP进行缓存,下一次访问就可以直接从本地缓存中查找,这样减少网络请求的损耗,缓解服务器压力。DNS服务器也会对之前解析过的域名进行缓存,以便下次有相同域名请求,直接放回缓存结果。

每种浏览器都有一个固定的DNS缓存时间,其中Chrome的过期时间是1分钟,在这个期限内不会重新请求DNS。

DNS 域名解析过程

①浏览器DNS缓存 > ②操作系统DNS缓存( HOST文件) > ③路由器缓存 > ④网络服务提供商缓存 > ⑤根域名服务器 > ⑥顶级域名服务器 > ⑦主域名服务器 > ⑧保存缓存到本地浏览器

注: ⑤-⑦ 是DNS服务器递归式查找域名,这里可能存在负载均衡导致每次IP不一样


参考文档