Networking & DNS

DNS server software: BIND vs PowerDNS explained

Authoritative vs recursive DNS servers, how BIND and PowerDNS differ in storage, performance and features, what cPanel uses, and how to test a DNS server with dig.

IntermediateDNS servers3 min read

A DNS server answers questions like "what is the IP address of example.com?". BIND and PowerDNS are the two DNS server programs you are most likely to meet on hosting servers. This guide explains the types of DNS server, compares BIND vs PowerDNS, and shows how to test any nameserver.

Before you start

It helps to understand records and nameservers first; see DNS record types explained. On MdmHost hosting, DNS for your domains is managed in cPanel's Zone Editor – you do not need to run your own DNS server.

Authoritative vs recursive DNS servers

  • Authoritative server – holds the official zone for a domain and answers for it. Your domain's nameservers (for example ns1 and ns2) are authoritative servers.
  • Recursive resolver – used by clients; it asks root, TLD and authoritative servers on the client's behalf and caches results. Your ISP, 1.1.1.1 and 8.8.8.8 are resolvers.

Never run an open recursive resolver on a public server: attackers abuse them for DNS amplification attacks.

BIND

BIND (named) from ISC is the oldest and most widely deployed DNS server. It can act as authoritative server, resolver, or both. Zones live in plain-text zone files and the main config is named.conf. It supports DNSSEC, zone transfers (AXFR/IXFR), views and dynamic updates.

PowerDNS

PowerDNS separates roles into two products: the Authoritative Server and the Recursor. The authoritative server reads zones from backends such as a database (MySQL, PostgreSQL), LMDB or BIND-style zone files, and offers an HTTP API. That makes it popular with providers that manage many zones automatically.

BIND vs PowerDNS compared

BINDPowerDNS
RolesAuthoritative and recursive in one daemonSeparate authoritative server and recursor
Zone storageZone filesDatabase, LMDB or zone-file backends
ChangesEdit file, increase serial, reloadDatabase row or API call
APIrndc control channelBuilt-in REST API
DNSSECYesYes, with simple automatic signing
cPanelSupportedDefault on current versions

On cPanel servers you choose the nameserver in WHM → Service Configuration → Nameserver Selection; PowerDNS is the default on recent versions and supports DNSSEC there.

Test a DNS server with dig

  1. Ask a specific server for a record, bypassing caches:
    dig @ns1.example.com example.com A +norecurse

    The aa flag in the answer means the reply is authoritative.

  2. Check which nameservers the parent zone lists:
    dig example.com NS +short
  3. Compare the SOA serial on each nameserver; they should match:
    dig @ns2.example.com example.com SOA +short
  4. Confirm the server is not an open resolver (should be refused):
    dig @your-server-ip google.com

Troubleshooting

  • SERVFAIL: zone syntax errors or broken DNSSEC. For BIND check with named-checkzone example.com /path/to/zonefile.
  • Old records still returned: secondary servers did not update because the serial was not increased, or resolvers still cache the old TTL.
  • REFUSED: the server is not authoritative for the zone you asked about.

FAQ: BIND vs PowerDNS

Which is faster, BIND or PowerDNS?

Both handle large query volumes. PowerDNS often scales management better for many zones thanks to database backends and its API.

Do I need two DNS servers?

Yes. Registries expect at least two nameservers, ideally on different networks, so your domain resolves if one fails.

Can I switch cPanel from BIND to PowerDNS?

Yes, through Nameserver Selection in WHM. Existing zones are kept.

Next steps

Was this guide helpful?

Still stuck?

Ask MdmHost AI for a quick answer, or open a ticket and our team will take a look. We are here 24/7.