<div dir="ltr"><div class="gmail_extra"><div><div class="gmail_signature"><br></div></div>
<br><div class="gmail_quote">On Mon, Jun 8, 2015 at 5:38 AM, Anand Buddhdev <span dir="ltr"><<a href="mailto:anandb@ripe.net" target="_blank">anandb@ripe.net</a>></span> wrote:<br><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left-width:1px;border-left-color:rgb(204,204,204);border-left-style:solid;padding-left:1ex">Hi BIND users and developers,<br>
<br>
I'm trying to figure out how BIND 9.10.2 refreshes slave zones. I've<br>
looked for this information in the ARM, but can't find it.<br>
<br>
Assuming that there are no NOTIFY messages coming in, and it is time to<br>
refresh a zone, this appears to be the simplest logic:<br>
<br>
1. Send a query over UDP for zone/IN/SOA to each master listed, in sequence.<br>
<br>
2. If a successful response is received, and the serial number is the<br>
same, then do nothing.<br>
<br>
3. If the master doesn't respond, or returns an error of any kind<br>
(SERVFAIL, REFUSED, FORMERR), then move along to the next master.<br>
<br>
4. If a successful response is received, and the serial on that master<br>
is higher, then try to refresh with IXFR or AXFR. If the XFR fails<br>
(timeout, error), then move along to the next master.<br>
<br>
However, I don't know what BIND actually does. BIND also has an option,<br>
try-tcp-refresh. I *think* it means that if a SOA query over UDP fails,<br>
then BIND should just immediately try an XFR over TCP, but I'm not sure<br>
of its meaning.<br>
<br>
Would someone from ISC be kind enough to explain BIND's refresh logic,<br>
or even better, write a KB article? It would really help me understand<br>
how to debug zone transfer failures, and perhaps also tune BIND for more<br>
resiliency in the face of poorly configured master servers.<br>
<br>
Regards,<br>
<br>
Anand Buddhdev<br>
RIPE NCC<br><br></blockquote><div><a href="https://kb.isc.org/article/AA-00726">https://kb.isc.org/article/AA-00726</a></div><div><br></div><div> </div></div><br></div></div>