不同操作系统上DNS客户端操作区别汇总

Posted zhouhaibing

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了不同操作系统上DNS客户端操作区别汇总相关的知识,希望对你有一定的参考价值。

结论:windows有DNS缓存,Linux默认无DNS缓存,只能依赖于安装其他软件。

 

一、不同操作系统的客户端的DNS缓存差别

1、windows 系统中dns 解析器会使用系统的dns缓存来提高dns域名解析效率。

例如: 查看当前的dns cache内容,可以使用  ipconfig /displaydns

可以看到当前的dns缓存ip和TTL值

技术图片

 

2、清除当前的dns缓存内容,可以使用 ipconfig  /flushdns

 

3、参考这篇文档,windows默认的dns域名老化时间是5分钟。

http://www.itgeared.com/articles/1048-dns-resolver-cache-and-time-to-live-ttl/

 

 4、Linux上google了多次,最终得到一个结论,Linux上OS级别的DNS缓存。

https://stackoverflow.com/questions/11020027/dns-caching-in-linux

 

5、通过试验,可以很明显看到Linux上(Centos 7)无dns缓存。

(1)左右图是同一台物理机,安装了centos7。

(2)左边是发起ping 操作,每次ping 1个ip地址,右边是抓包,只抓dns 报文(udp 53)。

(3)左边虽然ping 3次,其实这3次之间间隔不超过1秒钟,可以看到右边是产生了3次的dns请求和回应报文。

 

技术图片

 

二、不同操作系统的客户端主动发起dns操作的命令区别

1、windows系统,使用命令 nslookup

技术图片

 

 

2、Linux系统,使用命令 dig

 技术图片

 

以上是关于不同操作系统上DNS客户端操作区别汇总的主要内容,如果未能解决你的问题,请参考以下文章

用 Raspberry Pi 架设加密 DNS 客户端

Windows Server 2016-客户端加域端口汇总

VMware ESXI6.0服务器安装系列:U盘安装问题汇总之网卡驱动定制

SpringBoot 操作 Redis的各种实现(Jedis、Redisson的区别比较)

BS架构和CS架构的区别

写给产品经理的技术书:客户端服务端和交互相关技术