Can't update zone: "not authoritative"
Дмитрий Горбенко
bazil.bazil at gmail.com
Fri Aug 11 18:09:01 UTC 2006
Hi.
I have two NS servers, one master, another slave.
And here are the problem: after launching both servers I found at slave
server in notify.log file such lines:
-------------8<---------------------------------------------------------
Aug 11 16:30:40.005 notify: received notify for zone 'abc': not
authoritative
Aug 11 16:30:40.512 notify: received notify for zone 'xyz'
-------------8<---------------------------------------------------------
It means, that domain zone 'abc' doen't updates from master server, when
master updates one.
Now, look at config files, and later I'll show you something interesting.
master's config file:
-------------8<---------------------------------------------------------
options {
version "my_own_version";
directory "/var/named";
forward first;
forwarders {
192.168.0.13 ;
192.168.0.8;
};
listen-on-v6 { none; };
listen-on { 127.0.0.1; 192.168.0.199 ; };
pid-file "/var/run/named/named.pid";
};
logging {
channel notify_ch {
file "/var/log/bind/notify" versions 3 size 10000k;
severity debug;
print-time yes;
print-category yes;
};
category notify { notify_ch; };
};
view "aaa" {
zone "abc" IN {
type master;
file "master/abc.zone";
allow-transfer { any; };
allow-update { any; };
notify explicit;
notify-source 192.168.0.199;
also-notify { 192.168.0.113; };
};
};
view "bbb" {
zone "xyz" IN {
type master;
file "master/xyz.zone";
allow-transfer { any; };
allow-update { any; };
notify explicit;
notify-source 192.168.0.199;
also-notify { 192.168.0.113; };
};
};
-------------8<---------------------------------------------------------
domain zones at master NS server:
-------------8<---------------------------------------------------------
# cat abc.zone
$TTL 3600 ; 1 hour
@ IN SOA abc. bindmaster.abc. (
2006081055 ; serial
2H ; refresh (2 hours)
15M ; retry (15 minutes)
2H ; expire (2 hours)
15M ; negative-caching (15
minutes)
)
IN A 192.168.0.199
IN NS ns.abc.
IN NS ns2.abc.
$ORIGIN abc.
ns IN A 192.168.0.199
ns2 IN A 192.168.0.133
# cat xyz.zone
$TTL 3600 ; 1 hour
@ IN SOA xyz. bindmaster.xyz. (
2006081044 ; serial
2H ; refresh (2 hours)
15M ; retry (15 minutes)
2H ; expire (2 hours)
15M ; negative-caching (15
minutes)
)
IN A 192.168.0.199
IN NS ns.xyz.
IN NS ns2.xyz.
$ORIGIN xyz.
ns IN A 192.168.0.199
ns2 IN A 192.168.0.133
-------------8<---------------------------------------------------------
slave's config file:
-------------8<---------------------------------------------------------
options {
version "my_own_version";
directory "/var/named";
forward first;
forwarders {
192.168.0.13 ;
192.168.0.8;
};
listen-on-v6 { none; };
listen-on { 127.0.0.1; 192.168.0.113 ; };
pid-file "/var/run/named/named.pid";
};
logging {
channel notify_ch {
file "/var/log/bind/notify" versions 3 size 10000k;
severity debug;
print-time yes;
print-category yes;
};
category notify { notify_ch; };
};
view "first" {
zone "abc" IN {
type slave;
file "slave/abc.zone";
masters { 192.168.0.199; };
# transfer mechanism
transfer-source 192.168.0.113;
};
};
view "second" {
zone "xyz" IN {
type slave;
file "slave/xyz.zone";
masters { 192.168.0.199; };
# transfer mechanism
transfer-source 192.168.0.113;
};
};
-------------8<---------------------------------------------------------
and now interesting thing: I'll swap order of view statement, like this:
-------------8<---------------------------------------------------------
view "second" {
zone "xyz" IN {
type slave;
file "slave/xyz.zone";
masters { 192.168.0.199 ; };
# transfer mechanism
transfer-source 192.168.0.113;
};
};
view "first" {
zone "abc" IN {
type slave;
file "slave/abc.zone";
masters { 192.168.0.199; };
# transfer mechanism
transfer-source 192.168.0.113;
};
};
-------------8<---------------------------------------------------------
and we'll receive another lines in nofity.log:
-------------8<---------------------------------------------------------
Aug 11 16:30:40.005 notify: received notify for zone 'abc'
Aug 11 16:30:40.512 notify: received notify for zone 'xyz': not
authoritative
-------------8<---------------------------------------------------------
now, domain zone 'abc' have been updated, but zone 'xyz' doesn't.
Oh, here are another strange thing: if I will declare both zones in one view
like this:
-------------8<---------------------------------------------------------
view "second" {
zone "xyz" IN {
type slave;
file "slave/xyz.zone";
masters { 192.168.0.199 ; };
# transfer mechanism
transfer-source 192.168.0.113;
};
zone "abc" IN {
type slave;
file "slave/abc.zone";
masters { 192.168.0.199; };
# transfer mechanism
transfer-source 192.168.0.113;
};
};
view "first" {
};
-------------8<---------------------------------------------------------
I will receive what I want:
-------------8<---------------------------------------------------------
Aug 11 16:30:40.005 notify: received notify for zone 'abc'
Aug 11 16:30:40.512 notify: received notify for zone 'xyz'
-------------8<---------------------------------------------------------
but, as I think, this is wrong decision of bind server.
how I can solve a problem ?
very thanks.
More information about the bind-users
mailing list