DNS and clusters

Kevin Darcy kcd at daimlerchrysler.com
Wed Feb 13 01:27:33 UTC 2002

I'm surprised this ever worked at all. Did old versions of BIND
"flood" all of the delegated nameservers for a zone and then take
whichever reply arrives first? That doesn't seem very scalable to me.
Since it is assumed that all delegated nameservers for a zone have the
*same* data for that zone (other than some temporary inconsistencies
which may occur between zone transfers), any delegated nameserver's data
should be as good as any other, so you may as well try them in order.
Modern versions of BIND prefer "faster" nameservers (as measured by the
speed at which they have responded to recent queries) over slower ones.

Why do you need such fine-grained load-balancing anyway? And are you
aware that the speed at which a node serves up DNS is often only
indirectly related, if at all, to the speed at which it can perform other
kinds of client/server functions, e.g. serving up web pages or database
queries? Is it not sufficient to divide the load roughly equally between
the cluster nodes? You could achieve this by just having the
"ourvaxcl" name resolve to multiple IP addresses.

- Kevin

Paul Porcelli wrote:

> We have a mixed environment with Unix, Vax and PC's.
> We have a vax cluster (ourvaxcl) consisting of two
> cluster nodes (ourvax1 and ourvax2). We need some thin
> clients to resolve the hostname ourvaxcl to either of
> the two nodes. i.e. whichever one responds first.
> This works on one of the DNS servers running an old version
> of BIND, but not on the DNS servers running the newer verions
> of BIND.
> We have three secondary DNS servers here.
> Note the different OS and BIND versions
> Server 1
> Sol 5.5 - Bind 4.9.3-P1
> Server 2
> Sol 5.7 - Bind 9.1.3rc1
> Server 3
> Sol 5.7  - Bind 9.1.3rc1
> Server 1 has the following entries in its DNS hosts file
> ourvaxcl          IN      NS      ourvax1.foo.com.
>                   IN      NS      ourvax2.foo.com.
> ourvax1           IN      A       999.999.999.33
> ourvax2           IN      A       999.999.999.32
> When I do an nslookup on Server1 of ourvaxcl I get the following
> response:
> # nslookup ourvaxcl
> Server:  server1.foo.com
> Addresses:  999.999.999.33, 999.999.999.32
> =============================
> Servers 2 and 3 have the following entries ithe their DNS hosts files.
> ourvax1                   A       999.999.999.33
> ourvax2                   A       999.999.999.32
> ourvaxcl                  NS      ourvax1
>                           NS      ourvax2
> When I do an nslookup on Server2 or Server3, for ourvaxcl I get the
> following
> response:
> # nslookup ourvaxcl
> Server:  server2
> *** server2.foo.com can't find ourvaxcl: Server failed
> I realise that the hosts tables are in slightly different formats. Is
> this causing the discrepancy ?
> They are all using the same PRIMARY DNS server.
> We really need servers 2 and 3 to be able to resolve ukvxcl as they
> are
> used by some thin-clients for DNS when server1 is not available.
> Does anyone have an idea how to implement this in the newer version of
> Thanks in advance.
> ==
> Paul Porcelli

More information about the bind-users mailing list