Round robin DNS is a technique in which load balancing is performed by a DNS server instead of a strictly dedicated machine. A DNS record has more than one value IP address.
When a request is made to the DNS server which serves this record, the answer it gives alternates for each request. For instance, if you had a three web server that you wished to distribute requests between, you could setup your DNS zone as follows:
Open your zone file using vi text editor and add/modify www entry as follows:
# vi zone.xyz.com
Append/modify www entry:
www IN A 1.2.3.4
IN A 5.6.7.8
IN A 9.10.11.12
IN A 15.16.17.18
Save and restart BIND9.
# service named restart
If you run nslookup for xyz.com:
# nslookup xyz.com
Output:
Address: 1.2.3.4
Name: xyz.com
Address: 5.6.7.8
Name: xyz.com
Address: 9.10.11.12
Name: xyz.com
Address: 15.16.17.18
One more time:
# nslookup xyz.com
Output:
Name: xyz.com
Address: 5.6.7.8
Name: xyz.com
Address: 1.2.3.4
Name: xyz.com
Address: 9.10.11.12
Name: xyz.com
Address: 15.16.17.18
When a query is made to the DNS server it will first give the IP of 1.2.3.4 for the www host. The next time a request is made for the IP of www, it will serve 5.6.7.8 and so on.
The order in which IP addresses from the list are returned is the basis of the round robin name. While this is a form of load balancing, it should be noted that if one of the hosts becomes unavailable, the DNS server does not know this, and will still continue to give out the IP of the downed server.