[bind10-dev] zonemgr / notify out questions
Jeremy C. Reed
jreed at isc.org
Mon Sep 13 18:10:59 UTC 2010
On Sun, 12 Sep 2010, Jerry wrote:
> > > > 17) zonemgr expired a zone where the serial was not increased. This
> may
> > > > be same problem as above #15.
> > > >
> > > > [b10-zonemgr] Zone (foo., IN) is expired.
> > >
> > > I can't understand this question, when zone expires, will its serial be
> > > changed?
>
> > Serial not changed. The question is: why does it output that the zone is
> > expired? Why does it think it is expired?
>
> When zone refresh timer finds a zone's master servers can't be reached for
> "expire" time
> (now - last_refresh_time >= expire time), the zone will become expired.
> But if zonemgr receives notify-in messages for a expired zone, it will still
> try to connect
> to the zone's master servers and do refresh again.
It seems broken to me.
See trunk/src/bin/zonemgr/zonemgr.py.in _zone_is_expired
Is the test backwards?
if (ZONE_EXPIRED == self._get_zone_state(zone_name_class) or
zone_last_refresh_time + zone_expired_time <= self._get_current_time
return True
If the previous time plus the SOA expire is less than current time, then
it should return False.
And is that misnamed? "last_refresh" as expired is not based on a single
last refresh only.
Also for some zones I get repeated "expired" logging for the same zone
-- even when no notify is sent to it to restart this counter.
And it does a AXFR-in even if the SOA serial doesn't increase. For
example, my zone has a SOA refresh of 10. Approximately every ten
seconds, it will do a new AXFR transfer. This keeps repeating even
though the master's serial for that zone never changes. This stops doing
the zone transfers once it reaches the SOA expired (and says zone "is
expired.") -- but that doesn't match up either since it is around 104
seconds where my expire is 45 seconds.
19) Is random Refresh jitter defined in any specification? I see it uses
between (zone_refresh_time - ((1 * zone_refresh_time) / 4)) and
zone_refresh_time.
More information about the bind10-dev
mailing list