How often is IXFR called?

Kevin Darcy kcd at daimlerchrysler.com
Mon Jun 25 22:37:53 UTC 2001


Lists User wrote:

> How often will a master server do an IXFR for the slaves.
> How can I speed this up?  By changing the expiration of the record?

Slaves *pull* zone transfers; masters don't *push* them. As DNS was
originally designed, slaves check the master periodically and do a
transfer of the zone if it has changed. The periodicity of this checking
is controlled by the REFRESH parameter in the zone's SOA record. Changes
may not propagate very quickly when you rely solely on refresh-cyle
replication.

So, a number of years ago, another mechanism called NOTIFY was created.
A modern master will send NOTIFY messages, whenever a zone changes, to
all of its "registered" slaves, i.e. all servers in the NS records of
the zone except the master. It may also send NOTIFY messages to
additional "stealth" slaves if configured to do so (in BIND, one would
use the "also-notify" clause to configure these additional
NOTIFY recipients). If a slave receives a NOTIFY message, it is supposed
to check to see if it needs to transfer the zone, thus pre-empting the
normal refresh-cycle check. NOTIFY thus speeds up change-propagation
tremendously.

So, the bottom line is: if all of your slaves understand NOTIFY, then
you may just need to tune your also-notify clause(s). If you have one or
more backlevel slaves that don't understand NOTIFY, then about the only
thing you can do is tune REFRESH, but you don't want to make this too
small, otherwise you'll bury yourself in tons of extraneous
zone-checking queries.


- Kevin





More information about the bind-users mailing list