我有一个绑定服务器,当您通过这种方式查询它时(显然是从本地主机):
host nomachinehasthisname 127.0.0.1
回复:
;; connection timed out; no servers could be reached
如果我使用它的公共地址查询它,它会抛出同样的错误。
无论我从哪个客户端执行此查询,都会引发相同的错误。
如果我使用 fqdn 作为查询值,它不会抛出错误。
仅当查询位于我的 DNS 中不存在的 A 记录时,才会抛出错误。
如果我使用 fqdn 查询查询不存在的 A 记录,则会按预期回复 NXDOMAIN。
如果我使用 dig +trace 查询它:
dig +trace nomachinehasthisname @127.0.0.1
它表明我的服务器尝试查询根服务器然后超时(这是合乎逻辑的)。
奇怪的是,我有 4 个其他绑定服务器,它们的配置几乎相同,但没有一个出现此行为。我不明白这台服务器缺少什么,导致它无法像其他服务器一样回复。
我的 named.conf 中有以下选项:
options {
directory "/var/spool/named";
auth-nxdomain no;
allow-recursion { internal_networks; }; // restrict recursion
};
其他服务器的情况也大体相同。
我希望我的服务器默认使用/etc/resolv.conf
非 fqdn A 记录查询中列出的搜索域,其他服务器也是这么做的。
此服务器的 resolv.conf 与其他服务器类似。我甚至有一些服务器的信息较少(例如没有“搜索域”信息),但没有这个问题。
对于非 fqdn A 记录查询,如何将绑定默认到特定域?