Server Fault is a question and answer site for system and network administrators. Join them; it only takes a minute:

Sign up
Here's how it works:
  1. Anybody can ask a question
  2. Anybody can answer
  3. The best answers are voted up and rise to the top

At or on you can select multiple A records depending on location; (United States) (Europe)

So requests are routed based on proximity/where they come from.

You can do that as many times as you like, which is a great service for our distributed application needs.

However, we want to manage this on our own servers. Do you know any linux package that does this ?

share|improve this question
I'm not quite sure how this simpledns works but to clarify my question, we need something like this for linux: – Devrim Sep 16 '09 at 4:59
This post is a duplicate:… aka use pydns – ArrowInTree Dec 26 '12 at 4:44
how can a later post make the previous one 'duplicate' ? – Devrim Dec 28 '12 at 23:41
Wouldn't be correct solution to use BGP routing instead of this DNS hacks to route users based on location to particular destination? – Jiri Xichtkniha Oct 30 '13 at 14:23
up vote 7 down vote accepted

There are patches available to do GeoIP in various DNS servers.


Good writeup of Bind patches, includes RPMs:


Also interesting is this hack, which involves not patching Bind:

share|improve this answer

Wikipedia uses the free (as in free speech, not only as in free beer) software PowerDNS to do so, with a geoip backend.

Just remember that all the GeoIP databases are imperfect and that geographical location is a poor tool to estimate the network distance to a given server. Protocols like ICS are a much better solution.

share|improve this answer
+1 : ICS looks very interesting, although it will require a fair bit of infrastructure work before becoming more practical. – Murali Suriar Sep 16 '09 at 12:46
Thanks for the answer. Though we could do as good (good as in naah not oh no) without the parentheses... – Devrim Sep 16 '09 at 14:35

Also see for something that lets you do GeoIP and a whole lot more.

share|improve this answer
wow this looks fantastic – Devrim Sep 25 '09 at 19:18

I would just like to point out the ip2location BIND ACL file is subscription based, and so costs. The methods described at allow anyone to create their own BIND ACL file free of charge, using the freely downloadable MaxMind CSV file, though granted, the ip2location one is probably more accurate (accuracy is what most people pay for).

On a tangent, if anyone is looking for geo-aware BIND on the IPv6 network, I have updated the page at with further scripts which can process 128 bit numbers within a CSV file. I have just found out today that MaxMind do offer a downloadable GeoIPv6 CSV file, which these scripts will operate over to produce a GeoIPv6.acl file for BIND.

share|improve this answer

Your Answer


By posting your answer, you agree to the privacy policy and terms of service.

Not the answer you're looking for? Browse other questions tagged or ask your own question.