zoukankan      html  css  js  c++  java
  • 深入DNS

    什么是DNS?

    我说前面说过http如何发送请求。这里的第一步就是将域名变为ip地址

    如何将域名变为ip地址我们就得用到域名解析(DNS)。

    如何进行域名解析的?

    第一步:在浏览器的url里输入域名,然后浏览器会去自身缓存中检查有有没有这个域名对应的ip地址。如果有就获得了Ip地址。还有域名和ip都是可以变化的,所以缓存中的这个存放的时间无需太长和太短。

    第二步:如果用户的浏览器缓存中没有,浏览器会找操作系统是否有对应的ip。

    第三步:如果还有没找到,就会真正的请求域名服务器来解析域名

    第四步:先去找本地的域名解析服务器(LDNS)

    第五步:如果本地没有就去root      DNS server(根域名服务器)

    第六步:根域名服务器返回LDNS一个查询域的主域名服务器(gTLD server)地址、这个gTLD是国际顶级域名服务器。(gTLD)在全球只有13个左右。

    第七步:这样LDNS就可以向gTLD服务器发请求。

    第八步:gTLD服务器会解析这域名得到Ip地址和一个TTL值。

    第九步:然后把这一结果一次保存在他们下级的服务器中。

    第十步:解析的结果反给用户,本地还保留。

    所以通过上面的过程我们应该明白一点。这是一个逐级提交请求的过程。而且只要第一次解析成功了,以后就不用这么麻烦了。可以直接从本地获取解析的Ip。当然要保证ip地址和缓存中没有过期。而且为了防止ip地址改变,所以我们定期会对缓存进行清理。

    这就是我理解的DNS。

  • 相关阅读:
    自动化无线网破解工具wifite2
    用Python实现Excel的读写
    Python常见问题系列
    集群搭建
    redis进阶
    android中实现简单的聊天功能
    android中使用setOnKeyListener响应输入事件
    android中使用spinner组件,以key,value的方式
    android中使用spinner组件
    android中使用Nine-Patch图片
  • 原文地址:https://www.cnblogs.com/keanuyaoo/p/3395259.html
Copyright © 2011-2022 走看看