第一步:浏览器会检查缓存中是否有这个DNS对应的IP地址。如果浏览器缓存中有这个域名的缓存,这个解析过程就结束。域名被缓存的时间是由TTL控制的,Linux系统的TTL值为64或255,Windows NT/2000/XP系统的TTL值为128,Windows 98系统的TTL值为32,UNIX主机的TTL值为255。域名的dns解析默认的TTL值一般是60。TTL最大值为255,如UNIX操作系统的TT值初始默认TTL值就是225。不同的系统最大值也是有所不同,对于实验室环境所使用操作系统默认的TTL 最大值是128,所以要视情况而定。
第二步:如果浏览器中的缓存中没有,浏览器就会查找操作系统缓存中是否有这个域名对应的DNS解析结果。
第三步:如果操作系统缓存中也没有,操作系统会把这个域名发送给网络配置里的LDNS,,本地区的域名服务器。
第四步:如果LDNS中都没有,就直接到Root Server域名服务器请求解析。
第五步:根域名服务器返回一个所查询域的主域名服务器地址。gTLD是国际顶级的域名服务器。
第六步:本地域名服务器在向上一步返回的gTLD服务器发送请求。
第七步:接受请求的gTLD服务器查找并返回此域名对应的Name Server域名服务器的地址,这个通常就是你注册的域名服务器。
第八步:Name Server 域名服务器会查询存储的域名和IP的映射关系表,在正常情况下都根据域名得到目标的IP记录,连同一个TTL值返回给DNS Server 域名服务器。
第九步:返回该域名对应的IP和TTL值,LDNS会缓存这个域名和IP的对应关系,缓存时间由TTL控制。
第十步:把解析的结果返回给用户,用户根据TTL值缓存在本地系统缓存中,域名解析过程结束。