DNS 域名解析,是将易记的域名(如www.itjm.com)转换为网络通信必需 IP 地址的过程。依靠递归查询与迭代查询协作,搭配多级缓存,减少重复查询、提升访问效率。
关键概念
递归查询:设备只向本地 DNS 发送一次请求,由本地 DNS 全权完成所有查询,直接返回最终 IP 结果。
迭代查询:DNS 服务器逐级问路,上级服务器不直接给 IP,只返回下一级服务器地址,由本地 DNS 继续向下查询。
完整解析流程
浏览器访问 www.itjm.com
浏览器优先检索自身缓存与 Hosts 文件,存有有效 IP 则直接访问,无记录再向本地 DNS 服务器发送递归查询,申请解析域名 IP。
浏览器问本地DNS:www.itjm.com的 IP 是多少?
本地 DNS 服务器 :我先查一下,查到最终结果告诉你。
本地 DNS 服务器先检查自身缓存,若存有有效 IP 则返回给浏览器,浏览器直接访问;
若 IP 不存在,则向上级DNS服务器查询,上级DNS服务器若有有效 IP 则原路逐级返还给浏览器,并在自身缓存,若没有则继续向上级DNS服务器查询,依此深入。
按照DNS服务器的配置策略,当上述查询进行到某一级的时侯,发起迭代查询:
DNS 服务器问根服务器:.com顶级服务器的IP是多少?
[ 若已缓存.com 顶级服务器有效记录,无需询问根服务器,直接迭代访问.com 顶级服务器即可; ]
根服务器:.com顶级服务器的IP是xxx.xxx.xxx.xxx [全球13个务器写死在DNS服务器中,DNS服务器根据自身策略访问某个根服务器。DNS 早期标准UDP 单包最大 512 字节,刚好可以放13个IP]
DNS 服务器问.com顶级服务器:.itjm.com的权威 DNS 地址的IP是多少?
.com顶级服务器:.itjm.com权威 DNS 地址的IP是xxx.xxx.xxx.xxx [ 权威 DNS 服务器就是域名服务商给的用于解析的DNS ]
[ 若已缓存.itjm.com权威 DNS 服务器有效记录,无需询问根服务器、.com 顶级服务器,直接迭代访问.itjm.com权威 DNS 服务器即可; ]
DNS 服务器问.itjm.com权威 DNS 服务器:www.itjm.com的IP 是多少?
.itjm.com权威 DNS 服务器:www.itjm.com的IP 是 xxx.xxx.xxx.xxx
DNS 服务器把有效 IP 延原路逐级返还给浏览器,并在自身缓存。
浏览器与www.itjm.com建立连接,加载网页内容。

评论列表: