![为什么 dig、nslookup 和 host 会导致 named 出现错误?](https://linux22.com/image/1523124/%E4%B8%BA%E4%BB%80%E4%B9%88%20dig%E3%80%81nslookup%20%E5%92%8C%20host%20%E4%BC%9A%E5%AF%BC%E8%87%B4%20named%20%E5%87%BA%E7%8E%B0%E9%94%99%E8%AF%AF%EF%BC%9F.png)
我今天在 Macbook Pro 上安装了 bind 9.11.0-P3 以及最新的提示文件。它在启动过程中启动并且不会退出。但是,它似乎没有缓存,并且记录了大量错误。
几年前,我运行的是版本 7 或 8。缓存对性能的提升不大,但可以通过定时主机、nslookup 或 dig 来验证。第一次尝试一个最近未使用的地址需要一秒多的时间。后续尝试只需几毫秒。
现在,全部查找需要一到三秒,而且日志令人惊讶。
首先,它抱怨格式错误全部IPv4 上的 13 个根服务器:
25-Feb-2017 11:50:51.661 DNS format error from 192.36.148.17#53 resolving ./NS: non-improving referral
25-Feb-2017 11:50:51.661 FORMERR resolving './NS/IN': 192.36.148.17#53
然后,全部在 IPv6 上无法访问:
25-Feb-2017 11:50:51.644 host unreachable resolving 'burgosnorte.org/A/IN': 2001:500:2f::f#53
并且通常(但并非总是)其中一个或多个是“蹩脚的”:
25-Feb-2017 11:53:31.944 lame server resolving 'earthlink.net' (in '.'?): 198.97.190.53#53
无论有没有“蹩脚的服务器”,我都会得到一个答案,反向 DNS(带有相同的错误)显示是正确的。
在我之前的“几年前”的安装中,我从未检查过这些错误,因为我可以通过时间来判断它是否成功。安装程序创建的 localhost.zone 和 named.local 与我以前手动构建的完全相同。
缓存做似乎适用于反向 DNS:第二次尝试仅耗时 21 毫秒,并且没有记录任何错误。