Google Groups no longer supports new Usenet posts or subscriptions. Historical content remains viewable.
Dismiss

does type forward zones make BIND 8 continuously poll?

50 views
Skip to first unread message

Anthony Golia

unread,
Dec 7, 2001, 4:09:33 PM12/7/01
to

I mean if I do this:

zone "foo.com" {
type forward;
forward only;
forwarders {
10.10.10.10;
192.168.1.1;
};
};

and things happen in this order:

- 192.168.1.1 is down
- BIND comes up, requests for foo.com come in, BIND frwrds them to
10.10.10.10
- 10.10.10.10 goes down, 192.168.1.1 comes up, requests come in

how often does BIND send SOA queies for it's RTT calcs? any help is
appreciated.

--
Anthony

Barry Margolin

unread,
Dec 7, 2001, 4:23:48 PM12/7/01
to
In article <9urb6d$d...@pub3.rc.vix.com>,

I don't think it ever sends queries spontaneously. It uses the RTT of the
forwarded queries.

I think that the way that it discovers when 10.10.10.10 has come back is by
"penalizing" 192.168.1.1 each time it uses it. Eventually the penalty gets
large enough that it will try another server in its list for the domain.

This is the same for both "type forward" zones and domains known via NS
records.

--
Barry Margolin, bar...@genuity.net
Genuity, Woburn, MA
*** DON'T SEND TECHNICAL QUESTIONS DIRECTLY TO ME, post them to newsgroups.
Please DON'T copy followups to me -- I'll assume it wasn't posted to the group.

Cricket Liu

unread,
Dec 7, 2001, 4:26:45 PM12/7/01
to

> I mean if I do this:
>
> zone "foo.com" {
> type forward;
> forward only;
> forwarders {
> 10.10.10.10;
> 192.168.1.1;
> };
> };
>
> and things happen in this order:
>
> - 192.168.1.1 is down
> - BIND comes up, requests for foo.com come in, BIND frwrds them to
> 10.10.10.10
> - 10.10.10.10 goes down, 192.168.1.1 comes up, requests come in
>
> how often does BIND send SOA queies for it's RTT calcs? any help is
> appreciated.

BIND doesn't send SOA queries to compute RTT values. It only
queries the forwarders when it has a recursive query to reply
to and updates RTT based on the responses.

Also, note that tracking RTT for forwarders doesn't work
correctly in BIND 8 until 8.2.3, and isn't supported in BIND 9
at all.

cricket

Men & Mice
DNS Software & Services
www.menandmice.com

Attend our next DNS and BIND class! See
http://www.menandmice.com/8000/8000_dns_training.html
for the schedule and to register for upcoming classes

Anthony Golia

unread,
Dec 7, 2001, 4:33:18 PM12/7/01
to

Cricket Liu wrote:
>
> > I mean if I do this:
> >
> > zone "foo.com" {
> > type forward;
> > forward only;
> > forwarders {
> > 10.10.10.10;
> > 192.168.1.1;
> > };
> > };
> >
> > and things happen in this order:
> >
> > - 192.168.1.1 is down
> > - BIND comes up, requests for foo.com come in, BIND frwrds them to
> > 10.10.10.10
> > - 10.10.10.10 goes down, 192.168.1.1 comes up, requests come in
> >
> > how often does BIND send SOA queies for it's RTT calcs? any help is
> > appreciated.
>
> BIND doesn't send SOA queries to compute RTT values. It only
> queries the forwarders when it has a recursive query to reply
> to and updates RTT based on the responses.
>
> Also, note that tracking RTT for forwarders doesn't work
> correctly in BIND 8 until 8.2.3, and isn't supported in BIND 9
> at all.

Thanks. How does BIND 9 do it?

>
> cricket
>
> Men & Mice
> DNS Software & Services
> www.menandmice.com
>
> Attend our next DNS and BIND class! See
> http://www.menandmice.com/8000/8000_dns_training.html
> for the schedule and to register for upcoming classes

--
Anthony

Cricket Liu

unread,
Dec 7, 2001, 4:34:57 PM12/7/01
to

> > Also, note that tracking RTT for forwarders doesn't work
> > correctly in BIND 8 until 8.2.3, and isn't supported in BIND 9
> > at all.
>
> Thanks. How does BIND 9 do it?

BIND 9 name servers query the forwarders in the order in which
they're listed, just like BIND 8 did before 8.2.

Marc Thach Xuan Ky

unread,
Dec 7, 2001, 4:37:58 PM12/7/01
to

Anthony,
BIND doesn't use SOA for RTT, it just measures RTT for queries sent, no
polls. If there are no queries, there's no RTT calculation. When
10.10.10.10 first goes down, then your BIND will send to 10.10.10.10 first.
After no response four seconds later it will try 192.168.1.1. Assume it
gets a response then. It will multiply the stored RTT for 10.10.10.10 by a
constant 1.2 because it had no response, and decrement the RTT for he
now-working 192.168.1.1 using the formula 0.7*Old_RTT + 0.3*New_RTT. It may
take a few queries before 192.168.1.1 is tried first. Even then,
occasionally 10.10.10.10 will be retried. This is BIND 8.2.3 and higher,
BIND 9 is different, it doesn't use the RTT method at all for forwarders.
Hopefully they'll put it back at some stage.
Marc TXK

