有时,我需要对本地 DNS cachi 进行焦土清理。最常见的情况是我正在使用 OpenDNS,当一个名称无法解析时(它是我本地网络上的主机名,但没有运行),OpenDNS 将我发送到他们可爱的广告页面。然后一旦 DNS 问题得到解决,我仍在解析 OpenDNS。这实际上不再发生了,但是,偶尔,我只需要重新开始我的 DNS。
现在,如果您可能能够回答我的问题,我相信您会知道现代计算机到处都隐藏着 DNS 缓存。您的操作系统拥有它,您的浏览器拥有它,您的其他浏览器拥有它,如果您正在运行 DNSMasq(我是),那么您也必须清除它。所以我写了一个小shell脚本来清除大部分这些缓存,但是浏览器DNS缓存仍然需要手动完成。
在 Chrome 上,我转到 chrome://net-internals/#dns,然后单击“清除主机缓存”
在 Firefox 上,我确定有一个类似的过程,我只是不知道它是什么。
但是,我真的很想从命令行清除这两个,以便我可以将它们集成到我的 DNS-burninate 脚本中。这可以做到吗,如果可以,怎么做?
如果 Chrome 或 Firefox 提供命令行界面来执行此操作,那就太酷了。
如果没有,我假设 DNS 缓存存储在一个文件或一组文件中(这是真的,还是它们都存储在 RAM 中?)。如果我们能够识别这些文件并删除它们,也许会产生同样的效果?这会起作用,还是只是破坏一切?所说的文件在哪里?
还有其他想法吗?