我有一个BIND 9.6实例,它充当整个建筑的缓存NS,并且对内部区域也具有权威性(下面的“示例”):
zone "example" { type master; file "example"; update-policy { grant dhcp-update subdomain example. A TXT; }; };
由于流氓转换,我们失去了与世界其他地方的连接,NS开始回答SERVFAIL;让我感到惊讶的是,服务器也无法响应示例域的查询.
这种行为的原因是什么?由于NS具有权威数据,NS不应该回答吗?
编辑:配置的其余部分是Debian附带的标准配置:根服务器的提示和localhost和广播的区域.
解决方法
您可以打开调试,看看是否没有直接回答您的问题.但是,我怀疑您的区域文件的权限不允许绑定用户读取该文件.
我在named.logging.conf中定义了所有日志记录选项,然后在主文件中使用include:
logging { channel default_syslog { // Send most of the named messages to syslog. syslog local2; severity debug; }; channel audit_log { // Send the security related messages to a separate file. file "/var/named/system/named.log"; severity debug; print-time yes; }; channel null { null; }; category default { default_syslog; }; category general { default_syslog; }; category security { audit_log; default_syslog; }; category config { default_syslog; }; category resolver { audit_log; }; category xfer-in { audit_log; }; category xfer-out { audit_log; }; category notify { audit_log; }; category client { audit_log; }; category network { audit_log; }; category update { audit_log; }; category queries { audit_log; }; category lame-servers { null; }; };
然后在named.conf中:
root@dnsm02:/etc/bind# grep logging named.conf include "/etc/bind/named.logging.conf";
此外,您不提及视图,但如果您定义了任何视图,则所有区域必须位于已定义的视图中.