从输入网址到网页呈现,第一步就是通过DNS该网址解析成IP地址。
1.首先,浏览器会查询缓存中是否有与该域名对应的IP地址,如果有,解析结束。
2.如果在浏览器缓存中查找不到,浏览器会查询操作系统缓存是否有与该域名对应的IP地址,如果有,解析结束。
3.如果在操作系统缓存中也查找不到,浏览器向本地DNS服务器发起解析请求,解析程序把待解析的域名放在DNS请求报文中,以UDP用户数据的方式发给本地DNS服务器,进行递归查询。
4.本地DNS服务器收到请求后,先查询本地缓存,如果查找到与该域名对应的IP地址,直接将查询结果返回。
5.如果本地DNS服务器中没有对应的记录,本地DNS服务器便会发起迭代查询,首先查询根域名服务器。
6.根域名服务器返回给本地DNS服务器包含下一级域名的DNS服务器的IP地址,本地DNS服务器根据这个IP地址访问下一级DNS服务器,再得到下一级域名的信息的DNS服务器地址。
7.按上述方法迭代查询。直到在含有目标域名的DNS服务器上找到相对应的IP地址。
8.本地DNS服务器缓存域名与IP地址的对应关系(缓存时间由TTL值控制),并将查询结果返回浏览器。
9.浏览器根据IP地址访问目标主机,并将域名与IP地址的对应关系保存在缓存中(缓存时间由TTL值控制)。