Mac OS X DNS查找永远来自Safari和其他使用mDNSResponder的应用程序。如果我从命令行使用nslookup,则相同的查找工作正常,并且在同一无线网络上的iPhone和iPad上,这些查找工作也正常。
那只是在网络上工作;当我在家或与iPhone绑定时,所有DNS查找都可以正常工作。当我通过Wi-Fi或以太网在工作中的网络上时,会遇到这些问题。我尝试使用以下命令:
launchctl unload /System/Library/LaunchDaemons/com.apple.mDNSResponder.plist
launchctl load /System/Library/LaunchDaemons/com.apple.mDNSResponder.plist
过去在Snow Leopard下提供了一些暂时的缓解(分钟),但是现在在Lion的帮助下,它通常根本无法提供任何帮助。
我的以太网和Wi-Fi设置均未指定DNS服务器;它们是从路由器自动填充的。但是我尝试指定自己的名称,例如Google DNS或OpenDNS,但这不能解决问题。
网络设置是将路由器插入电缆调制解调器中,而办公室中的所有以太网端口均已断开。Airport Extreme wifi路由器也已插入主路由器(以桥接模式),并且WiFi客户端连接到该路由器。
我已经四处搜寻,发现其他一开始似乎适用的事物(例如DNS查找失败,但nslookup可以工作),让我认为这些mDNSResponder问题并不是很常见,但是它们都不完全匹配,解决方案也没有还为我工作。
另外:它不是每个DNS查找,只是大多数。Google搜索会立即出现,但Google Maps需要花很长时间才能加载(当我查看活动窗口时,通常是脚本,而并非来自某些Google CDN服务器的内容)。即使是我们每天都在使用的网站,您可能会认为它们会被缓存到某个地方(例如php.net),这也需要花费很多时间来加载或超时。
另外:Windows XP虚拟机中的浏览器可以很好地加载所有内容,在我看来,mDNSResponder可能是罪魁祸首,但在其他任何网络上,一切都可以正常运行。