我在使用 bind 时遇到问题。如果我想解析区域文件上的任何域名。它可以正常工作。但是,当我尝试解析不属于区域文件的任何内容时。我知道正在转发的实际 DNS 服务器工作正常。但不知何故 bind9 无法使用它们。/etc/bind/named.conf.options 的内容是:
options {
directory "/var/cache/bind";
forwarders {
131.181.127.32;
131.181.59.48;
};
dnssec-validation auto;
auth-nxdomain no; # conform to RFC1035
listen-on-v6 { any; };
};
我也尝试过只使用一个 IP 地址,但仍然不起作用。/etc/bind/named.conf 的内容如下:
include "/etc/bind/named.conf.options";
include "/etc/bind/named.conf.local";
include "/etc/bind/named.conf.default-zones";
因此包含选项文件没有问题。有什么建议可以解决这个问题吗?
答案1
我在使用最新版本的 Bind(9.8.1)时遇到过这个问题。
以下选项为我解决了这个问题:
dnssec-validation no;
答案2
您需要区分绑定配置错误和不起作用的转发器。
您可以使用以下命令验证转发器是否正常工作:
$ dig @131.181.127.32 www.google.com
如果您收到有效的响应,则表明它是一个正在运行的 DNS 服务器,等等。
您可能需要allow-recursion
在绑定配置中添加显式配置。建议将其限制为特定的 IP/子网。