如何清除 Ubuntu 中的 DNS 缓存?

如何清除 Ubuntu 中的 DNS 缓存?

我在 Ubuntu 9.10 中遇到了与 DNS 解析相关的问题。
在向我的 ISP 投诉之前,我想刷新我的本地 DNS 缓存,就像我们在 Windows 中所做的那样ipconfig /flushdns

我如何在 Ubuntu 中做到这一点?

答案1

哦,Ubuntu没有默认缓存 DNS。所以没有什么可清除的!(但也许你的 SOHO 路由器需要)。安装 nscd 将使 ubuntu 缓存 DNS,之后你可以清除缓存 - 但这不是重点,如果你还没有安装它!

答案2

Ubuntu 12.04 及以上版本使用 dnsmasq 作为本地缓存。向其发送 SIGHUP(sudo killall -HUP dnsmasq)将重新读取缓存。

注意事项
当收到 SIGHUP 时,dnsmasq 会清除其缓存,然后重新加载 /etc/hosts 和 /etc/ethers 以及由 --dhcp-hostsfile、--dhcp-optsfile 或 --addn-hosts 给出的任何文件。将为所有现有 DHCP 租约调用 dhcp 租约更改脚本。如果设置了 --no-poll,SIGHUP 还会重新读取 /etc/resolv.conf。SIGHUP 不会重新读取配置文件。

答案3

请尝试以下操作:

sudo /etc/init.d/dns-clean start

这个对我有用。

答案4

根据问题的内容,您可能还需要清除网络浏览器的缓存。

在 Firefox 中,可以通过以下方式完成:偏好设置 -> 隐私 -> 清除最近的历史记录 [只需勾选那里的“缓存”复选框即可]

在 Chrome 中:导航至 chrome://net-internals/#dns 并按“清除主机缓存”按钮。(请参阅另一个答案

相关内容