DNS Manager For WHMCS
About DNS Manager For WHMCS
DNS Manager For WHMCS is fully featured addon module that allows your customers to manage their DNS zones. Owing to great choice of submodules and unprecedented functionality DNS Manager for WHMCS easily adapts to your specific needs. |
- DNS Manager Supports The Following Modules:
✔ cPanel & cPanel DNSOnly |
✔ Rage4 DNS |
✔ 4PSA |
✔ Storm On Demand |
✔ Zonomi |
✔ PowerDNS & PowerDNS Hosted |
✔ OpenSRS |
✔ Rackspace |
✔ DNS.com |
✔ SimpleDNS |
✔ DirectAdmin |
✔ RRPProxy Module |
✔ EuroDNS |
✔ Nettica |
✔ DNS Made Easy |
✔ Parallels Plesk |
✔ AtomiaDNS |
✔ Freenom |
- DNS Manager Functionality:
✔ Multiservers Functionality |
✔ Reverse DNS: cPanel, DNSMadeEasy, PowerDNS, Rage4DNS, SimpleDNS and Storm On Demand |
✔ Adding Multiple IPs For Reverse DNS Zone |
✔ Import Tool: cPanel, 4PSA, HostBill, PowerDNS, SimpleDNS, DirectAdmin, DNS Made Easy |
✔ Email Notifications For Admin |
✔ Integration Codes + Default Template Examples |
✔ IDN Zones Supported |
✔ Add/Delete Zones |
✔ Add/Edit/Delete Zone Records |
✔ Managing DNS And rDNS Records Per Product In The Client Area |
✔ Two Client Area Templates: 'One Page' And 'Subpages' |
✔ Switching Template In The Client Area: 'Simple' Or 'Advanced' |
✔ Allow Users To Create Zones |
✔ Zones Synchronization With Cron + Whitelist (Deactivate Domains With Wrong Nameservers) |
✔ Filtering And Paging In Client Area |
✔ Disable Records Functionality |
✔ Removal Of Unused PTR Records (Cron Synchronization) |
✔ History Logs |
✔ Providing DNS Management Only Together With The Order Of Specific Domain/Product/Addon |
✔ Security Zone Management |
✔ Default Records Configuration |
✔ NameServers Configuration |
✔ Zones List Management in Admin Area |
- General Info:
✔ Multi-Language Support |
✔ Balloon Descriptions Implemented To Facilitate Understanding of DNS Manager |
✔ Supports WHMCS V4 and Later |
Installation
In this short tutorial we will show you how to successfully install DNS Manager For WHMCS. We will guide you step by step through the whole installation process. |
1. Log in to your client area and download DNS Manager. |
2. Upload and extract the module into the main WHMCS directory. |
Files in your WHMCS directory should look like this. |
3. When you install DNS Manager for the first time you have to rename 'license_RENAME.php' file. File is located in 'modules/addons/dns_manager/license_RENAME.php.' Rename it from 'license_RENAME.php' to 'license.php' . |
4. In order to configure your license key you have to edit a previously renamed 'license.php' file. Enter your licence key between quotation marks as presented on the following screen. You can find your license key at your client area → 'My Products' . |
5. After correct configuration of your license key, you have to configure 'clientareahome.tpl' file located in your currently used templates directory. The screen below shows how you should properly configure 'clientareahome.tpl' file. |
Copy and paste the following code at the beginning of your 'clientareahome.tpl' file:{php} if(isset($_GET['managedns'])) { require_once substr($this->template_dir, 0 , strpos($this->template_dir, '/templates'))."/templates/dns_templates/dns_controller.php"; }{/php} {if !$dnsmanagement} Now copy and paste the following code as the last line in the 'clientareahome.tpl' file: {/if} For the purposes of presentation we will edit file in default template. Its localization is 'whmcs/templates/default/clientareahome.tpl' . |
6. Now you have to activate the module in your WHMCS system. Login to your WHMCS admin area. Click 'Setup' then choose 'Addon Modules' . |
7. In next step you need to permit access to this module. To do so click on 'Configure' button, choose 'Full Administrator' and press 'Save Changes' . |
7*. If you are using WHMCS v4, you have to rename (ex. dns_hooks.php) and copy 'modules/addons/dns_manager/hooks.php' to the 'includes/hooks/' directory. |
8. Good job! You have just successfully installed DNS Manager For WHMCS! Now in your WHMCS system press 'Addons' then press 'DNS Manager' . You should see a following screen. |
9. It is time to add integration codes, you can find them at 'Addons' → 'DNS Manager' → 'Configuration' → 'Integration Code' . |
10. To provide a DNS management in the client area, simply enter client area and choose 'Domains' → 'Manage DNS' . |
You will see a screen as shown below. That's the proof that the entire installation process was successfully completed. |
Configuration and Management
Connection and Basic Configuration
At the beginning let's connect DNS Manager with your module. We will show you this process by connecting with cPanel. In your WHMCS click on 'Addons' then choose 'DNS Manager' . Go to 'Configuration' → 'Connection' section. |
Now press 'Name Servers' and enter the nameservers that will be visible for your customers in their client area. |
Configuration of Processing
In configuration section press 'Processing' . You will see a following screen. Note: 'Manage DNS Link' option supports only default template. |
There are several configuration options. We will present you each one of them. Firstly decide whether to use 'One Page' or 'Subpages' template and simply choose it from a dropdown menu. |
You can allow your customers to create their own DNS zones from client area for free. For this purpose tick 'Allow To Create Own Zones' → 'Free for all registered customers' and press 'Save' . |
There is also an option to allow your customers to create their own DNS zones with for example certain product. Tick 'Allow To Create Own Zones' → 'WithProducts' and select previously created product/s. We chose 'DNS Management Product' . |
Please note that while using 'Allow To Create Own Zones' option client's product should have a Dedicated IP to allow create own zones. If client's product doesn't have Dedicated IP then client will see a following screen and won't be allowed to create and new zone. |
In order to add a Dedicated IP go to 'Clients Profile' → 'Products/Services' and enter the IP in the marked field. Afterwards press 'Save Changes' . |
As you can see on the following screen our previously added IP appeared so we can proceed with adding our zone. |
Management of Multiservers
Multiservers allows you to use many different servers not necessarily using the same module. For example you can have 3 different servers to manage your DNS zones with cPanel, Rackspace and PowerDNS. |
Now you can customize your new server according to your needs. |
Management of Records
'Disable Editing Records' as then name indicates allows you to disallow editing certain record types. In order to use this feature simply tick record type you want to disable and press 'Save Changes' . |
Adding Default Records
DNS Manager allows you to add your own default records to each DNS zone. In order to add new default record press 'Default Records' and 'Add New Record' . |
Afterwards choose your record type from a dropdown menu, enter address, proper TTL, value and press 'Save Changes' . |
Now we will create new DNS zone to present you our new default record. Press the Edit button next to our new DNS zone. Keep in mind that new default records will be added only to DNS zones created after adding a new record. Operation will not affect the already existing DNS zones. |
On the following screen you see can new default record successfully added to our DNS zone. |
Management of Reverse DNS
In order to enable Reverse DNS log in to your WHMCS. Press 'Addons' → 'DNS Manager' → 'Processing' and tick 'Enable Reverse DNS' , marking 'Manage DNS Link' will be also needed. Modules that currently support Reverse DNS are cPanel, Storm On Demand, SimpleDNS and Rage4DNS. |
Now in your client area go to 'Domain' → 'Manage DNS' ,afterwards click on 'Manage Reverse DNS' . |
Next, press 'Add' button. |
Afterwards enter zone name, IP address, value and press 'Add' button once again. |
Your rDNS zone and record have been successfully created. Now you can also edit your rDNS zones. |
Management of Zones List
Zones List allows you to monitor and manage your DNS zones. You can synchronize, create or delete zones from here. Let's for example synchronize one of our DNS zones with the WHMCS system. For that purpose simply press 'Synchronize' . |
As shown on the screen below our synchronization was successful and our zone exists. Zones List allows you also to manage each zone. For this purpose simply click 'Manage Zone' . |
As you can see DNS Management for our zone appeared. Very convenient, isn't it? |
Management of Import Tool
Import Tool lets you to quickly import your zones from chosen cPanel, HostBill, 4PSA or PowerDNS server. As an example we will show you how to import your zones from cPanel server. |
If you would like to import zones from same cPanel server that you set in 'Connection' section, you can do this in a more convenient way. In such a case you can avoid entering server details. To do so simply tick 'Use your current cPanel module connection settings:' as shown on the screen below. |
As you can see entire list of zones has been successfully displayed. Let's import several zones. For this purpose choose your zones and assign a client to each of them through using dropdown menu. Afterwards press 'Import Zones' . |
The following message will appear as a confirmation of the successful accomplishment of the operation. |
Now let's check your new zones in the Zones List. As you can see on the screen, they have been properly imported. |
Management of Synchronization
Here you can set up automatic termination of unused zones and unused PTR records. Unused zone is a zone which doesn't contain all the nameservers set up in 'Configuration' → ' Nameservers '. |
Whitelist is used to avoid of accidental deletion of domains. |
Management of Email Notifications
With this functionality enabled you will receive emails each time the domain is created, modified or deleted. To receive notifications click on 'Email Notifications' located in 'Configuration' and tick 'Enable Email Notification' as shown on the screen below. |
Afterwards the 'Reported actions' section will show up. Choose notifications that suit you best and press 'Save Changes' . |
Integration Codes
With these codes you can easily change templates of your client area. You will find them in 'Configuration' → 'Integration Codes' section. You can download files you have to alter and check where to paste code. |
Client Area
Find out more about dns management in your client area. |
Management of DNS Zones
Adding new DNS zone is very simple. First you need to go to your product details and open 'Manage DNS' tab. Afterwards press 'Add Zone' . |
In next step enter your zone name, IP address and press 'Add Zone' . |
If the operation was successful, you will see a following screen. In order to check your new DNS zone details press Edit button. |
You will see a screen similar to the one shown below. Here you can view and edit your zone's details. |
Management of DNS Records
At product view, customers can manage their DNS and rDNS records. To view DNS records simply go to 'Manage DNS' tab as presented on the following screen. |
Here you can view all DNS records assigned to a certain domain. To add new record, simply enter values to record with empty textbox fields at the bottom of page as shown on the screen below. |
You can also edit records from the list. To do so, enter changes into textboxes you want to alter and press 'Save Changes' . |
Management of rDNS Records
In order to manage rDNS go to 'Domain' → 'Manage DNS' ,afterwards click on 'Manage Reverse DNS' . |
To add new rDNS zone, press 'Add' button. |
Afterwards enter zone name, IP address, value and press 'Add' button once again. |
You can also edit your rDNS zones. To do so, press edit button. |
Afterwards enter desired values into textbox and press 'Save' |
Template Switching In The Client Area
Your customers can choose the complexity of zones management through switching between two templates: 'Simple' and 'Advanced'. To enable this functionality, go to your DNS Manager → 'Configuration' → 'Processing' and tick 'Allow to switch template' as presented on the following screen. |
From this moment, new field 'Change Template' will show up in DNS Manager client area during zones management. Default template is 'Simple' and it allows your customers to edit records separately. To change template, choose 'Edit All Records (Advanced)' from a dropdown menu. |
'Advanced' template allows your customers to edit all records. Records are grouped by type. |
A screen below presents edit of CNAME records in Advanced template. |
Custom cPanel Zone Templates
You can allow your customers to create zones without cPanel Default Records. To do so you need to create your own Zone Template in the WHM. If you don't know how to create your own Zone Template you can follow this short guide made by cPanel: Edit Zone Templates Guide |
DNS Manager Logs
Logs help you keep track of all the activities carried out in DNS Manager. |
Tips
1. To provide a DNS management in client area simply enter 'Domains' → 'DNS Manager' . |
2. When you set up processing to create zones with domains, the zones will be automatically created while ordering a new domain. If you would like to add zone to your already existing domain you can do it manually. |
3. We recommend to run Cron once per hour. |
4. Cron checks up to 100 zones. If you have for example 200 zones, Cron will check zones from 1 to 100 first, then it will check zones from 101 to 200. |
5. If the zone is inactive or missconfigured for longer than 24 hours, Cron will automatically delete it. Single Cron run removes up to 5 such zones. |
6. 'Default IP' as the name suggests is default IP address of the zone. If you don't specify an IP address when you create a new zone, default IP will be used. In case you don't provide default IP neither zone IP, you won't be able to create new zone. |
7. 'Name' in PowerDNS module 'Connection' tab is the field called 'name' in the SOA record. This record is added when the zone is created. You can define SOA record format in the configuration of the module. Available variables are {$domain} and {$ip} in fields: 'Name' , 'Primary' , 'Hostmaster' . |
8. To connect to the module using Rage4 DNS enter your API key instead of password. |
9. Variable $dns_manager_is_active returns true if DNS Manager Add-On is active.Variable |
10. The screen below shows an example configuration of PowerDNS connection. |
Common Problems
1. When you have problems with connection, check whether your SELinux or firewall does not block ports. |
2. If after successful installation in your client area you receive following or similar error:
Fatal error: main() [function.require]: Failed opening required '/var/www/html/client/templates/dns_templates//lang/english.php' That means that you have forgotten to configure and save processing of your addon. Tutorial on how to configure processing you can find here |
3. Access denied error on Test Connection it's a bug which might appear with dns only servers OR banned IP in cphulk. If you are sure that details are correct, please ignore this error and try to create/terminate the zones to see whether the connection is working. |
4. If you see a blank page right after installation process please make sure that you configured and saved processing options. |
5. 4PSA platform is very specific therefore it can cause some problems with DNS Manager. You may encounter problem with file privileges. When connecting 4PSA module requires to download .wsdl file to 'include/dns_modules/4psa/tmp/wsdl' . It might appear that after connecting, the DNS Manager won't work properly. Afterwards please change the content of the files below: |
6. If you get an error: 'Unable to create zone:Sorry, you must enter an IP.' , please make sure that your default IP or zone IP is not missing. |
7. If while adding ReverseDNS you get an error: 'Sorry, you must enter an ip. Please try again.' , please make sure that your 'Default IP' field in module 'Connection' settings is not empty. |
8. If you get an error: 'Connection Error: Unable to connect to database.' , please make sure that your database server is not blocking connection with WHMCS. |
9. If you have problems with connection make sure that port 2086 is open (for no SSL connections) or port 2087 is open (for SSL connections). |
10. If after install, you will get an ionCube encoder problem (wrong version), please open a support ticket. We will provide you with different version of the module encrypted with the older version of ionCube. |
11. If you are receiving a message: 'Operation Timed Out After 30000 Milliseconds With 0 Bytes Received.' , make sure all the servers in the cluster are active. |