• 【深入分析JavaWeb】-DNS域名解析


            互联网都是通过URL来发布和请求资源的,而URL(Uniform Resource Locator)中的域名需要解析成IP地址才能与远程主机建立连接,如何将域名解析成IP地址就属于DNS解析的工作范畴.在平常上网的时候,可能感觉不到DNS解析,但是一旦DNS解析出错,可能会导致非常严重的互联网灾难.

    DNS域名解析过程:



    DNS域名解析过程:

    当用户在浏览器中输入www.baidu.com时,DNS解析将会有10个步骤.

    第一步:浏览器会检查缓存中有没有这个域名对应的解析过的IP地址,如果缓存中有,这个解析过程就将结束.

    第二步:如果用户的浏览器中没有,浏览器会查找操作系统缓存中是否有这个域名对应的DNS解析结果.

            操作系统有一个域名解析的过程,在windows中可以通过C:WindowsSystem32driversetchosts文件来设置,你可以将任意域名解析到任何能够访问的IP地址.如果你这里指定了一个域名对应的IP地址,那么浏览器会首先使用这个IP地址.当解析到这个配置文件中的某个域名时,操作系统会在缓存中缓存这个解析结果,缓存的时间同样是受这个域名的时效时间和缓存的空间大小控制的.

    第三步:在我们的网络配置中都会有"DNS服务器地址"这一项,这个地址就用于解决前面所说的如果两个过程无法解析时要怎么办,操作系统会把这个域名发送给这里设置的LDNS,也就是本地区的域名服务器.

    例如:如果你是在学校连入互联网,你用的就是学校的DNS服务器.可以通过ipconfig这个命令查看DNS地址.



    第四步:如果LDNS仍然没有命中,就直接到Root Server(根服务器)域名服务器请求解析.

    第五步:根域名服务器返回给本地域名服务器一个所查询域的主域名服务器(gTLD server) 地址.gTLD是国际顶级域名服务器,如com,cn,org等.

    第六步:本地域名服务器(Local DNS Server)再向上一步返回的gTLD(通用顶级域)服务器发送请求.

    第七步:接受请求的gTLD服务器查找并返回此域名对应的Name server域名服务器的地址,这个Name Server通常就是你注册的域名服务器.

    第八步:NameServer域名服务器会查询存储的域名和IP的映射关系表,在正常情况下都根据域名得到目标IP记录,连同一个TTL值返回给DNSserver域名服务器.

    第九步:返回该域名对应的IP和TTL的值,LocalDNS Server会缓存这个域名和IP对应关系,缓存时间由TTL值控制.

    第十步:把解析的结果返回给用户,用户根据TTL值缓存到本地系统缓存中,域名解析过程结束.

    跟踪域名解析过程

    在linux和windows下都可以通过nslookup命令来查询域名的解析结果.

    清除缓存的域名

            DNS域名解析后会缓存解析结果,主要有两个地方缓存结果,一个是本地的DNS server,一个是用户的本地机器.在windows下可以在命令行模式下执行ipconfig/flushdns命令来刷新缓存.


              深入web请求过程之DNS域名解析,首先要了解DNS域名解析的过程,了解一些关于DNS的命令.
  • 相关阅读:
    【Android Studio安装部署系列】三十六、从Android Studio3.1.4升级到Android studio3.2【以及创建android p模拟器(未成功)】
    Android Studio升级到3.1.4后打开旧项目警告:The `android.dexOptions.incremental` property is deprecated and it has no effect on the build process.
    Activity、Fragment、Dialog基类简单整理
    Android项目目录结构模板以及简单说明【简单版】
    【Android Studio安装部署系列】四十、Android Studio安装Statistic插件(统计项目总行数)
    java对象池化技术
    Java中的常量池(字符串常量池、class常量池和运行时常量池)
    Java进阶——Java中的字符串常量池
    字符串常量池深入解析
    资源对象的池化, java极简实现,close资源时,自动回收
  • 原文地址:https://www.cnblogs.com/chenxiaochan/p/7237545.html
Copyright © 2020-2023  润新知