我一直在更新我管理的网站的 DNS 记录。将其命名为 example.com。
运行host example.com
返回Host example.com not found: 3(NXDOMAIN)
。当然,ping
、curl
和在浏览器中访问该网站也会失败。
但是,如果我 ssh 到另一台机器,所有这些都按预期工作。我的结论是:我的 DNS 乱了。
为了解决这个问题,我尝试了dscacheutil -flushcache
(使用和不使用 sudo),并且还尝试了sudo killall -HUP mDNSResponder
Lion & Mtn Lion 的新刷新命令。
我确认tail -f /var/log/system.log
该killall
命令清除了缓存:
Nov 22 02:20:49 xxxxxxxxx mDNSResponder[12]: SIGHUP: Purge cache
但我的问题仍然存在。我还能尝试什么,或者我的问题还可能是什么?
谢谢,库尔特
答案1
这是一个老问题,但对于后人而言,据我所知,上述方法应该清除本地机器的缓存。
您仍然看到 NXDOMAIN 的一个可能原因是您的缓存递归解析器(即“DNS 服务器”)正在缓存 NXDOMAIN 响应,而您尝试的其他服务器正在使用不同的缓存解析器,这些解析器在您尝试时没有缓存负面结果,因此在您尝试时获得并缓存了有效记录。类似的事情刚刚发生在我身上。:-)