鉴于以下情况,我的 BIND 9 无法启动。
acl ns2 { 192.168.10.50; };
zone "10.168.192.in-addr.arpa" IN {
also-notify { ns2 port 53; };
type master;
file "192.168.10.db";
};
它将以下内容写入 /var/log/messages 文件。
[root@dev bind]# tail /var/log/messages
Jan 25 18:41:05 dev named[22863]: found 4 CPUs, using 4 worker threads
Jan 25 18:41:05 dev named[22863]: using 4 UDP listeners per interface
Jan 25 18:41:05 dev named[22863]: using up to 4096 sockets
Jan 25 18:41:05 dev named[22863]: loading configuration from '/etc/named.conf'
Jan 25 18:41:05 dev named[22863]: /etc/named.conf:18: missing ';' before 'port'
Jan 25 18:41:05 dev named[22863]: /etc/named.conf:18: missing ';' before '53'
Jan 25 18:41:05 dev named[22863]: /etc/named.conf:23: missing ';' before 'port'
Jan 25 18:41:05 dev named[22863]: /etc/named.conf:23: missing ';' before '53'
Jan 25 18:41:05 dev named[22863]: loading configuration: failure
Jan 25 18:41:05 dev named[22863]: exiting (due to fatal error)
这很奇怪,因为根据他们的指南这里,正确的语句语法是
[ also-notify { ip_addr [port ip_port] ; [ ip_addr [port ip_port] ; ... ] }; ]
答案1
我已通过执行以下操作修复了此问题...如果有人知道为什么我们现在同时拥有 masters 和 acl,而不仅仅是 acl,请告知我。
acl ns2 { 192.168.10.50; };
masters ns2 { 192.168.10.50 port 53; };
options {
allow-query { any; };
allow-recursion { localnets; };
allow-transfer { ns2; };
directory "/var/named";
dump-file "/var/named/data/cache_dump.db";
statistics-file "/var/named/data/named_stats.txt";
pid-file "/var/run/named.pid";
};
zone "10.168.192.in-addr.arpa" IN {
also-notify { ns2; };
type master;
file "192.168.10.db";
};
答案2
您可以按照如下方式轻松更改您的区域:
zone "10.168.192.in-addr.arpa" IN {
also-notify { 192.168.10.50; };
type master;
file "192.168.10.db";
};
如果从属服务器在 53 以外的其他端口上运行,则可以指定是否更改允许通知,如下所示:
also-notify { 192.168.10.50 port xxx; };
除非指定端口,否则绑定将通知发送到端口 53。
答案3
你只需要输入:
主人“acl名称”{ip1; ip2; ip3; 等;}
然后在带有 also-notify { acl-name;}; 语句之后调用它。