conf 上的语法和 RNDC 绑定错误
Syntax and RNDC bind errors on conf
我想做什么:
正在尝试创建将解析本地地址以及 public 地址的绑定 DNS 服务。我需要能够解析远程位置的内部本地地址。这些遥控器通过代理访问我们的网络,我正在尝试在该代理服务器上安装绑定服务器。
我正在使用 bind9,它(根据我读过的内容)可以让我使用视图通过 acl 引导 DNS 请求。
发生了什么:
我有以下配置,它报告了一些语法错误和停止 DNS 的 rndc 连接失败错误。
文件: named.conf.local
acl internals {
x.x.x.x/8; (local)
192.168.1.0/24;
);
// Custom Zones for SERVER
view "internal" {
match-clients { internals; };
zone "SERVER" {
type master;
file "/etc/bind/internal/db.SERVER";
};
};
view "external" {
match-clients { any: };
zone "SERVER" {
type master;
file "/etc/bind/external/db.SERVER";
};
};
错误: 来自系统日志
Oct 28 10:29:22 SERVER named[15228]: loading configuration from '/etc/bind/named.conf'
Oct 28 10:29:22 SERVER named[15228]: /etc/bind/named.conf.local:7: missing ';' before '"'
Oct 28 10:29:22 SERVER named[15228]: /etc/bind/named.conf.local:7: missing ';' before '{'
Oct 28 10:29:22 SERVER named[15228]: /etc/bind/named.conf.local:8: missing ';' before '{'
Oct 28 10:29:22 SERVER named[15228]: /etc/bind/named.conf.local:9: missing ';' before '"'
Oct 28 10:29:22 SERVER named[15228]: /etc/bind/named.conf.local:9: missing ';' before '{'
Oct 28 10:29:22 SERVER named[15228]: /etc/bind/named.conf.local:10: missing ';' before 'master'
Oct 28 10:29:22 SERVER named[15228]: /etc/bind/named.conf.local:11: missing ';' before '"'
Oct 28 10:29:22 SERVER named[15228]: /etc/bind/named.conf.local:15: missing ';' before '"'
Oct 28 10:29:22 SERVER named[15228]: /etc/bind/named.conf.local:15: missing ';' before '{'
Oct 28 10:29:22 SERVER named[15228]: /etc/bind/named.conf.local:16: missing ';' before '{'
Oct 28 10:29:22 SERVER named[15228]: /etc/bind/named.conf.local:16: missing ';' before '}'
Oct 28 10:29:22 SERVER named[15228]: /etc/bind/named.conf.local:17: missing ';' before '"'
Oct 28 10:29:22 SERVER named[15228]: /etc/bind/named.conf.local:17: missing ';' before '{'
Oct 28 10:29:22 SERVER named[15228]: /etc/bind/named.conf.local:18: missing ';' before 'master'
Oct 28 10:29:22 SERVER named[15228]: /etc/bind/named.conf.local:19: missing ';' before '"'
Oct 28 10:29:22 SERVER named[15228]: /etc/bind/named.conf:12: missing ';' before '"'
Oct 28 10:29:22 SERVER named[15228]: /etc/bind/named.conf:13: expected IP match list element near end of file
Oct 28 10:29:22 SERVER named[15228]: loading configuration: unexpected token
Oct 28 10:29:22 SERVER named[15228]: exiting (due to fatal error)
我需要知道的:
显然我有问题,我只需要知道我哪里搞砸了。我需要知道语法上是否有问题,或者我是否没有使用正确的工具来创建绑定服务器。
长话短说:
鉴于上述配置文件和错误,导致问题的原因是什么?
第 4 行的右括号 ')' 似乎是语法错误,应该是右大括号 '}'。
当有人发现难以理解这些无法解释的语法错误消息的确切原因时,开始截断部分输入文件(在本例中为配置文件)是一个很好的做法。这样您就可以找到引入第一个错误的点,通常这样更容易发现问题。
我想做什么:
正在尝试创建将解析本地地址以及 public 地址的绑定 DNS 服务。我需要能够解析远程位置的内部本地地址。这些遥控器通过代理访问我们的网络,我正在尝试在该代理服务器上安装绑定服务器。
我正在使用 bind9,它(根据我读过的内容)可以让我使用视图通过 acl 引导 DNS 请求。
发生了什么:
我有以下配置,它报告了一些语法错误和停止 DNS 的 rndc 连接失败错误。
文件: named.conf.local
acl internals {
x.x.x.x/8; (local)
192.168.1.0/24;
);
// Custom Zones for SERVER
view "internal" {
match-clients { internals; };
zone "SERVER" {
type master;
file "/etc/bind/internal/db.SERVER";
};
};
view "external" {
match-clients { any: };
zone "SERVER" {
type master;
file "/etc/bind/external/db.SERVER";
};
};
错误: 来自系统日志
Oct 28 10:29:22 SERVER named[15228]: loading configuration from '/etc/bind/named.conf'
Oct 28 10:29:22 SERVER named[15228]: /etc/bind/named.conf.local:7: missing ';' before '"'
Oct 28 10:29:22 SERVER named[15228]: /etc/bind/named.conf.local:7: missing ';' before '{'
Oct 28 10:29:22 SERVER named[15228]: /etc/bind/named.conf.local:8: missing ';' before '{'
Oct 28 10:29:22 SERVER named[15228]: /etc/bind/named.conf.local:9: missing ';' before '"'
Oct 28 10:29:22 SERVER named[15228]: /etc/bind/named.conf.local:9: missing ';' before '{'
Oct 28 10:29:22 SERVER named[15228]: /etc/bind/named.conf.local:10: missing ';' before 'master'
Oct 28 10:29:22 SERVER named[15228]: /etc/bind/named.conf.local:11: missing ';' before '"'
Oct 28 10:29:22 SERVER named[15228]: /etc/bind/named.conf.local:15: missing ';' before '"'
Oct 28 10:29:22 SERVER named[15228]: /etc/bind/named.conf.local:15: missing ';' before '{'
Oct 28 10:29:22 SERVER named[15228]: /etc/bind/named.conf.local:16: missing ';' before '{'
Oct 28 10:29:22 SERVER named[15228]: /etc/bind/named.conf.local:16: missing ';' before '}'
Oct 28 10:29:22 SERVER named[15228]: /etc/bind/named.conf.local:17: missing ';' before '"'
Oct 28 10:29:22 SERVER named[15228]: /etc/bind/named.conf.local:17: missing ';' before '{'
Oct 28 10:29:22 SERVER named[15228]: /etc/bind/named.conf.local:18: missing ';' before 'master'
Oct 28 10:29:22 SERVER named[15228]: /etc/bind/named.conf.local:19: missing ';' before '"'
Oct 28 10:29:22 SERVER named[15228]: /etc/bind/named.conf:12: missing ';' before '"'
Oct 28 10:29:22 SERVER named[15228]: /etc/bind/named.conf:13: expected IP match list element near end of file
Oct 28 10:29:22 SERVER named[15228]: loading configuration: unexpected token
Oct 28 10:29:22 SERVER named[15228]: exiting (due to fatal error)
我需要知道的:
显然我有问题,我只需要知道我哪里搞砸了。我需要知道语法上是否有问题,或者我是否没有使用正确的工具来创建绑定服务器。
长话短说:
鉴于上述配置文件和错误,导致问题的原因是什么?
第 4 行的右括号 ')' 似乎是语法错误,应该是右大括号 '}'。
当有人发现难以理解这些无法解释的语法错误消息的确切原因时,开始截断部分输入文件(在本例中为配置文件)是一个很好的做法。这样您就可以找到引入第一个错误的点,通常这样更容易发现问题。