TTLs' and notifies

Barry Finkel b19141 at achilles.ctd.anl.gov
Mon Aug 19 12:53:54 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.
    }
----------------------------------------------------------------------
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



More information about the bind-users mailing list