What Is Round Robin DNS?

by Mr. DNS on November 21, 2009 · 1 comment

in whatis

Round robin DNS is nothing but a simple technique of load balancing various Internet services such as Web server, e-mail server by creating multiple DNS A records with the same name.

How Does It Works?

You configure DNS server to send a list of IP addresses of several servers with same hostname. For example, foo.dnsknowledge.com may be configured to return two IP address as follows:

  • foo.dnsknowledge.com – 202.54.1.2
  • foo.dnsknowledge.com – 202.54.1.3

Half of the time when a user make foo.dnsknowledge.com request will go to 202.54.1.2 and rest will go to 202.54.1.3. In other words, all clients would receive service from two different server, thus distributing the overall load among servers.

Round Robin DNS Usage

You can use round robin DNS for

  1. Load distribution.
  2. Load balancing.
  3. Fault-tolerance service.

Round Robin DNS Example

Open a terminal (Mac OS X or UNIX / Linux) and type the following command to see IP address of google.com:
host -t A google.com
Sample outputs:

google.com has address 74.125.53.100
google.com has address 74.125.45.100
google.com has address 74.125.67.100

So a request to google.com would be split into the 3 server. When you type http://google.com/ first time in a browser, 74.125.53.100 will display google search home page. Type the following command again at the shell prompt:
host -t A google.com
Sample outputs:

google.com has address 74.125.67.100
google.com has address 74.125.53.100
google.com has address 74.125.45.100

Next request would go to the server 74.125.67.100. By using Round Robin DNS google managed to lighten the webserver load. This kind of setup pretty common among the large website such as google.com, amazon.com, yahoo.com etc. If your site gets a large number of hits (millions of unique hits per day) per day, consider using this technique.

Suggested Readings:

{ 1 comment… read it below or add one }

Suhail Yousaf November 7, 2010 at 9:47 am

Hi, I want to insert my custom policy for load balancing in Bind9. Could you please guide me where can I do it in the source code of Bind9.

Reply

Previous post:

Next post: