问题描述
如何刷新Ubuntu 12.04 LTS的dns(GNU /Linux 3.2.0-23-通用x86_64)
已经尝试了许多形式的如何清除DNS缓存?和here也没有任何工作
最佳解决思路
如果尚未安装,请使用以下命令安装nscd
sudo apt-get install nscd
通过重新启动nscd来刷新Ubuntu中的DNS缓存
sudo /etc/init.d/nscd restart
次佳解决思路
根据这个SU答案“How to clear DNS cache in Ubuntu?”,Ubuntu默认不提供DNS缓存服务。但是,如果您手动安装了一个,则通常可以重新启动这些服务以清理缓存。以下是(source)的一些示例:
-
运行此命令以刷新DNS:
sudo /etc/init.d/dns-clean restart
-
用这个跟进上面的命令:
sudo /etc/init.d/networking force-reload
-
要刷新
nscd
DNS缓存:sudo /etc/init.d/nscd restart
-
要刷新
dnsmasq
DNS缓存:sudo /etc/init.d/dnsmasq restart
-
如果你使用BIND,这应该刷新DNS:
sudo /etc/init.d/named restart
要么
sudo rndc restart
要么
sudo rndc exec
BIND(> = v9.3.0)支持刷新来自特定域以及lan和wan视图的记录。 source示例:
sudo rndc flush
sudo rndc flushname askubuntu.com
sudo rndc flush lan
sudo rndc flush wan
参考资料