DNS Manager
Think of DNS Manager as your address book for the internet. Each “zone” is a domain (or a reverse DNS block) you control here. You can add new zones, open one to edit its records, or remove zones you don’t need anymore.
Who can use this
- Root: sees and manages all zones.
 - Resellers: see only zones they own.
 - Users: when editing a zone, access is limited to zones linked to their own account.
 
What you’ll see
- DNS Zones — your domains (e.g., 
example.com) and reverse blocks (e.g.,10.168.192.in-addr.arpa). - Owner (root only) — who owns the zone (root or a reseller).
 - Account — which system account the zone is linked to.
 - Manage — open the zone editor to add/edit DNS records.
 - Actions (root) — delete the whole zone safely.
 
Create a new zone
- Enter the zone name: 
domain.tldor a reverse zone like10.168.192.in-addr.arpa. - Click Create. We’ll validate the name, generate the zone files, and wire it up for DNS service.
 
Heads-up: If a YAML or DB file already exists for that zone, we’ll stop you before anything is overwritten.
Delete a zone
- Click Delete on the row, confirm, and the zone is removed from DNS.
 - Use with care; removing a zone immediately affects live resolution.
 
Editing a DNS Zone (record view)
This is the heart of DNS: records. Each row is one record (A, AAAA, CNAME, MX, TXT, etc.). You can add new ones, edit existing ones in-place, or remove what you don’t need. We increment the zone’s SOA serial for you on every save.
Adding a record
- In the Add row at the top, fill Name (e.g., 
www.example.com.or justwww), TTL (seconds), and pick a Type. - Enter the required fields for that type (we show the right inputs automatically).
 - Click Add Record. We validate and update DNS right away.
 
  Shortcut: when you type a bare label (like www) and press Tab or leave the field,
  we’ll add the domain suffix for you (e.g., www.example.com.).
Editing a record
- Click Edit on a row, change the values, then Save.
 - We bump the SOA serial and regenerate the live zone so changes resolve immediately.
 - The SOA record itself (primary NS, email, timers) is editable, but can’t be deleted.
 
Deleting a record
- Click Delete on the row and confirm. The record is removed and the zone is rebuilt.
 
Common record types (plain-English cheat sheet)
- A — IPv4 address. Example: 
www → 203.0.113.10. - AAAA — IPv6 address. Example: 
www → 2001:db8::10. - CNAME — alias. Example: 
cdn → edge.example.net.(note the trailing dot for FQDNs). - MX — mail exchanger. Example: priority 
10destmail.example.com.. - TXT — free text (SPF/DKIM/verification). Paste as-is; quotes are handled.
 - NS — nameserver for the zone (usually already set to your defaults).
 - SRV — service location (_service._proto, priority/weight/port/target).
 - PTR — reverse DNS (used in reverse zones).
 - CAA — which CA may issue certs for your domain.
 
Validation & safety
- We validate names, IPs, and required fields before applying changes.
 - Every change updates the SOA serial automatically — resolvers know to refresh.
 - If a change can’t be applied, you’ll see a clear error and nothing breaks.
 
Tips
- Use FQDNs with a trailing dot for destinations (
mail.example.com.) to avoid accidental suffixing. - For MX, lower priority = higher preference (10 beats 20).
 - Reverse DNS (PTR) must be added on the owner of the reverse zone (your provider or your own reverse zone).
 
DNS Cluster
A DNS cluster makes your zones highly available by pushing them to one or more remote DNS-only nodes. Add a node once, and from then on your zones sync automatically. No more manual copying of zone files.
What “Enable DNS Cluster” does
- When enabled, every time a zone changes, we sync it to all configured nodes that are reachable.
 - When disabled, nothing is pushed — existing zones on nodes aren’t removed or changed.
 
Adding a DNS node (one-time)
- Fill in a label (e.g., 
ns2), IP/host, SSH port (usually 22), and the node’s root password (one-time). - Click Add. We’ll:
    
- Create a dedicated dnscluster SSH keypair (if it doesn’t exist).
 - Install and prepare PowerDNS on the remote node (flat-file backend, safe defaults, auto-regeneration).
 - Set up key-based SSH so future syncs don’t need passwords.
 
 
Requirement: remote OS must be AlmaLinux/RHEL 9 (the installer checks and tells you what it found).
Daily use
- Sync Now — manually push all local zones to every node (handy after big imports).
 - Test — probe if a node is reachable and whether PDNS is running.
 - Remove — take a node out of the cluster (no remote deletion is performed).
 
What gets synchronized
- Every zone you manage locally gets pushed as a flat 
.dbfile to/etc/pdns/zones/on the node. - The node keeps an 
/etc/pdns/pdns.zonesindex up to date and reloads PDNS cleanly. 
Good practices
- Run at least two DNS nodes in different locations for resilience.
 - Keep cluster enabled so changes propagate automatically; use “Sync Now” after migrations as a belt-and-suspenders step.
 - Monitor nodes with your usual server monitoring; PDNS should stay active on each.