TTLs' and notifies
Mark_Andrews at isc.org
Mark_Andrews at isc.org
Mon Aug 19 17:56:14 UTC 2002
> Mark Andrews wrote:
>
>
> > The algorithm is:
> >
> > If there is a SOA record in the notify message and the serial
> > is greater than we currently have and it is from our master
> > then trigger a refresh query.
>
> I am trying to understand the NOTIFY protocol. RFC 1996 has
>
> 3.7. A NOTIFY request has QDCOUNT>0, ANCOUNT>=0, AUCOUNT>=0,
> ADCOUNT>=0. If ANCOUNT>0, then the answer section represents an
> unsecure hint at the new RRset for this <QNAME,QCLASS,QTYPE>. A
> slave receiving such a hint is free to treat equivilence of this
> answer section with its local data as a "no further work needs to be
> done" indication. If ANCOUNT=0, or ANCOUNT>0 and the answer section
> differs from the slave's local data, then the slave should query its
> known masters to retrieve the new data.
>
> 3.8. In no case shall the answer section of a NOTIFY request be used
> to update a slave's local data, or to indicate that a zone transfer
> needs to be undertaken, or to change the slave's zone refresh timers.
>
> Does this mean that if the NOTIFY packet contains an SOA record, then
> the slave makes a test:
>
> if (SOA serial number == current slave serial number) then do nothin g.
> if (SOA serial number > current slave serial number) then
> {
> Dont' trust the SOA serial number. (per 3.8)
> Do an SOA query from the master. (per the last sentence of 3.7)
> If that SOA query serial number > current slave serial number
> then request a zone transfer from the master.
> }
if (!from master)
do nothing.
else if (no SOA record) {
acknowledge
initiate soa refresh check (rate limited).
} else if (dialup) { /* ignore SOA serial */
acknowledge
initiate soa refresh check (rate limited).
} else if (SOA serial number <= current slave serial number) {
acknowledge
} else if (SOA serial number > current slave serial number) {
acknowledge
initiate soa refresh check (rate limited).
}
> ----------------------------------------------------------------------
> Barry S. Finkel
> Electronics and Computing Technologies Division
> Argonne National Laboratory Phone: +1 (630) 252-7277
> 9700 South Cass Avenue Facsimile:+1 (630) 252-4601
> Building 222, Room D209 Internet: BSFinkel at anl.gov
> Argonne, IL 60439-4828 IBMMAIL: I1004994
>
>
--
Mark Andrews, Internet Software Consortium
1 Seymour St., Dundas Valley, NSW 2117, Australia
PHONE: +61 2 9871 4742 INTERNET: Mark.Andrews at isc.org
More information about the bind-users
mailing list