手动刷新dns缓存的方法

一、Windows 客户端
获得缓存中的DNS :
ipconfig /displaydns
强制清除DNS 缓存:
ipconfig /flushdns
如果您觉得DNS Client服务带来麻烦,可以用在控制面板----服务 中停止,或使用下面的命令停止该服务:
net stop dnscache
重启动DNS Client服务:
net start dnscache
二、Linux 客户端
开启本地DNS 缓存的服务。
# chkconfig --list|grep nscd
nscd 0:关闭 1:关闭 2:关闭 3:关闭 4:关闭 5:关闭 6:关闭
该服务除了提供DNS 缓存外,可提供NIS 加速的作用。
启动本地DNS 缓存服务即可:
# service nscd start
反之
# service nscd stop
需要注意的是,在linux下没有强制清除DNS缓存的命令。但是,我们可以通过删除其后台数据库记录信息,达到清除DNS缓存的目的:
# rm /var/db/nscd/hosts
# service nscd restart
三、Linux Bind 服务
有时候,我们的客户端是处于某台DNS 缓存服务器后面的。常见的情况是,作为NAT 网关的Linux 服务器,通过bind 服务,提供DNS 缓存和转发功能。这可通过配置/etc/named.conf,加入forward来实现:
options {
directory "/var/named";
dump-file "/var/named/data/cache_dump.db";
statistics-file "/var/named/data/named_stats.txt";
forward only;
forwarders {
202.106.0.20;
};
};

这时,客户端对外的DNS 解析结果,除保留在客户端本地的DNS 缓存中,同样会保留在这台网关服务器上。还有一种情况就是,当我们修改named 提供的DNS服务时,也需要刷新缓存。
bind 提供的rndc 命令可以清空缓存的功能:
# rndc flush

参考文档
linux的dns缓存,NSCD服务
https://my.oschina.net/phptiger86/blog/138507

© 2017, 新之助meow. 原创文章转载请注明: 转载自http://www.xinmeow.com

0.00 avg. rating (0% score) - 0 votes
点赞