| Version 42 (modified by anon, 7 years ago) |
|---|
PowerDNS FAQ
Here you can find the answer to some of the most frequently asked questions about PowerDNS. If you have a question not answered by this page you can add
''add your question by clicking on the "Edit this page" link at the bottom of this page.''
Contents
- 1 Where is the old official FAQ?
- 2 What is PowerDNS and why is it called that way?
- 3 What is PowerDNS recursor?
- 4 I'm on a Linux SMP system and performance is dysmal, what can I do?
- 5 Where did powerdns.org go? And where can I find its contents?
- 6 What happened to the CVS repository?
- 7 I opened a ticket with 'cvstrac', where did it go?
- 8 I'm a developer, can I help?
- 9 The ADDITIONAL is section different than bind's answer, why?
- 10 The logfile is showing "Authoritative empty NO ERROR to 1.2.3.4 for 'powerdns.nl' (AAAA).."
- 11 Can I launch multiple backends simultaneously?
- 12 PowerDNS does not give authoritative answers, how come?
- 13 Which backend should I use? There are so many!
- 14 I try to launch the pgmysqlbackend and it can't find it!
- 15 PowerDNS compiles under OpenBSD, but crashes immediately, now what?
- 16 I'm trying to build from CVS but I get lots of weird errors!
- 17 I'm on Solaris 7 and AAAA records do not work
- 18 When compiling I get errors about 'sstream' and 'ostringstream', or BITSPERCHAR
- 19 Ok, I've installed gcc 3.2.1 but now the gpgsql backend won't link
- 20 I've installed PostgreSQL 7.3 (or later) and it has no libpq++.so
- 21 PowerDNS crashes when I install the pdns-static .deb on Debian SID
- 22 Why don't my slaves act on notifications and transfer my updated zone?
- 23 Master or Slave support is not working, PDNS is not picking up changes
- 24 My masters won't allow PowerDNS to access zones as it is using the wrong local IP address
- 25 I compiled PowerDNS myself and I see weird problems, especially on SMP
- 26 I see this a lot: Backend error: Failed to execute mysql_query, perhaps connection died?
- 27 PowerDNS does not answer queries on all my IP addresses
- 28 Can I use a MySQL database with the Windows version of PowerDNS?
Enter any Frequently Asked Questions and Answers here please!
1 Where is the old official FAQ?
All questions from the original faq (http://rtfm.powerdns.com/pdns-users-faq.html) are being incorporated into this wikifaq. But its nice to have an old reference.
2 What is PowerDNS and why is it called that way?
Because it has more POWER
3 What is PowerDNS recursor?
The recursor (as we like to call it) is a caching nameserver. It operates just like all the other caching nameservers like bind8, bind9, dnscache, maradns. It has its own FAQ on http://wiki.powerdns.com/projects/trac/wiki/RecursorFAQ
4 I'm on a Linux SMP system and performance is dysmal, what can I do?
Upgrade to 2.6 and a recent glibc. Debian Woody is too old for it to benefit from kernel 2.6. Expect massive performance improvements.
5 Where did powerdns.org go? And where can I find its contents?
It was registered by another party after a misunderstanding with our registrar. The contents have moved to http://wiki.powerdns.com
6 What happened to the CVS repository?
We switched to Subversion, the repository is on svn://svn.powerdns.com/
7 I opened a ticket with 'cvstrac', where did it go?
Here: http://ds9a.nl/cgi-bin/cvstrac/pdns/rptview?rn=4 New tickets should be opened here: http://wiki.powerdns.com/projects/trac/newticket
8 I'm a developer, can I help?
Yes - grep the source for XXX or TODO or FIXME, you have your work cut out for you :-) Also, look at http://wiki.powerdns.com/projects/trac/wiki/TodoList
9 The ADDITIONAL is section different than bind's answer, why?
My powerdns is not answering with a verbose ADDITIONAL SECTION that includes A records for the namservers of the domain queried.
Powerdns by default does not 'trust' other zones in its own database so you may want to add out-of-zone-additional-processing=yes to your configuration to tell him to do so. If the domain your nameservers are in is known to your powerdns' backend it will now include them into the additional section.
10 The logfile is showing "Authoritative empty NO ERROR to 1.2.3.4 for 'powerdns.nl' (AAAA).."
As the name implies, this is not an error. It tells you there are questions for a domain which exists in your database, but for which no record of the requested type exists. To get rid of this error, add ''log-dns-details=off'' to your configuration.
11 Can I launch multiple backends simultaneously?
You can. This might for example be useful to keep an existing BIND configuration around but to store new zones in, say MySQL. The syntax to use is ''launch=bind,gmysql''.
12 PowerDNS does not give authoritative answers, how come?
This is almost always not the case. An authoritative answer is recognized by the 'AA' bit being set. Many tools prominently print the number of Authority records included in an answer, leading users to conclude that the absence or presence of these records indicates the authority of an answer. This is not the case.
Verily, many misguided country code domain operators have fallen into this trap and demand authority records, even though these are fluff and quite often misleading. Invite such operators to look at section 6.2.1 of RFC 1034, which shows a correct authoritative answer without authority records. In fact, none of the non-deprecated authoritative answers shown have authority records!
Sorry for sounding like DJB on this, but we get so many misguided questions about authority..
13 Which backend should I use? There are so many!
If you have no external constraints, the Generic MySQL (gmysql) and Generic PostgreSQL (gpgsql) ones are probably the most used and complete. By all means do not use the non-generic MySQL backend, which is deprecated and only available for older installations.
The Oracle backend also has happy users, we know of no deployments of the DB2 backend. The BIND backend is pretty capable too in fact, but many prefer a relational database.
14 I try to launch the pgmysqlbackend and it can't find it!
You did not read the changelog, nor the README. The 'pgmysql' backend is no more and has been split into the gmysql and gpgsql backends, with the common code residing within PowerDNS itself.
15 PowerDNS compiles under OpenBSD, but crashes immediately, now what?
Reasons behind this are somewhat unclear but we hear they go away if you use a more recent compiler. Let us know on pdns-dev@mailman.powerdns.com. See also http://www.codeninja.nl/openbsd/powerdns/.
16 I'm trying to build from CVS but I get lots of weird errors!
Read the 'HACKING' file, it lists the build requirements (mostly autoconf, automake, libtool). In many cases, it may be easier to build from the source distribution though.
17 I'm on Solaris 7 and AAAA records do not work
Indeed, and this is pretty sad. Either upgrade to Solaris 8 or convince people to write the replacement functions needed to encode AAAA if the host operating system does not offer them.
18 When compiling I get errors about 'sstream' and 'ostringstream', or BITSPERCHAR
Your gcc is too old. Versions 2.95.2 and older are not supported. Many distributions have improved gcc 2.95.2 with an ostringstream implementation, in which case their 2.95.2 is also supported. We like gcc 3.2.1 best.
19 Ok, I've installed gcc 3.2.1 but now the gpgsql backend won't link
Sadly, the gcc C++ on-disk object format has changed a few times since the 2.95 days. This means that gcc 3.2.1 cannot link against libpq++.so compiled with 2.95. The trick is to recompile PostgreSQL with 3.2.1 too and have it install in a separate location. Then reconfigure the pdns compile to look there, with ''./configure --with-pgsql-lib=/opt/postgresql-with-3.2.1/lib''
20 I've installed PostgreSQL 7.3 (or later) and it has no libpq++.so
As of 7.3, libpq++ has been split out of the main PostgreSQL distribution. See here. It would in fact be a great idea to move the gpgsql backend to the C interface instead of the C++ one. On Debian 'Sid', libpq++.so hides in the libpqpp-dev package.
21 PowerDNS crashes when I install the pdns-static .deb on Debian SID
Indeed. Install the .debs that come with Debian or recompile PowerDNS yourself. If not using MySQL, the crashes will go away if you remove setuid and setgid statements from the configuration.
22 Why don't my slaves act on notifications and transfer my updated zone?
Raise the serial number of your zone. In most backends, this is the first number of the SOA contents field. If this number is lower to equal to that on a slave, it will not consider your zone updated.
23 Master or Slave support is not working, PDNS is not picking up changes
The Master/Slave apparatus is off by default. Turn it on by adding a slave and/or master statement to the configuration file. Also, check that the configured backend is master or slave capable.
24 My masters won't allow PowerDNS to access zones as it is using the wrong local IP address
Mark Bergsma contributed the query-local-address setting to tell PowerDNS which local IP address to use.
25 I compiled PowerDNS myself and I see weird problems, especially on SMP
There are known issues between gcc <3.2 and PowerDNS on Linux SMP systems. The exact cause is not known but moving to our precompiled version always fixes the problems. If you compile yourself, use a recent gcc!
26 I see this a lot: Backend error: Failed to execute mysql_query, perhaps connection died?
Check your MySQL timeout, it may be set too low. This can be changed in the my.cnf file.
27 PowerDNS does not answer queries on all my IP addresses
(and I've ignored the warning I got about that at startup) Please don't ignore what PowerDNS says to you. Furthermore, read 3 questions up about the local-address setting, and use it to specify which IP addresses PowerDNS should listen on.
28 Can I use a MySQL database with the Windows version of PowerDNS?
You can. MySQL support is supplied through the ODBC backend, which is compiled into the main binary. So if you want to use MySQL you can change the pdns.conf file, which is located in the PowerDNS for Windows directory, to use the correct ODBC data sources. If you don't know how to use ODBC with MySQL:
- Download MyODBC from http://www.mysql.com/
- Install the MySQL ODBC driver
Then you can follow the instructions located in Chapter 3. But instead of selecting the Microsoft Access Driver you select the MySQL ODBC Driver and configure it to use your MySQL database.
For other databases for which an ODBC driver is available, the procedure is the same as this example.