DNS完整的查询过程

52 阅读2分钟

DNS服务器解析域名的过程:

首先会在浏览器缓存中查找对应的ip地址,如果找到了就直接返回,找不到就继续下一步。

然后会将客户端的请求发送给本地dns服务器,在本地域名服务器缓存中查询,如果查到了就直接返回,查不到就继续进行下一步。

然后本地DNS服务器向根域名服务器发送请求,根域名服务器会返回查询到的顶级域名服务器的地址

然后本地DNS服务器向顶级域名服务器发送请求,顶级域名服务器就会查询自己的缓存,如果有记录,就返回对应的ip地址,如果没有就返回权威域名服务器的地址

然后本地DNS服务器就权威域名服务器发送请求,权威域名服务器返回对应的ip地址。

然后本地DNS服务器将返回ip地址保存在缓存中,便于下次使用

最后本地DNS服务器将返回的ip地址给浏览器。

🌰 案例:解析 www.shoes.nike.com 的全流程

步骤操作场景具体比喻结果
1. 查浏览器缓存你打开浏览器输入网址,浏览器翻自己的「小本本」📔(缓存)就像你先翻自己的备忘录,看是否记过这个电话❌ 没找到记录
2. 查本地DNS服务器浏览器问你的运营商DNS(比如中国电信的61.147.37.1就像你打电话问114查号台:“Nike鞋类官网电话多少?”❌ 114接线员第一次查,没记录
3. 问根域名服务器本地DNS问根服务器(全球13组之一):“.com后缀的顶级域名服务器是谁?”类似114问国家邮政总局:“.com后缀的快递归哪个分拣中心管?”✔️ 根回答:「你去问.com的顶级域名服务器,地址是`198.41.0.4」
4. 问顶级域名服务器本地DNS联系.com顶级服务器:“nike.com的权威服务器是谁?”114问.com分拣中心:“耐克公司的包裹该送到哪个城市?”✔️ 顶级回答:nike.com的权威服务器是`205.251.198.3」
5. 问权威域名服务器本地DNS找到nike.com的权威服务器:“www.shoes.nike.com的IP是多少?”114问耐克总部前台:“鞋类分站的具体地址是哪里?”✔️ 权威回答:「IP是`96.127.164.15」
6. 本地DNS缓存结果本地DNS把www.shoes.nike.com → 96.127.164.15记在小本本上(缓存24小时)114接线员把号码记在常用号码簿,下次秒回✅ 缓存生效
7. 返回浏览器本地DNS告诉浏览器IP,浏览器开心地连接网站你终于拿到号码,拨通了电话🎉 访问成功