PowerDNS

Software version2.9.22
Operating SystemDebian 6
WebsitePowerDNS Website
Last Update15/05/2012

Introduction

PowerDNS is (as its name suggests) a DNS server. It’s a direct competitor to Bind. It aims to be less memory-intensive and offers more flexible configuration options than Bind.

PowerDNS is divided into several roles:

  • Master
  • Cache

In this guide, we’ll cover the master server configuration. If you wish to set up a PowerDNS cache server, please follow this link.

Installation

First, we’ll install a MySQL database (unless you already have another database you wish to use as a backend):

  aptitude install mysql-server
  

Then we’ll install PowerDNS:

  aptitude install pdns-server pdns-backend-mysql
  

Configuration

MySQL

First, let’s create the database:

  mysqladmin -uroot -p create pdns
  

Then we’ll create the tables, indexes and assign the permissions:

  mysql -uroot -p pdns < /usr/share/doc/pdns-backend-mysql/mysql.sql
  

PowerDNS

Now let’s configure PowerDNS. We’ll specify that we’re going to use a MySQL backend:

  [...]
#################################
# launch        Which backends to launch and order to query them in
#
launch=gmysql
[...]
  

Then we’ll provide the previously configured information:

  # Here come the local changes the user made, like configuration of 
# the several backends that exist.

# MySQL Configuration
gmysql-host=127.0.0.1
gmysql-user=pdns
gmysql-password=password
gmysql-dbname=pdns
  

Now restart PowerDNS:

  /etc/init.d/pdns restart
  

You can now configure your DNS zones and records. I strongly recommend using a web interface to help you with this. For example, you can use PowerAdmin.

References

http://www.debiantutorials.com/installing-powerdns-as-supermaster-with-slaves/

Last updated 15 May 2012, 14:45 CEST. history