在阅读了 OReilly dns 和 bind book 之后,我仍然遇到主从配置问题,我得到了
client 192.168.1.67#34245: update '<domain>.co.uk/IN' denied
作为区域主定义的系统日志错误。并
named[19034]: client 192.168.1.67#47452: update forwarding '<domain>.co.uk/IN' denied
作为从属定义的系统日志错误
具有主区域的服务器有一个named.conf:
options {
allow-transfer { 192.168.1/24; };
}
// The reverse lookup of 192.168.1.* - the local IP addresses
zone "1.168.192.in-addr.arpa" in {
type master;
file "192.168.1.db";
allow-transfer { key TRANSFER; };
allow-update { key TRANSER; };
};
// The forward lookup of hosts on this domain
zone "<domain>.co.uk" in {
type master;
file "<domain>.co.uk.db";
allow-transfer { key TRANSFER; };
allow-update { key TRANSER; };
};
key "TRANSFER" {
algorithm hmac-md5;
secret "<the secret key>";
};
# Slave DNS server
server 192.167.1.67 {
keys {
TRANSFER;
};
};
具有从属区域的服务器具有:
options {
allow-transfer { none; };
}
// The reverse lookup of 192.168.1.* - the local IP addresses
zone "1.168.192.in-addr.arpa" in {
type slave;
file "bak.192.168.1.db";
masters { 192.168.1.52 key TRANSFER; };
allow-update-forwarding { any; };
};
// The forward lookup of hosts on this domain
zone "blairsltd.co.uk" in {
type slave;
file "bak.blairsltd.co.uk.db";
masters { 192.168.1.52 key TRANSFER; };
};
key "TRANSFER" {
algorithm hmac-md5;
secret "<the same secret key>";
};
# Master DNS server
server 192.167.1.52 {
keys {
TRANSFER;
};
};
我认为一切都已配置好,因此它将允许所有合法的更新从从属服务器安全地传输到主服务器,我遗漏了什么?
答案1
allow-update-forwarding { any; };
仅在从属设备的反向查找区域上,因此它将阻止尝试更新其上的正向查找区域 - 这是从属设备上的错误消息。
主服务器配置为要求使用传输密钥对更新进行签名 - 根据其错误消息,这可能不会发生,因为意图似乎是使用该密钥进行传输,对吗?
答案2
看起来你的一些 IP 不正确。除非你有一些特殊的专用网络,否则请更改此设置:
# Slave DNS server
server 192.167.1.67 {
keys {
TRANSFER;
};
};
# Master DNS server
server 192.167.1.52 {
keys {
TRANSFER;
};
};
更改为:
# Slave DNS server
server 192.168.1.67 {
keys {
TRANSFER;
};
};
# Master DNS server
server 192.168.1.52 {
keys {
TRANSFER;
};
};