Bind Source Code

Kevin Darcy kcd at daimlerchrysler.com
Thu May 25 21:42:19 UTC 2000


Saqib Mustafa wrote:

> Does any one know where I can get something like a description or
> understanding of the source code of BIND. We are implementing Load
> Balancing using CNAME. But we have to change it to make priority assigned
> rather than Round Robin.

I am not aware of any comprehensive guide to the BIND code. The code itself
is self-documenting, isn't it? :-)

What *exactly* would you want to change in BIND? I dabbled in a "weighted
address sorting" experiment a few months ago, so I'm fairly familiar with
that part of the BIND 8 code, and I'd be happy to send you diffs if you
want. I don't know how this "weighted sorting" might relate to what you're
calling "priority assigned", but it seems like it might be illuminating
nonetheless. I'm assuming that your main challenge is changing the order in
which address records are returned, since the manipulation of the CNAME
itself can be done by an external program via Dynamic Update, and thus
doesn't require any changes to BIND at all. Or, were you thinking of making
it possible to change the weight/priority/sort-order of address records or
RRsets on the fly, e.g. through "ndc" or something like that? That would be
pretty nifty.

You are aware, of course, that load-balancing using DNS is subject to all
sorts of pitfalls because of the caching behavior of intermediate servers,
right? Or were you just planning on becoming one of those nasty TTL=0
miscreants?


- Kevin




More information about the bind-users mailing list