Anthony Golia wrote:

> I mean if I do this:
>
> zone "foo.com" {
> type forward;
> forward only;
> forwarders {
> 10.10.10.10;
> 192.168.1.1;
> };
> };
>
> and things happen in this order:
>
> - 192.168.1.1 is down
> - BIND comes up, requests for foo.com come in, BIND frwrds them to
> 10.10.10.10
> - 10.10.10.10 goes down, 192.168.1.1 comes up, requests come in
>
> how often does BIND send SOA queies for it's RTT calcs? any help is
> appreciated.
>

> --
> Anthony


Anthony Golia

unread,
Dec 7, 2001, 4:46:25 PM12/7/01
to

Thanks again for the quick responses. The BIND 8.2.3 way seems quite
nice to me. Anyway, in BIND 9.1.3, for example, would it just always
use the first one in the list and never try the next one?

--
Anthony

Marc Thach Xuan Ky

unread,
Dec 7, 2001, 4:54:18 PM12/7/01
to

I'd like to disagree slightly with Cricket here, BIND 8 prior to 8.23
would query the forwarders in listed order, timing out at 30 secs
divided by the number of forwarders. BIND 9 times out in a different
way which I find almost indescribable! I've got some traces lying
around somewhere if anyone's really interested, I'll forward them
individually since IIRC Listar strips off binary attachments.
Marc TXK

Barry Margolin

unread,
Dec 7, 2001, 4:56:14 PM12/7/01
to
In article <9urdbh$d...@pub3.rc.vix.com>,

Anthony Golia <Anthon...@morganstanley.com> wrote:
>Thanks again for the quick responses. The BIND 8.2.3 way seems quite
>nice to me. Anyway, in BIND 9.1.3, for example, would it just always
>use the first one in the list and never try the next one?

As long as it's up.

Cricket Liu

unread,
Dec 7, 2001, 5:20:48 PM12/7/01
to

> I'd like to disagree slightly with Cricket here, BIND 8 prior to 8.23
> would query the forwarders in listed order, timing out at 30 secs
> divided by the number of forwarders. BIND 9 times out in a different
> way which I find almost indescribable! I've got some traces lying
> around somewhere if anyone's really interested, I'll forward them
> individually since IIRC Listar strips off binary attachments.

Sure, I'm interested.

Cricket Liu

unread,
Dec 7, 2001, 7:00:58 PM12/7/01
to

> I'd like to disagree slightly with Cricket here, BIND 8 prior to 8.23
> would query the forwarders in listed order, timing out at 30 secs
> divided by the number of forwarders. BIND 9 times out in a different
> way which I find almost indescribable! I've got some traces lying
> around somewhere if anyone's really interested, I'll forward them
> individually since IIRC Listar strips off binary attachments.

Hmm. I've been reading the code and it looks like you're right
about the timeouts. In BIND 9, the timeout when querying a
forwarder seems to be no different than the timeout when querying
any other name server. In fctx_setretryinterval(), the retry timeout
is two seconds for the first two tries, as long as the name server's
RTT isn't larger than two seconds. If it is, the retry is the RTT.
Oh, and the retry is always trimmed to 30 seconds.

However, Bob's comment in fctx_getaddresses() certainly suggests
that the forwarders are queried in a fixed order:

* XXXRTH We could sort the forwaddrs here if the caller
* wants to use the forwaddrs in "best order" as
* opposed to "fixed order".
*/

And, sure enough, sort_finds() sorts fctx->finds rather than
fctx->forwaddrs, which I believe means it's only sorting the list
of name servers we've found in our local database while doing
iterative name resolution, not the forwarders.

I'm copying bind9-users on this, since most of the BIND 9
developers hang out there. They can give us the authoritative
answer.

Cricket Liu

unread,
Dec 10, 2001, 2:24:42 PM12/10/01
to

> Interesting.
>
> But does Bind 9 use RTT at all, also for other "lists of NS's" (like root
> servers) ?

Sure it does.

> In cache dump of a Bind 8 server, the rtt "of the moment" was in comments
in the
> A-record of the name server, but the cache dump of a Bind 9 server show
nothing
> there. Which makes me wonder.

My guess is that they simply changed the format of the dump file.

cricket

Men & Mice
DNS Software, Training and Consulting

Mark_A...@isc.org

unread,
Dec 10, 2001, 3:52:53 PM12/10/01
to

> > A-record of the name server, but the cache dump of a Bind 9 server show
> nothing
> > there. Which makes me wonder.
>
> My guess is that they simply changed the format of the dump file.
>
The information is stored in a seperate cache and not with the
rdata. With BIND 8 it was stored with the rdata.

Mark
--
Mark Andrews, Internet Software Consortium
1 Seymour St., Dundas Valley, NSW 2117, Australia
PHONE: +61 2 9871 4742 INTERNET: Mark.A...@isc.org

0 new messages