如何清除 Win、Mac、Linux 计算机上的 DNS 缓存?

如何清除 Win、Mac、Linux 计算机上的 DNS 缓存?

如何清除 Win、Mac 和 Linux 计算机上的 DNS 缓存?

答案1

视窗

ipconfig /flushdns

Mac(OS X 10.5)

dscacheutil -flushcache

Linux

如果你正在使用神经胶质细胞

nscd -i hosts

在 Windows 中,您可以使用以下命令关闭客户端 DNS 缓存:

net stop dnscache

它将停止 DNS 缓存服务。下次重启时它将重新启动。

答案2

谷歌是这样回复的:

要在 Microsoft Windows(Win XP、Win ME、Win 2000)中刷新 DNS 缓存:-

- Start -> Run -> type cmd
- in command prompt, type ipconfig /flushdns
- Done! You Window DNS cache has just been flush.

要刷新 Linux 中的 DNS 缓存,请重新启动 nscd 守护程序:-

- To restart the nscd daemon, type /etc/rc.d/init.d/nscd restart in your terminal
- Once you run the command your linux DNS cache will flush.

要刷新 Mac OS X Leopard 中的 DNS 缓存:-

- type lookupd -flushcache in your terminal to flush the DNS resolver cache.
ex: bash-2.05a$ lookupd -flushcache
- Once you run the command your DNS cache (in Mac OS X) will flush.

要在 Mac OS X 中刷新 DNS 缓存:-

- type dscacheutil -flushcache in your terminal to flush the DNS resolver cache.
ex: bash-2.05a$ dscacheutil -flushcache
- Once you run the command your DNS cache (in Mac OS X Leopard) will flush.

答案3

Ubuntu 默认不安装缓存 DNS 服务器。考虑到您的路由器或 ISP 可能正在使用缓存 DNS 服务器,因此安装缓存 DNS 服务器似乎有点愚蠢。

如果您遇到问题并且没有运行 nscd,请尝试重置 DNS 递归查找链中的下一步。

答案4

一个小警告,如果您需要刷新 DNS 缓存,则在终端计算机上刷新它可能无法按预期工作。通常,终端计算机上的 DNS 缓存是从最近的 DNS 服务器获取的,该服务器通常位于您的主路由器/dhcp 服务器上。

这对于大多数人来说并不明显,但它可能解释了为什么当您尝试执行前面提到的 Linux DNS 缓存刷新时,您发现nscd它根本没有运行。(我已经很长时间没有看到默认运行这项功能的设置了)。

您需要检查网络的 dns 服务器/路由器/防火墙/调制解调器手册/用户界面以了解其工作原理。通常重新启动它们即可解决问题,但请注意,我见过一些在重新启动时记住 DNS 缓存的机器。

即便如此,当您正确完成上述所有操作时,您可能会直接继续前进,在第一次查看网络外部的最近跳跃(通常是您的 ISP,他们容易拥有过时的 DNS 缓存)时,使用错误条目污染您的 DNS 缓存。

相关内容