intelligent NAMED

Kevin Darcy kcd at daimlerchrysler.com
Fri May 4 22:19:02 UTC 2007


As others have pointed out, you can do this with "view"s, but the 
downside of that approach is that you have to maintain the data of each 
"view" in parallel, and it can get messy and complicated to ensure that 
masters and slaves are transferring zones via the right "view".

Sometimes it therefore makes more sense to use the "sortlist" mechanism 
instead, where you define the relevant name(s) with *all* associated 
addresses, and then sort the answers according to the source address of 
the DNS client. Assumptions:
1. You tightly control all of the resolvers and their configs, or, at 
least for the ones you don't tightly control, they don't reorder address 
records when answering from cache (fortunately, the Windows resolver on 
regular modern desktop boxes, although it caches, appears to not reorder 
responses)
2. Nothing bad will happen if a client fails over to a "wrong" IP 
address because, for whatever reason, the first connection they tried 
was rejected or timed out.

One of the good things about the sortlist approach is that, if you're 
only doing this for *optimization*, you don't necessarily have to 
sacrifice availability to achieve it, assuming that the client does 
address failover in a timely fashion.

The downsides of sortlisting include
1. You have to maintain the sortlist definition on all of your boxes
2. sortlists are per-*instance* or per-*view*, not per-*zone* or 
per-*name*. So you can't really have different sorting schemes, short of 
running multiple instances or views.

                                                                         
                           - Kevin

besnard michel wrote:
> hi,
> i'm looking for special features aka intelligent DNS servers ... may be not
> included in BIND
>
> i need different DNS responses when différents DNS clients ask the same
> request
>
> example :
>
> some DNS clients request for www.test.com
> if the source IP of the DNS client is in the
> - IP_POOL_1 then my DNS server will response IP_ADDRESS_1
> - IP_POOL_2 then my DNS server will response IP_ADDRESS_2
> - or by default my DNS server will response IP_ADDRESS_3
>
> i don't want to do load balancing but "geographical" or "zone" load
> balancing
>
> regards,
> Michel
>
>
>
>
>   



More information about the bind-users mailing list