03--DNS知识

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了03--DNS知识相关的知识,希望对你有一定的参考价值。

一、域名解析过程

1. 浏览器检查自身缓存,缓存时间为几分钟到小时不等,通过设置TTL属性确定。

2. 若1未找到,则查OS缓存,如windows下的host文件,linux的/etc/hosts文件。

3. 查询本地域名服务器LDNS,即系统配置的DNS服务器地址,一般为SPA(互联网应用提供商),即电信等,一般在你所在城市的某个角落。

4. 若LDNS未命中,则想RDNS(根域名服务器)发请求。

5. RDNS返回给LDNS一个所查询域的主域名服务器(gTLD server)地址。gTLD是国际顶级域名服务器,如com.cn.org等,全球有13台左右。

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

7. gTLD服务器查找并返回对应的NameServer地址,这个地址通常是你注册的域名服务器。

    例如你在某个域名服务提供商申请的域名,那么这个解析任务则由该域名服务提供商负责。

8. Name Server查询域名与IP的对应关系,正常会返回一个IP地址与TTL给LDNS。

9. LDNS会缓存这个结果和TTL(设置缓存时间)。

10. 将结果返回给用户,用户操作系统根据TTL值,也将该记录缓存到系统,域名解析结束。  

技术分享

二、跟踪域名解析过程

Linux下一般用dig,Windows下一般用nslookup。

技术分享

三、清除域名缓存

1. windows下,ipconfig /flushdns

2. linux下,/etc/init.d/nscd restart

3. Java中,JVM会缓存DNS结果,缓存在InetAddress类中。有2种缓存机制,一种缓存正确,一种缓存失败的解析结果。

    配置参数在  %JAVA_HOME%/lib/security/java.security中,配置项分别为networkaddress.cache.ttl和networkaddress.cache.negative.ttl,

    默认值分别为-1(永不失效)和10(缓存10秒)。

注意:使用InetAddress解析域名时,一定要使用单例模式,因为每创建一次InetAddress类,都要进行一次完整的域名解析过程,影响效率。

四、常用域名解析方式

技术分享

技术分享

 

 

 

 

   

 

以上是关于03--DNS知识的主要内容,如果未能解决你的问题,请参考以下文章

如何通过托管服务器Microsoft azure连接我的域(例如:www.xyz.com)? [关闭]

知识蒸馏综述: 知识的类型

jQuery 知识体系

特定领域知识图谱知识融合方案(实体对齐):商品知识图谱技术实战

3.知识图谱概念和相关技术简介[知识抽取知识融合知识推理方法简述],典型应用案例介绍国内落地产品介绍。一份完整的入门指南,带你快速掌握KG知识,芜湖起飞!

知识表示方法