PowerDNS

PowerDNS is a DNS server, written in C++ and licensed under the GPL. PowerDNS features a large number of different backends ranging from simple BIND style zonefiles to relational databases and load balancing/failover algorithms.

Installation

Install the powerdns package.

Next you can review the configuration file located at /etc/powerdns/pdns.conf.

Backends

To configure PowerDNS to use specific backend you will need to set the launch option in configuration file. Also depending on particular backend you use, you will have to configure it.

For PostgreSQL, MySQL and SQLite you can find database table creation SQL files located at /usr/share/doc/powerdns.

PostgreSQL backend

Firstly you will need to create a user and database where PowerDNS can store data.

Then execute "schema.pgsql.sql" file to create tables.

psql -U <user> -d <database name> -a -f /usr/share/doc/powerdns/schema.pgsql.sql

And finally update configuration file

launch=gpgsql
gpgsql-host=/run/postgresql # if PostgreSQL is listening to unix socket
# gpgsql-host=127.0.0.1
# gpgsql-port=5432
gpgsql-dbname=<database name>
gpgsql-user=<user to use>
gpgsql-password=

MySQL backend

Install and run a MySQL server. Create a new user, and a new database and import the schema into the db:

mysql -u root -p pdns < /usr/share/doc/powerdns/schema.mysql.sql

Then, configure Powerdns to use MySQL:

/etc/powerdns/pdns.conf
launch=gmysql
gmysql-host=127.0.0.1
gmysql-socket=/run/mysqld/mysqld.sock
gmysql-user=pdns
gmysql-password=Pa$w0rd
gmysql-dbname=pdns
# Add this for dnssec support
# gmysql-dnssec=yes

You could also use localhost instead of 127.0.0.1, but this causes PowerDNS to use the socket file. As PowerDNS runs in a chroot by default, the socket file is not available.

Startup

Start/enable pdns.service.

gollark: We can test this once I get a more highly trained version up.
gollark: It seems like it's overfitting somewhat.
gollark: Maybe I should *also* be stripping Discorduous links also.
gollark: > /containment-SCP-125-7200-73950392338353323383533890635431966.png?width=362&height=362&height=421<|endoftext|>The SCP-3125 class is the place which is nowhere. I'm not sure how much is beyond its capacity.<|endoftext|>I guess that does not match the case.<|endoftext|>Yes, exactly.<|endoftext|>I mean, it's not anomalous.<|endoftext|>I can't say no.<|endoftext|>I wonder if there's any sort of sort of way to handle functions nicely, but I really don't have a nice library.<|endoftext|>Yes, like I said, I don't agree with the problem.<|endoftext|>I know of it, but I don't like it.<|endoftext|>And I don't know what you mean.<|endoftext|>Just don't use the advanced "journal" technology.<|endoftext|>I think that's just a word fragment.<|endoftext|>I think it's a general
gollark: The asterisk is in the wrong place.

See also

This article is issued from Archlinux. The text is licensed under Creative Commons - Attribution - Sharealike. Additional terms may apply for the media files.