PowerDNS Manager for WHMCS Print

  • 9

PowerDNS Manager connects WHMCS to a PowerDNS Authoritative API. The addon manages domain-zone associations and DNS records; the server module provisions DNS hosting services.

These instructions apply to version 1.16. Check the version of your downloaded module package before upgrading.

Before installing

  • Have a working PowerDNS Authoritative server with its API enabled and reachable from WHMCS.
  • Use WHMCS 8.9 or newer and a PHP/module package combination supported by your installed WHMCS version. PHP cURL is required.
  • Have your module license, API URL, API key, PowerDNS server identifier and authoritative nameservers ready.
  • For DNSSEC, configure a suitable PowerDNS backend. The gmysql backend requires its DNSSEC support to be enabled.
  • Back up WHMCS and PowerDNS before changing zone management.

Restrict API access to the systems that need it. Use a verified HTTPS endpoint or an appropriately protected local/private connection. Fix certificate or access-control problems rather than sending the API key over unprotected public HTTP. This module guide does not replace server-specific PowerDNS deployment instructions.

Install and configure

  1. Upload the release archive's modules folder to the WHMCS root, preserving both modules/addons/powerdns_manager/ and modules/servers/powerdns_manager/.
  2. Open System Settings > Addon Modules and activate PowerDNS Manager.
  3. Enter the license key and API settings. The API URL ends in /api/v1; Server Name is the PowerDNS API identifier, commonly localhost, not an arbitrary display label.
  4. Set Primary and Secondary Nameserver. Third, Fourth and Fifth Nameserver are optional.
  5. Select the zone type that matches your replication design: Native or Master.
  6. Review Default TTL, Auto-increment SOA Serial, Show Nameservers in Client Area, Public DNS Server and administrator access.
  7. Save, open Addons > PowerDNS Manager and test with a zone you control before onboarding customers.

Enable DNSSEC Interface controls the client DNSSEC controls. Algorithm choices must be supported by the PowerDNS installation and your registrar. Enabling the interface alone does not complete DNSSEC delegation.

Clear Data on Deactivation removes module-side stored zone data when enabled. It is not a switch for deleting actual PowerDNS zones. Leave it off unless you deliberately intend to remove that module data.

Domains and existing zones

Registration and transfer hooks create or associate zones. Administrators can review zone associations, manage records, import and export zones and use the association tools for existing domains. Confirm ownership before linking an existing PowerDNS zone to a customer.

For an associated domain, the native domain-details DNS Management link opens the PowerDNS editor. Since 1.15, this route also handles the registrar DNS Management setting being off. A domain without an association may need administrator attention; this guide does not promise client-side zone creation for unassociated domains.

DNS deletion and termination actions can remove zones or associations. Check whether other services depend on a zone before deleting a domain or terminating DNS hosting.

Create a DNS hosting product

  1. Create a WHMCS product for DNS hosting.
  2. Make sure the service supplies the domain whose zone you want to provision.
  3. Under Module Settings, select PowerDNS Manager and save.
  4. Choose the WHMCS provisioning timing appropriate for the product and test creation with a controlled service.

The server module uses the addon API settings. It does not require a second copy of the API credentials in a separate server definition. Its suspend and unsuspend functions do not remove or disable the DNS zone. Termination is a separate operation.

Records, import and export

The editor supports A, AAAA, CNAME, MX, TXT, SRV, CAA, NS and TLSA records. SOA and protected nameserver records have special handling. Use the editor's fields for priority and other type-specific values.

Export the current zone before importing a BIND-style zone file. Choose the import mode carefully:

  • Merge with existing: Skip imported entries whose name and record type already exist. This does not merge extra values into an existing name/type record set.
  • Replace all records: Replace existing records other than SOA. This can remove live DNS records.
  • Add all records: Append the supplied records, which can introduce duplicates.

After import, review the resulting records and verify resolution. A successful save is not proof that every resolver already sees the change.

Zone templates

Use the admin Templates tab to define record sets and assign them to products or TLDs. These templates apply when the module creates a zone; they are not a bulk reset of existing zones.

A matching hosting-product template takes precedence. Otherwise, the longest matching TLD assignment is used. Without a match, the zone keeps its default SOA and NS records.

Supported placeholders include {domain}, {service.dedicated_ip}, {service.assigned_ip}, {server.ip}, {server.hostname} and {client.id}. A record that needs an unavailable value is skipped and logged. Apex SOA, NS and CNAME template records are blocked.

Templates are applied once per tracked zone. Changing a template does not automatically rewrite existing customer records.

DNSSEC

  1. Confirm that the authoritative server and zone can use DNSSEC.
  2. Enable the DNSSEC interface and open the zone's DNSSEC panel.
  3. Enable DNSSEC for the zone and inspect the generated key and DS information.
  4. Publish the required DS information with the domain registrar.
  5. Use the on-demand status/validation controls and verify the delegation after propagation.

Plan registrar DS changes before disabling signing or rotating keys. Leaving a DS record for a key no longer used by the zone can break validation. The module's enabled/disabled indicator is not itself proof of a working public chain of trust.

Upgrade to 1.16

  1. Back up the database and current module files.
  2. Upload the released archive matching your PHP version and overwrite the module files.
  3. Do not deactivate and reactivate the addon.
  4. Open the addon in the WHMCS admin area so WHMCS can run the additive upgrade callback.
  5. Check zone associations, Templates and a test record edit.

Version 1.16 adds missing tables on older installations while preserving existing settings, associations, templates and DNSSEC metadata. It also marks pre-template zones as already applied rather than applying new defaults to them.

Troubleshooting

  • 401/403: Check the API key and the access rules for the WHMCS source address.
  • 404: Check the API base path and server identifier.
  • Nameservers list must be given: Review PowerDNS API Compatibility Mode against the installed PowerDNS version.
  • Missing DNSSEC controls: Check Enable DNSSEC Interface and backend DNSSEC configuration.
  • Missing Templates table after an update: Confirm the complete 1.16 package is installed and open the addon to run its upgrade. Do not use deactivation as a repair step.
  • A record edit fails: Refresh the zone and retry against its current record value. Check for protected records and concurrent changes.

Review the WHMCS Activity Log and, when needed, a short Module Debug Log capture. Redact API keys and private record data before sending logs to ArkHost support.


Was this answer helpful?

« Back

WHOIS Information

×
Loading WHOIS information...