PowerDNS
PowerDNS [1] is the DNS server we use for geographic DNS balancing, and possibly "normal" authoritative DNS in future as well. This page explains configuration.
Global configuration
It's best to bind PowerDNS to a specific IP, instead of INADDR_ANY. To do that, put:
local-address=IP query-local-address=IP
A backend like geobackend can't make use of caching, since returned results will be different depending on "who's asking". Therefor, disable caching:
query-cache-ttl=0 cache-ttl=0 negquery-cache-ttl=300
If just geobackend is used, multithreading is unneccessary, and may even impact performance. Make pdns singlethreaded with:
distributor-threads=1
In geobackend itself, there are no wildcard records, so pdns shouldn't have to check for them:
wildcards=no
Running privileged is unnecessary (of course make sure these user/group exist):
setuid=pdns setgid=pdns
Launch the backend that will be used, in the specified order:
launch=geo