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

I am using PowerDns on a Linux box (Debian 6).

I would like to set up the powerdns server to resolve all externally unresolved DNS queries to a given, internal host. Is this possible? How is it done? I think it's necessary to use pdns-recursor, but my configuration file doesn't works !

I use mysql for backend.

I add manually and it's works, but if I delete entry I have "server failed", root dns (or isp dns) don't answer me.

share|improve this question
up vote 0 down vote accepted

PowerDNS is not designed to provide recursive results. It is intended to act only as an authoritative server for the domains it serves. This implies it will be serving domain data to other hosts.

You could add the Recursor module but I would recommend only using it on intranets. It may have appropriate security to prevent it from being used for DNS amplification attacks.

The easiest method to resolve your issue is to configure your /etc/resolv.conf file to use external servers to resolve DNS. You can use your servers from your ISPs, Google's, OpenDNS, or others. You should check that you can access your PowerDNS server on its published Nameserver address (which may not be your hosts address). Otherwise you will have to rely on your backup nameservers for local access.

share|improve this answer
PowerDNS recursor is not actually a module but a separate program, it just happens to use part of the source code that PowerDNS Server relies on and hence is shipped within the same source code tarball but as separate daemons in various packaging formats. – ZaphodB Jul 27 '11 at 12:51

This doesn't answer your literal question, but maybe all you really need is to throw a bunch of entries in your /etc/hosts file?

share|improve this answer
Since xe has PowerDNS, xe has no need to muck around with /etc/hosts files. The DNS was, after all, introduced in the early 1980s in order to render (public) hosts files obsolete; and PowerDNS is capable of being a content DNS server. – JdeBP Jun 26 '11 at 1:00
@JdeBP Okay, cool, just thought I'd throw that out there. Just in case a simple answer like that had been overlooked. Thanks! – Doc Jun 27 '11 at 16:53

On Debian

apt-get install pdns-recursor

will probably provide what you want. The recursor will bind to and only listen there by default so you will be fine regarding protection against the aforementioned DNS amplification attacks.

You might also want to read as to why those two functions are provided by separate programs.

BIND simply does it wrong.

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.