Answers:
在mDNSResponder
跑步吗?即使是这样,请尝试执行a sudo killall mDNSResponder
并让其launchd
自动重新启动。(如果您已经尝试过重新引导系统并且问题仍然存在,那么这可能不是原因。)
如今,mDNSResponder是Mac OS X的DNS解析器基础结构的关键部分。一些工具nslookup
包含其自己的DNS解析器代码或调用避免使用mDNSResponder的低级API,并使用更传统的Unix DNS解析器库,但是大多数仅调用普通API的应用和工具将依靠mDNSResponder进行名称解析。
您可能还需要检查如何在“系统偏好设置”的“网络”面板中配置DNS,然后进行查看/etc/resolv.conf
(注意:“ resolv”中没有“ e”)。ipconfig getpacket en0
(用主要网络接口的BSD层标识符替换en0)对于查看您的计算机从DHCP获取的DNS服务器信息很有用。有关mDNSResponder(8)
从mDNSResponder获取故障排除/调试信息的更多提示,另请参见手册页的“记录”部分。
我发现在我的许多Mac(好吧,Hackintoshes)上,此问题的根本原因是休眠/挂在磁盘上。如果失败,则在下次启动时,mDNSResponder处于损坏状态,并且该sudo killall mDNSResponder
命令对其进行了修复。
也许您已经在Mac设置中手动指定了DNS服务器?请检查此处显示的设置,删除那里可能存在的所有DNS服务器,替换为接入点IP(甚至将其保留为空,应通过DHCP设置DNS)。
由于此关键但文档不足的命令在MacOS的不同版本中发生了令人发指的变化,因此我将复制并粘贴到以下超级有用的参考列表下方
Neil Gee撰写的“地球上最酷的指南” https://coolestguidesontheplanet.com/clear-the-local-dns-cache-in-osx/
如何清除本地DNS缓存(当URL只是无法解决您想要的方式时)
sudo killall -HUP mDNSResponder
(OSX 10.10.4、10.11.0,macOS Sierra 10.12.0)
sudo discoveryutil mdnsflushcache
(OSX 10.10.0 – 10.10.3)
sudo killall -HUP mDNSResponder
(OSX 10.9、10.8、10.7)
sudo dscacheutil -flushcache
(OSX 10.5,10.6)并且还包括Windows和Linux