DNS hosting module for WHMCS
Most DNS providers require an API key, while some may need additional settings such as authentication credentials or specific server configurations. All required values must be set in the .env file.
| Provider | Credentials in .env | Requirements | Status | DNSSEC |
|---|---|---|---|---|
| AnycastDNS | API_KEY |
✅ | ❌ | |
| Bind9 | API_KEY:BIND_IP |
bind9-api-server/bind9-api-server-sqlite | ✅ | 🚧 |
| Bunny | API_KEY |
✅ | ✅ | |
| Cloudflare | EMAIL:API_KEY or API_TOKEN |
✅ | ❌ | |
| ClouDNS | AUTH_ID:AUTH_PASSWORD |
✅ | ✅ | |
| Desec | API_KEY |
✅ | ✅ | |
| DNSimple | API_KEY |
✅ | ❌ | |
| Hetzner | API_KEY |
🚧 | ❌ | |
| PowerDNS | API_KEY:POWERDNS_IP |
gmysql-dnssec=yes in pdns.conf | ✅ | ✅ |
| Vultr | API_KEY |
✅ | ❌ |
- Download the latest release archive of the module.
- Extract the archive on your local machine.
- Upload the
whmcs_dnsdirectory to your WHMCS installation so the final structure is:/modules/addons/whmcs_dns/ - Verify that the module files are readable by the web server user.
- Log in to the WHMCS Admin Area.
- Navigate to System Settings → Addons.
- Locate DNS Hosting in the list.
- Click Activate.
To use the BIND9 module, you must install the bind9-api-server on your master BIND server. This API server allows for seamless integration and management of your DNS zones via API.
Make sure to configure the API server according to your BIND installation parameters to ensure proper synchronization of your DNS zones.
After activating the addon, configure the module settings in WHMCS → System Settings → Addons:
-
DNS Provider
Identifier of the PlexDNS-supported provider
(e.g.Desec,PowerDNS,Cloudflare, etc.) -
API Key
API key for the selected DNS provider. -
SOA Email
Email address used in the SOA record (where applicable). -
Nameservers (NS1–NS5)
Nameservers that clients should point their domains to when using this DNS service.
Click Save Changes to apply the configuration.
- Clients access DNS management from their Domain Details page.
- A “DNS Manager” link appears in the domain sidebar.
- DNS zones are not created automatically.
- Clients must explicitly click “Enable DNS” to create a DNS zone.
- Once enabled, DNS records can be added, edited, or deleted.
- Clicking “Disable DNS” removes (deletes) the DNS zone from the provider.
To update the DNS hosting module to the latest version, download the newest release and replace the existing module files.
- Download the latest release archive from the repository.
- Extract the archive to a temporary directory.
- Locate the
whmcs_dnsdirectory inside the extracted release. - Copy the
whmcs_dnsdirectory into/modules/addons, overwriting the existingwhmcs_dnsdirectory.
From your server:
cd /tmp
wget https://github.com/getnamingo/whmcs-dns/releases/download/v1.0.1/whmcs-dns-v1.0.1.tar.gz
tar xzf whmcs-dns-v1.0.1.tar.gz
cd whmcs-dns-v1.0.1
mv whmcs_dns /path/to/whmcs/modules/addons/whmcs_dnsYour feedback and inquiries are invaluable to Namingo's evolutionary journey. If you need support, have questions, or want to contribute your thoughts:
-
Email: Feel free to reach out directly at help@namingo.org.
-
Discord: Or chat with us on our Discord channel.
-
GitHub Issues: For bug reports or feature requests, please use the Issues section of our GitHub repository.
We appreciate your involvement and patience as Namingo continues to grow and adapt.
If you find DNS hosting module for WHMCS useful, consider donating:
- Donate via Stripe
- BTC:
bc1q9jhxjlnzv0x4wzxfp8xzc6w289ewggtds54uqa - ETH:
0x330c1b148368EE4B8756B176f1766d52132f0Ea8
DNS hosting module for WHMCS is licensed under the MIT License.