- 浏览器缓存查找:当用户在浏览器地址栏中输入网址时,浏览器会首先检查自身缓存中是否已经缓存了该域名对应的 IP 地址。如果已经缓存,浏览器将直接使用该 IP 地址进行访问。
- 本地 DNS 解析器缓存查找:如果浏览器缓存中没有找到相应的记录,浏览器会继续查找本地 DNS 解析器缓存中是否有该域名的映射关系。如果找到了,浏览器将直接使用该 IP 地址进行访问。
- 查找TCP/IP参数中的首选DNS服务器:如果本地DNS解析器缓存也没有找到相应的记录,浏览器会查找TCP/IP参数中设置的首选DNS服务器。这个服务器会被称为本地DNS服务器。
- 向本地 DNS 服务器发起解析请求:浏览器会向本地 DNS 服务器发起域名解析请求,本地 DNS 服务器会先检查自身缓存中是否有该域名的记录。如果有,本地 DNS 服务器将直接返回该记录。
- 向根域名服务器发起请求:如果本地 DNS 服务器缓存中没有找到相应的记录,它会向根域名服务器发起请求,询问该域名的顶级域名服务器。
- 获取顶级域名服务器信息:根域名服务器会返回该域名的顶级域名服务器的信息,本地 DNS 服务器再向该顶级域名服务器发起请求。
- 获取权威域名服务器信息:顶级域名服务器会返回该域名的权威域名服务器的信息,本地 DNS 服务器再向该权威域名服务器发起请求。
- 获取域名解析结果:权威域名服务器会返回该域名对应的 IP 地址,本地 DNS 服务器将这个结果返回给浏览器。
- 浏览器使用 IP 地址访问网站:浏览器根据获取到的 IP 地址访问相应的网站。
这个过程涉及到多个环节,包括浏览器缓存、本地 DNS 解析器缓存、TCP/IP 参数中的 DNS 服务器等,其目的是为了提高域名解析的速度和效率。
常见的DNS服务器
阿里
223.5.5.5
223.6.6.6
百度
180.76.76.76
腾讯
119.29.29.29
谷歌
8.8.8.8