BIND9 拒绝来自 Ubuntu 上站点外本地网络 (外部 IP) 的查询。
options {
listen-on port 53 { any; };
directory "/var/bind";
allow-query { any; };
allow-query-cache { any; };
allow-transfer { none; };
recursion no;
dnssec-validation auto;
auth-nxdomain no;
};
include "/etc/bind/zones.conf";
include "/etc/bind/reverse-zones.conf";
include "/etc/bind/named.conf.default-zones";
Zones.conf 的示例
zone "test.test" IN {
type slave;
file "zones/test.test.zone";
masters { 1.1.1.1; };
};
另外,我看到我的日志中有一个被拒绝的条目,因此添加了它,allow-query-cache { any; };
但是这并没有什么区别。
日志:client 192.168.3.100#64088 (test.test.SUB.DOMAIN.INTERN): query (cache) 'test.test.SUB.DOMAIN.INTERN/A/IN' denied
运行“ nslookup test.test 172.1.1.5
”后(DNS超时)
现在系统日志中没有显示任何异常。这是 BIND 在加载区域之前显示的内容(无错误):
adjusted limit on open files from 4096 to 1048576
found 18 CPUs, using 18 worker threads
using 18 UDP listeners per interface
using up to 18432 sockets
loading configuration from '/etc/bind/named.conf'
reading built-in trusted keys from file '/etc/bind/bind.keys'
using default UDP/IPv4 port range: [1024, 65535]
using default UDP/IPv6 port range: [1024, 65535]
no IPv6 interfaces found
listening on IPv4 interface lo, 127.0.0.1#53
listening on IPv4 interface eth0, 172.1.1.5#53
generating session key for dynamic DNS
sizing zone task pool based on 162 zones
using built-in root key for view _default
set up managed keys zone for view _default, file 'managed-keys.bind'
command channel listening on 127.0.0.1#953
managed-keys-zone: loaded serial 2
zone 0.in-addr.arpa/IN: loaded serial 1
Var/Bind 位于非标准位置,但我编辑 apparmor 配置文件后检查了日志,没有发现任何问题。
我可以从同一子网成功查询绑定。
在 /etc/default/bind9 中:
# run resolvconf?
RESOLVCONF=no
# startup options for the server
# OPTIONS="-u bind"
OPTIONS="-4 -u bind"
此更改是为了禁用 ipv6
我是一名 RHEL 用户 - 在 Centos7(1503) 上成功设置了服务器,并发现海外拥有从属服务器的人想要运行 Ubuntu。所以这可能是我的操作系统配置错误。
答案1
你检查过防火墙吗?日志表明 BIND 正在监听 172.1.1.5,因此你应该看到一些日志中的查询,即使查询实际上没有解决。
答案2
此日志消息正确吗?客户端查询test.test.SUB.DOMAIN.INTERN
未定义为您的区域。
client 192.168.3.100#64088 (test.test.SUB.DOMAIN.INTERN): query (cache) 'test.test.SUB.DOMAIN.INTERN/A/IN' denied
您可以删除recursion no
并添加以下几行以允许客户端进行递归查询:
allow-recursion {
::1;
127.0.0.1;
172.1.1.0/24;
192.168.3.0/24;
};
此外,您是否确定主名称服务器(以 1.1.1.1 为例)允许您的服务器充当从属服务器并执行区域传输?
答案3
检查您的日志以查找来自 1.1.1.1 主服务器的区域传输,test.test 是从属服务器,它将发送 nxdomain 直到它从主服务器接收到区域。
此外,外部通信应该采用交易安全签名。
我假设 SUB.DOMAIN.INTERN 是您的 dhcp 搜索域。请以句点 (.) 结束所有域查找。