Ril,

Unfortunately you can't use haproxy to load balance UDP services.

Ordinarily DNS is load balanced using division of load, so you will have a.dnshost.com, b.dnshost.com, c.dnshost.com, etc. As DNS is typically two packets, one request and one response, it doesn't make sense to load balance it.

Then you will either return a large number of authoritative DNS servers or, more commonly, divide different domains across different DNS servers, so put 50000 of your clients on server a/b, the next 50k on c/d, etc...

Here's the whois info including authoritative DNS servers for verisign.com using the large number of responses approach:

johnf@carbon:~$ whois verisign.com
[...]
   Name Server: A2.NSTLD.COM
   Name Server: C2.NSTLD.NET
   Name Server: D2.NSTLD.NET
   Name Server: E2.NSTLD.NET
   Name Server: F2.NSTLD.COM
   Name Server: G2.NSTLD.COM
   Name Server: H2.NSTLD.NET
   Name Server: J2.NSTLD.NET
   Name Server: K2.NSTLD.NET
   Name Server: L2.NSTLD.COM
   Name Server: M2.NSTLD.NET

And here is the whois info for godaddy.com, using the moderate number, with clients divided across different names servers:

johnf@carbon:~$ whois godaddy.com
[...]
      CNS1.SECURESERVER.NET
      CNS2.SECURESERVER.NET
      CNS3.SECURESERVER.NET

Here's a domain I know is hosted on godaddy, registered with them in 2009:

   Domain servers in listed order:
      NS27.DOMAINCONTROL.COM
      NS28.DOMAINCONTROL.COM

-JohnF

 to On 12-09-06 04:59 AM, ril.kidd wrote:
Hello,
I have setup anycast DNS using BIND as the DNS server and BIRD routing daemon. I have 1 route server
and 5 route clients.
The route clients host the DNS service and also run the routing daemon. They are peered with the route server which propagtes their routes. They all run on Ubuntu Server 12.04. It is my intention to provide load balancing in each route client by increasing the number of DNS servers in each route client. I now have two DNS servers per route client (Master and Slave) with round robin DNS. I am aware that round robin provides load distribution and not realy load balancing. Is there a way to load balance DNS in each route client cluster of DNS servers using HAproxy without any additional machine? Can HAproxy run on the DNS servers or is there a better way to load balance?

Thank you.



Reply via email to