如何在 Mac OS X 中刷新 DNS 缓存

目录:

Anonim

无论您是系统管理员还是 Web 开发人员,或者介于两者之间的任何人,您都可能不得不每隔一段时间刷新 DNS 缓存以理顺服务器端的事情,或者甚至只是为了测试某些配置。

在 Mac OS X 中刷新您的 DNS 缓存实际上非常简单,但实际上有几个不同的命令可以使用,您会发现这些命令对于不同版本的 Mac OS X 是唯一的。无论您运行的是什么版本的 Mac OS X,我们都能满足您的需求,从 MacOS Sierra 10.12、10.11、10.13、OS X 10.10、OS X 10.9,一直到 10.4。所以找到你的 OS X 版本,打开你的终端,然后按照下面的适当指示开始。

记住,这些命令中的每一个都必须通过终端应用程序(在所有版本的Mac OS X 中位于/Applications/Utilities/ 中)输入命令行。首先启动该应用程序,然后您可以根据需要复制并粘贴命令。

在 MacOS Monterey 12、macOS Big Sur 11 中刷新 DNS 缓存

在 macOS Monterey、Big Sur 和更新版本中,您可以使用以下命令行字符串刷新 DNS 缓存:

sudo killall -HUP mDNSResponder

在 MacOS 10.12 和 10.11 更新版本中刷新 DNS 缓存

对于Sierra、El Capitan 和更新的Mac OS 版本:

sudo killall -HUP mDNSResponder

在OS X 10.10 Yosemite中清除DNS缓存

运行优胜美地?在 OS X Yosemite 中清除 DNS 缓存再次发生变化,分为 MDNS 和 UDNS 或像我们将在下面使用的那样组合,这是需要的命令:

sudo discoveryutil mdnsflushcache;sudo discoveryutil udnsflushcaches;说刷新

如果您有兴趣,可以在此处阅读有关在 OS X Yosemite 中重置和刷新 DNS 缓存的更多信息。

在OS X 10.9 Mavericks中刷新DNS

这里是10.9如何刷新DNS缓存:

dscacheutil -flushcache;sudo killall -HUP mDNSResponder

您需要输入管理员密码才能完成此任务。如果您注意到,它结合了杀死 mDNSResponder 和标准 dscacheutil,使其成为一个两步过程,首先刷新缓存,然后在 OS X 中重新加载 DNS 处理,以便更改生效。

在OS X Lion (10.7) 和OS X Mountain Lion (10.8) 中刷新DNS 缓存

启动终端并输入以下命令,您将需要输入管理密码:sudo killall -HUP mDNSResponderote the dscacheutil still存在于 10.7 和 10.8,但清除 DNS 缓存的官方方法是通过杀死 mDNSResponder。您还可以在活动监视器中找到正在运行的进程。

如果您发现自己经常刷新DNS,一个有用的技巧是在您的.bash_profile 或您选择的shell 配置文件中为该命令字符串设置一个别名。一个简单的用于刷新缓存的 bash 别名可以是这样的:

alias flushdns='dscacheutil -flushcache;sudo killall -HUP mDNSResponder'

将其保存到.bash_profile 中,然后键入“flushdns”将避免在将来使用完整的命令字符串。

在Mac OS X 10.5、Mac OS X 10.6中刷新DNS缓存

启动终端并发出以下命令:dscacheutil -flushcache 全部完成,您的DNS 已被刷新。附带说明一下,dscacheutil 通常很有趣,值得一看,请尝试使用 -statistics 标志来获取一些统计信息。

在 Mac OS X 10.4 Tiger 和 10.3 中刷新 DNS

在终端中键入以下命令:lookupd -flushcache

就是这样,就是这样。现在您的 DNS 设置应该符合您的预期,您可以使用各种网络工具轻松验证这些设置,例如 http、ping、nslookup、traceroute、curl 或适合您特定情况的任何其他工具。

如果您发现某些东西无法正常工作并且 DNS 似乎没有更改,请验证您正在运行的 OS X 版本并使用适用于最新版本的命令。如果在那之后你仍然有问题,最好在不同的网络上尝试不同的机器(比如手机)来验证它不是远程服务器的问题。

如何在 Mac OS X 中刷新 DNS 缓存