如何在 OS X El Capitan 中刷新 DNS 缓存

Anonim

如果您在 Mac 上调整 DNS 设置但更改似乎没有生效,或者您可能发现给定的名称服务器地址未按预期解析,刷新 DNS 缓存通常是一种快速解决方法。在 OS X El Capitan(10.11 或更高版本)中刷新 DNS 缓存可以通过命令行轻松实现,但如果您已经使用 Mac OS X 一段时间,您会再次注意到语法与某些语法不同Mac OS 的早期版本。这是因为Apple在暂时放弃mDNSResponder发现后重新采用了mDNSResponder,所以dscacheutil命令对于一些Mac用户来说可能很熟悉。

在OS X 10.11+中刷新DNS缓存

此清除DNS缓存的方法适用于所有运行OS X El Capitan版本的Mac,版本为10.11或更高版本:

  1. 打开终端应用程序,位于/Applications/Utilities/ 或使用Spotlight
  2. 在命令提示符下,输入以下语法,然后按回车键:
  3. sudo dscacheutil -flushcache; sudo killall -HUP mDNSResponder;说DNS缓存刷新

  4. 请求时输入管理员密码(sudo要求)执行DNS缓存清除
  5. 当您听到“DNS Cache flushed”时,您知道命令已成功

就是这样,DNS缓存将被刷新。您可能想要退出并重新启动使用 DNS 的应用程序,例如网络浏览器,以便将更改转移到连接到互联网的应用程序。

Web 开发人员、网络管理员通常需要清除本地 DNS 缓存,对主机进行准确详细的查找,以及编辑主机文件或调整域名设置以获得更快的服务器或其他目的的任何人。

如果您打算经常刷新DNS 缓存,在适当的.profile 中放置一个简单的别名可能有助于将来快速使用:

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

用户也可以删掉say部分并将命令分成几个部分,尽管一行通常是最简单的方法。

sudo dscacheutil -flushcache

然后单独启动mDNSResponder killall命令:

sudo killall -HUP mDNSResponder

走这条路线将不会提供任何命令已成功的听觉反馈。

这适用于最新版本的 OS X,而运行早期版本的 Yosemite 的用户可以在此处找到使用不同命令字符串获得相同效果的说明,旧 Mac OS X 版本的用户也可以像 Mavericks 和 Snow Leopard,甚至是尘土飞扬的 Tiger、Panther 和 Jaguar。在移动端,iPhone 和 iPad 用户也可以通过简单的技巧快速刷新 iOS 中的 DNS 缓存。

如何在 OS X El Capitan 中刷新 DNS 缓存