当你在地址栏中输入一个网站——比如pcmag.com——你的电脑实际上并不知道该去哪里。相反,它在域名系统(DNS)服务器上查找该地址,该服务器将其与一个IP地址为您的电脑访问。
这就像你的朋友说“在Tom's Bistro见我”——如果你不知道Tom's Bistro在哪里,你可以在电话簿上查找地址,然后开车去那里。
然而,在你找到正确的地址之前,浏览电话簿可能要花很长时间。为了加快这个过程,您的计算机保存了其中的一些条目,以便以后访问。继续前面的比喻,这就像在便利贴上写下“汤姆的小酒馆——主街123号”。这可以让你的电脑导航到你已经访问过的网站,而不必每次都询问DNS服务器。不幸的是,在极少数情况下,这个缓存可能会导致问题。
也许您正在访问的站点更改了服务器,并且不再位于缓存地址,或者您有一些恶意软件试图将普通页面重定向到恶意站点。(如果你怀疑问题可能是恶意软件,你可能需要做个扫描其中一个工具)。不管是什么情况,你都可以“刷新”你的DNS缓存,从头开始,这样你的电脑就可以再次在DNS服务器上查找网址。
当然,这个过程不同于清除网页缓存从web浏览器。如果清除浏览器的缓存不能解决问题,下一步可能是清除DNS缓存。下面是如何在Windows和macOS上使用命令行完成此操作。(如果您使用的是Linux,则需要查找特定发行版的说明。)
在Windows上刷新DNS缓存
如果您使用的是Windows机器——任何Windows机器,甚至可以追溯到XP和更早的版本——只需一个简单的命令即可刷新DNS。单击“开始”菜单并键入“cmd”。右键单击命令提示符选项,选择“以管理员身份运行”。在出现的命令提示符窗口中,键入以下命令:
ipconfig / flushdns
如果成功,命令提示符将报告“成功刷新了DNS解析器缓存”。尝试再次访问有问题的网站,看看是否解决了问题。如果没有,网站可能会关闭,你可能会有无线网络的问题,或者您可能有一个更难以捉摸的网络问题需要跟踪。如果这是别人的电脑,你可以试试远程故障诊断.
在Mac上刷新DNS缓存
Mac用户需要运行一个快速的终端命令来清空DNS缓存,但该命令取决于您的macOS版本。首先,按Command+空格打开Spotlight并搜索“Terminal”。按“Enter”打开。
大多数现代版本的macos -从OS X Lion到澳门大苏尔-使用以下命令。将它输入终端并按Enter:
sudo dscacheutil -flushcache
如果你的操作系统是OS X 10.10.1、10.10.2或10.10.3,你需要运行以下命令:
Sudo discoveryutil udnsflushaches; Sudo discoveryutil mdnsflushaches
你不会看到任何命令的成功消息,但你可以检查有问题的网站,看看它是否解决了问题。如果没有,你必须尝试一下其他故障排除步骤.