DNS域名解析过程

发布时间:2020-11-20 发布网站:脚本之家
前端之家收集整理的这篇文章主要介绍了DNS域名解析过程前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。

当在浏览器中输入URL时,DNS解析是怎样的的过程呢?

1. 当在输入URL后,浏览器会先检查缓存中是否有此域名对应的解析过的IP,若缓存中有,则解析结束;若无,则转第二步。

    浏览器缓存有大小和时间限制,域名被缓存的时间限制可以通过TTL属性来设置。

2. 若果浏览器的缓存中没有,浏览器会查找操作系统缓存中是否有这个域名对应的DNS解析结果。

 在Window中可以通过C:\Windows\System32\drivers\etc\hosts文件来设置,可以将任何域名解析到任何能够访问的IP地址,在Window7后,此文件为只读的;在Linux中这个文件为etc/hosts。

 注:第一步和第二步都是在本机完成域名解析,如果在本机中无法完成域名解析,就会请求域名服务器进行解析域名,转第三步。

3. 如果第一步和第二步都无法完成解析,操作系统就会把网络配置中的“DNS服务器地址”发给这里设置的LDNS(Local DNS Server,本地域名服务器)。

    LDNS一般都会缓存域名解析结果。缓存时间受域名失效时间限制,缓存空间不是域名时间失效的主要原因。

    大约80%的域名解析到这里都已经完成了。

 Window下通过ipconfig查看DNS服务器地址,Linux可以通过 cat  etc/resolv.conf进行查看。

4. 如果LDNS中没有,会直接到Root Server域名服务器请求解析。

5. 根域名服务器会返回给LDNS一个所查询域的主域名服务器(gTLD Server)。gTLD是国际顶级域名服务器,如.com,.cn等。

6. LDNS再向上一步返回的gTLD服务器发送请求。

7. 接受请求的gTLD服务器查找并返回此域名对应的Name Server域名服务器(通常为进行注册时的域名服务器)的地址。

8. Name Server域名服务器会查询存储的域名和IP的映射关系表。根据域名得到目标IP记录,连同一个TTL值返回DNS Server域名服务器。

9. 返回该域名对应的IP和TTL值。LDNS会缓存这个域名和IP的对应关系,缓存时间由TTL进行决定。

10. 把解析的结果返回给用户,用户根据TTL值缓存在本地系统缓存中,域名解析过程结束。

 

跟踪域名的解析过程

在windows和Linux都可以用nslookup命令来查询域名的解析结果。
在Linux下可以使用dig命令查询DNS解析过程。

清除缓存的域名

在Window下可以在命令行模式下执行ipconfig/flushdns命令来刷新缓存。

在Linux下可以使用etc/init.d/nscd/ restart来清除缓存。

 

总结


以上是前端之家为你收集整理的DNS域名解析过程全部内容,希望文章能够帮你解决DNS域名解析过程所遇到的程序开发问题。

如果觉得前端之家网站内容还不错,欢迎将前端之家网站推荐给前端开发程序员好友。

本图文内容来源于网友网络收集整理提供,作为学习参考使用,版权属于原作者。