DNS域名分析

牧云@^-^@ 提交于 2019-12-29 23:09:24

【推荐】2019 Java 开发者跳槽指南.pdf(吐血整理) >>>

DNS域名解析步骤:

  1. 浏览器会先查找自己的缓存看看有没有对应域名的IP,缓存大小和时间都有限制
  2. 当浏览器没有对应的IP,再找系统的缓存,系统的缓存可以通过对应文件设置,如windows系统通过C:\Windows\System32\drivers\etc\hosts文件设置
  3. 当系统缓存也没有,会想网络配置中的DNS服务器发送请求,这个DNS服务器一般为LDNS(本地DNS)Server,LDNS Server通常是为你介入互联网的应用提供商,即电信或者联通,即使SPA;LNDS Server一般会缓存域名解析结果,缓存时间为域名的失效时间控制,大约80%的域名解析到这就结束了
  4. 如果LDNS Server也没有结果,将直接到Root Server域名服务器请求解析
  5. Root Server放回给LDNS Serber一个所查询的主域名服务器(gTLD Server)地址。gTLD是国际顶级域名服务器,如.com、.cn、.org等,全球只有13台左右
  6. LDNS Server再向gTLD Server发送请求
  7. gTLD Server返回域名对应的Name Server地址,这个Name Server通常就是你注册的DNS Server,如你在某个域名服务商申请的域名,那么这个域名解析任务就有这个域名提供商的服务器来完成
  8. Name Server查询返回IP以及TTL(Time to live)
  9. LDNS Server缓存映射,缓存时间有TTL控制
  10. 将解析结果返回给用,用户根据TTL缓存在系统缓存中

*Name Server可能有多级,所以7,8可能重复几次;解析过程可能有GTM负载均衡,也可能影响域名解析

 

 

Windows和Linux下都可以用nslookup查看域名解析结果,Linux下还可以用dig查询域名解析

*CentOS使用nslookup和dig需要yum install bind-utils, dig 域名 +track可以查看从根服务的详细解析

*windows下可以使用ipconfig/flushdns命令来刷新dns缓存,

标签
易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!