我有一个主从绑定 DNS 设置。如果我从从服务器删除区域文件,然后重新启动服务。该文件将获得复制。
但是当我在主服务器上更新区域文件中的条目时,它并没有在从属服务器上更新。
每当我更新主区域文件时,我是否需要删除从属区域上的文件?
这是我的配置:
主配置:
options {
listen-on port 53 { 127.0.0.1; 10.10.10.11;};
listen-on-v6 port 53 { ::1; };
directory "/var/named";
dump-file "/var/named/data/cache_dump.db";
statistics-file "/var/named/data/named_stats.txt";
memstatistics-file "/var/named/data/named_mem_stats.txt";
allow-query { localhost; 10.10.0.0/16; };
allow-transfer {localhost; 10.10.10.12;};
notify yes;
recursion yes;
dnssec-enable yes;
dnssec-validation yes;
dnssec-lookaside auto;
bindkeys-file "/etc/named.iscdlv.key";
managed-keys-directory "/var/named/dynamic";
pid-file "/run/named/named.pid";
session-keyfile "/run/named/session.key";
forwarders {
8.8.8.8;
8.8.4.4;
};
};
logging {
channel default_debug {
file "data/named.run";
severity dynamic;
};
};
zone "." IN {
type hint;
file "named.ca";
};
#### Define Forward & Reverse Zones #########
zone"example.local" IN {
type master;
file "examplelocal.fwd.zone";
allow-update { none; };
};
###############################################
include "/etc/named.rfc1912.zones";
include "/etc/named.root.key";
从属配置:
options {
listen-on port 53 { 127.0.0.1; 10.10.10.12;};
listen-on-v6 port 53 { ::1; };
directory "/var/named";
dump-file "/var/named/data/cache_dump.db";
statistics-file "/var/named/data/named_stats.txt";
memstatistics-file "/var/named/data/named_mem_stats.txt";
allow-query { localhost; 10.21.0.0/16; };
notify yes;
recursion yes;
dnssec-enable yes;
dnssec-validation yes;
/* Path to ISC DLV key */
bindkeys-file "/etc/named.iscdlv.key";
managed-keys-directory "/var/named/dynamic";
pid-file "/run/named/named.pid";
session-keyfile "/run/named/session.key";
forwarders {
8.8.8.8;
8.8.4.4;
};
};
logging {
channel default_debug {
file "data/named.run";
severity dynamic;
};
};
zone "." IN {
type hint;
file "named.ca";
};
#### Define Slave Configuration ##########
zone"example.local" IN {
type slave;
file "slaves/examplelocal.fwd.zone";
masters { 10.10.10.11; };
};
include "/etc/named.rfc1912.zones";
include "/etc/named.root.key";
在主区域文件 examplelocal.fwd.zone 中,我添加了一个名为“nt001 IN A 10.10.10.19”的条目。但它没有在从属中更新。
主区域文件:
$TTL 1D
@ IN SOA ns1.example.local. root.example.local. (
0 ; serial
1D ; refresh
1H ; retry
1W ; expire
3H ) ; minimum
; Name servers
@ IN NS ns1.example.local.
@ IN NS n22.example.local.
; Hosts
@ IN A 10.10.10.11
@ IN A 10.10.10.12
ns1 IN A 10.10.10.11
ns2 IN A 10.10.10.12
srv1 IN A 10.10.10.17
srv2 IN A 10.10.10.18
nt001 IN A 10.10.10.19
答案1
序列号是入口处的问题。
每当区域文件发生更改时,序列号值都应更新。我没有更改区域文件中的序列号。这就是为什么它在从属服务器中没有更新的原因。
理论上:DNS 区域文件中的序列号为服务器提供了一种验证特定区域文件内容是否最新的方法。如果区域文件中的序列号自上次加载该区域以来没有更改,则命名服务器认为它可以忽略该文件
希望这个答案可以帮助遇到同样问题的人。
谢谢你!