Personal tools
Namespaces

Variants
Actions

DNS Manager For WHMCS

From ModulesGarden Wiki
(Difference between revisions)
Jump to: navigation, search
(Common Problems)
(About DNS Manager For WHMCS)
 
(57 intermediate revisions by 3 users not shown)
Line 2: Line 2:
 
<meta name="description" content="ModulesGarden Wiki Contains All The Information You Need About The DNS Manager For WHMCS Module."></meta>
 
<meta name="description" content="ModulesGarden Wiki Contains All The Information You Need About The DNS Manager For WHMCS Module."></meta>
  
<h5 style="color: #ff0000; font-weight:bold; text-align:center;">DNS Manager V3 For WHMCS requires an active DNS Manager For WHMCS.<br/>
+
<h4 style="color: #ff0000; font-weight:bold; text-align:center;">Updating your DNS Manager For WHMCS module to version 3.4.0? Please remember to reissue your license to ensure proper functionality and avoid any interruptions.<br/>
You must keep both addons active to be able to use the newest version of DNS Manager module in full.</h5>
+
We are sorry for the inconvenience caused.</h4>
  
=About [https://www.modulesgarden.com/products/whmcs/dns-manager DNS Manager V3 For WHMCS]=
+
 
 +
=About [https://www.modulesgarden.com/products/whmcs/dns-manager DNS Manager For WHMCS]=
 
{|
 
{|
|style="padding: 10px 0px 10px 0px;"|'''DNS Manager V3 For WHMCS''' is an end-to-end module that enables your customers to be in charge of their DNS zones.<br />
+
|style="padding: 10px 0px 10px 0px;"|'''DNS Manager For WHMCS''' is an end-to-end module that enables your customers to be in charge of their DNS zones.<br />
 
Thanks to a wide variety of submodules, combined with options allowing you to prepare ready packages, your DNS Manager For WHMCS is there for you to surely meet your expectations.<br />
 
Thanks to a wide variety of submodules, combined with options allowing you to prepare ready packages, your DNS Manager For WHMCS is there for you to surely meet your expectations.<br />
As an administrator you have full control over DNS zones and possess access to a broad range of management options.<br />
+
As an administrator, you have full control over DNS zones and possess access to a broad range of management options.<br />
 
<br />
 
<br />
Wiki of '''DNS Manager For WHMCS 2.x''' can be found [https://www.docs.modulesgarden.com/DNS_Manager_2.X_For_WHMCS here].<br/>
+
The Wiki page for '''DNS Manager For WHMCS 2.x''' can be found [https://www.docs.modulesgarden.com/DNS_Manager_2.X_For_WHMCS here].<br/>
 
<!--Wiki of '''DNS Manager For WHMCS 1.9.10''' can be found [http://www.docs.modulesgarden.com/index.php?title=DNS_Manager_For_WHMCS&oldid=19472 here].-->
 
<!--Wiki of '''DNS Manager For WHMCS 1.9.10''' can be found [http://www.docs.modulesgarden.com/index.php?title=DNS_Manager_For_WHMCS&oldid=19472 here].-->
 
|}
 
|}
Line 603: Line 604:
 
|}
 
|}
 
{|
 
{|
|style="padding: 0px 0px 0px 30px;"|✔ Supports PHP 8.1 Back To PHP 7.4
+
|style="padding: 0px 0px 0px 30px;"|✔ Supports PHP 8.2 Back To PHP 7.4
 
|}
 
|}
 
{|
 
{|
Line 609: Line 610:
 
|}
 
|}
 
{|
 
{|
|style="padding: 0px 0px 0px 30px;"|✔ Supports WHMCS V8.9 Back To WHMCS V8.6
+
|style="padding: 0px 0px 0px 30px;"|✔ Supports WHMCS V8.11 Back To WHMCS V8.8
 
|}
 
|}
 
{|
 
{|
|style="padding: 0px 0px 0px 30px;"|✔ Requires ionCube Loader V12 Or Later
+
|style="padding: 0px 0px 0px 30px;"|✔ Requires ionCube Loader V13 Or Later
 
|}
 
|}
 
{|
 
{|
Line 638: Line 639:
 
{|
 
{|
 
|style="padding: 0px 0px 15px 15px;"|'''3. When you install DNS Manager For WHMCS for the first time you have to rename the '' 'license_RENAME.php' '' file.'''<br />
 
|style="padding: 0px 0px 15px 15px;"|'''3. When you install DNS Manager For WHMCS for the first time you have to rename the '' 'license_RENAME.php' '' file.'''<br />
This file is located in '' 'modules/addons/dns_manager/license_RENAME.php.' '' Rename it from '' 'license_RENAME.php' '' to '' 'license.php'. ''
+
This file is located in '' 'modules/addons/DNSManager3/license_RENAME.php.' '' Rename it from '' 'license_RENAME.php' '' to '' 'license.php'. ''
 
|}
 
|}
 
{|
 
{|
Line 659: Line 660:
 
{|
 
{|
 
|style="padding: 0px 0px 15px 15px;"|'''6. Now you have to activate the module in your WHMCS system.'''<br />
 
|style="padding: 0px 0px 15px 15px;"|'''6. Now you have to activate the module in your WHMCS system.'''<br />
Go to '' 'WHMCS Admin Area' '' → '' 'System Settings' '' → '' 'Addon Modules' ''. Afterwards, find '' 'DNS Manager' '' and '' 'DNS Manager v3' '' and activate both addons.
+
Go to '' 'WHMCS Admin Area' '' → '' 'System Settings' '' → '' 'Addon Modules' ''. Afterward, find '' 'DNS Manager' '' and activate the addon.
 
|}
 
|}
 
{|
 
{|
Line 665: Line 666:
 
|}
 
|}
 
{|
 
{|
|style="padding: 0px 0px 20px 15px;"|'''7. In the next step you need to permit access to this module. To do so click on the '' 'Configure' '' button, choose '' 'Full Administrator' '' and press '' 'Save Changes'.'' '''<br/>
+
|style="padding: 0px 0px 20px 15px;"|'''7. In the next step, you need to permit access to this module. To do so click on the '' 'Configure' '' button, choose '' 'Full Administrator' '' and press '' 'Save Changes'.'' '''
Remember to repeat this action for both addons.
+
 
|}
 
|}
 
{|
 
{|
Line 679: Line 679:
  
 
=Configuration and Management=
 
=Configuration and Management=
{|
+
<!---{|
 
|style="padding: 10px 0px 15px 15px;"|If the current version of your module is 3.0 and later, you have access to both DNS Manager and DNS Manager v3 addons.<br/> Please note that most of the module management is already located under the '''DNS Manager V3''' addon, yet some sections are still available under DNS Manager only.<br/> Please navigate to ''Addons → DNS Manager V3'' and follow the below described steps to configure and manage your module successfully, if required, navigate to DNS Manager addon.
 
|style="padding: 10px 0px 15px 15px;"|If the current version of your module is 3.0 and later, you have access to both DNS Manager and DNS Manager v3 addons.<br/> Please note that most of the module management is already located under the '''DNS Manager V3''' addon, yet some sections are still available under DNS Manager only.<br/> Please navigate to ''Addons → DNS Manager V3'' and follow the below described steps to configure and manage your module successfully, if required, navigate to DNS Manager addon.
|}
+
|}--->
 
{|
 
{|
|style="padding: 0px 0px 30px 15px;"|This section has been divided into two main parts to allow full and, at the same time, easy understanding of the whole module functionality.<br/>In the first part '' 'Basic Configuration' '' an exemplary flow of basic configuration of servers, through creating packages and then zones management<br/> from both the client and the administrator side has been presented.<br/> In the second part, there are described additional settings and tools that can be used while working with DNS Manager For WHMCS.  
+
|style="padding: 10px 0px 30px 15px;"|This section has been divided into two main parts to allow full and, at the same time, easy understanding of the whole module functionality.<br/>In the first part '' 'Basic Configuration' '' an exemplary flow of basic configuration of servers, through creating packages and then zones management<br/> from both the client and the administrator side has been presented.<br/> In the second part, there are additional settings and tools that can be used while working with DNS Manager For WHMCS.  
 
|}
 
|}
 
==Basic Configuration==
 
==Basic Configuration==
 
{|
 
{|
|style="padding: 10px 0px 15px 15px;"|In the first place we would like to show you the process of configuring your DNS manager on a simple example.<br/>Follow the steps below to see how the process looks like in practice.<br />
+
|style="padding: 10px 0px 10px 15px;"|In the first place we would like to show you the process of configuring your DNS manager in a simple example.<br/>Follow the steps below to see how the process looks like in practice.<br />
Proceed to  '' 'Addons' → 'DNS Manager V3'. '' There are several sections, but the one that you should be interested in the most in the beginning is named '' 'Servers'. ''<br/> You will find it under the '' 'Settings' '' tab.
+
Proceed to  '' 'Addons' → 'DNS Manager'. '' There are several sections, but the one you should be interested in the most, in the beginning, is named '' 'Servers'. ''<br/> You will find it under the '' 'Settings' '' tab.
 
|}
 
|}
===Servers Configuration===
+
===Server Configuration===
 
{|
 
{|
 
|style="padding: 10px 0px 20px 15px;"|To start your work, add a new server.  
 
|style="padding: 10px 0px 20px 15px;"|To start your work, add a new server.  
Line 698: Line 698:
 
|}
 
|}
 
{|
 
{|
|style="padding: 0px 0px 15px 15px;"|To add a new server you must fill out some data to allow connection with it. As an example, we will try to connect with cPanel server.<br/>Additionally, you may declare here whether you need rDNS, Multiple PTR or Cache. Select the desired options.<br/><br/>
+
|style="padding: 0px 0px 15px 15px;"|To add a new server you must fill out some data to allow connection with it. As an example, we will try to connect with a cPanel server.<br/>Additionally, you may declare here whether you need rDNS, Multiple PTR, or Cache. Select the desired options.<br/><br/>
 
Please note, that there is also an option '''Enable DNSSEC''' available. However, it is currently compatible only with '''CloudFlare, cPanel, DirectAdmin, PowerDNS V4''' and '''Simple DNS Plus V8 And V9''' submodules.<br/>
 
Please note, that there is also an option '''Enable DNSSEC''' available. However, it is currently compatible only with '''CloudFlare, cPanel, DirectAdmin, PowerDNS V4''' and '''Simple DNS Plus V8 And V9''' submodules.<br/>
 
DNSSEC ''(DNS Security Extensions)'' - allows enabling validation and authentication of the origin and integrity of DNS data.<br/> If you enable this option, the client will be allowed to turn on DNSSEC for a zone and display its DNSSEC-related details accordingly.
 
DNSSEC ''(DNS Security Extensions)'' - allows enabling validation and authentication of the origin and integrity of DNS data.<br/> If you enable this option, the client will be allowed to turn on DNSSEC for a zone and display its DNSSEC-related details accordingly.
Line 713: Line 713:
 
|}
 
|}
 
{|
 
{|
|style="padding: 0px 0px 15px 15px;"|Once you have chosen a server from the dropdown menu, '' 'Configuration' '' and '' 'Nameservers' '' tabs appear.<br/>Enter your username, password, Hostname/IP and any other details needed to connect successfully.<br/> Now, press '' 'Nameservers' '' and enter the nameservers that will be visible for your customers in their client area. <br/>
+
|style="padding: 0px 0px 15px 15px;"|Once you have chosen a server from the dropdown menu, '' 'Configuration' '' and '' 'Nameservers' '' tabs appear.<br/>Enter your username, password, Hostname/IP, and any other details needed to connect successfully.<br/> Now, press '' 'Nameservers' '' and enter the nameservers that will be visible for your customers in their client area. <br/>
 
Remember to save the changes when ready.<br/>
 
Remember to save the changes when ready.<br/>
 
|}
 
|}
Line 720: Line 720:
 
|}
 
|}
 
{|
 
{|
|style="padding: 0px 0px 20px 25px;"| ''Please also note that the configuration differs per selected submodule!''
+
|style="padding: 0px 0px 20px 25px;"| ''Please also note that the configuration differs per selected submodule.''
 
|}
 
|}
 
{|
 
{|
Line 729: Line 729:
 
|}
 
|}
 
{|
 
{|
|style="padding: 0px 0px 20px 15px;"|Now, that you have a ready servers on the list, you may manage them. Turn it on/off by changing their status ''(1.)'', edit ''(2.)'', test connection ''(3.)'' and delete ''(4.)''.  
+
|style="padding: 0px 0px 20px 15px;"|Now, that you have servers on the list, you may manage them. Turn it on/off by changing their status ''(1.)'', edit ''(2.)'', test connection ''(3.)'' and delete ''(4.)''.  
 
|}
 
|}
 
{|
 
{|
Line 749: Line 749:
 
|style="padding: 0px 0px 15px 15px;"|Now, move to the '' 'Configuration' '' tab and provide essential data to your BIND 9 server configuration.<br/>  
 
|style="padding: 0px 0px 15px 15px;"|Now, move to the '' 'Configuration' '' tab and provide essential data to your BIND 9 server configuration.<br/>  
 
The '' 'Path To Bind9 Config Directory' '' filed is used to locate the BIND 9 '' 'named.conf.local' '' configuration file.<br/>
 
The '' 'Path To Bind9 Config Directory' '' filed is used to locate the BIND 9 '' 'named.conf.local' '' configuration file.<br/>
Please remember that all paths presented on the screens below are only an illustration and you need to adjust to directories paths on your own BIND 9 server.<br/>
+
Please remember that all paths presented on the screens below are only an illustration and you need to adjust to directory paths on your own BIND 9 server.<br/>
 
The module should also have permissions set to access these directories.<br/>
 
The module should also have permissions set to access these directories.<br/>
Thanks to provided backup paths, you can also easily revert a backup copy in case of any breakdown so it is extremely important to carry out the configuration properly.<br/>
+
Thanks to the provided backup paths, you can also easily revert a backup copy in case of any breakdown so it is extremely important to carry out the configuration properly.<br/>
 
Also, note that the module can create a large number of backup files within a newly created 'zones' directory based on the provided path.
 
Also, note that the module can create a large number of backup files within a newly created 'zones' directory based on the provided path.
  
Line 767: Line 767:
 
|}
 
|}
 
{|
 
{|
|style="padding: 0px 0px 20px 15px;"|Once the configuration has been established successfully, you can test your connection, view your ready server which can be easily managed here.  
+
|style="padding: 0px 0px 20px 15px;"|Once the configuration has been established successfully, you can test your connection, and view your ready server which can be easily managed here.  
 
|}
 
|}
 
{|
 
{|
|style="padding: 0px 0px 20px 25px;"|[[File:DNSBind9_4.png]]
+
|style="padding: 0px 0px 30px 25px;"|[[File:DNSBind9_4.png]]
 
|}
 
|}
 
{|
 
{|
Line 776: Line 776:
 
===Management of Packages===
 
===Management of Packages===
 
{|
 
{|
|style="padding: 10px 0px 15px 15px;"|Packages - these are collections of settings related to the products for sale.<br/> Thanks to these, the client will be allowed to create specific zones and will possess the access to DNS Management in the Client Area.<br/> Click '' 'Add Package' '' to see how to configure it and what exactly can be specified there.
+
|style="padding: 10px 0px 15px 15px;"|Packages - these are collections of settings related to the products for sale.<br/> Thanks to these, the client will be allowed to create specific zones and will possess access to DNS Management in the Client Area.<br/> Click '' 'Add Package' '' to see how to configure it and what exactly can be specified there.
 
|}
 
|}
 
{|
 
{|
Line 785: Line 785:
 
|}
 
|}
 
{|
 
{|
|style="padding: 0px 0px 15px 15px;"|'''1.''' In the '' 'General' '' section you have to:
+
|style="padding: 0px 0px 15px 15px;"|1. In the '' 'General' '' section you have to:
 
* name the newly created package
 
* name the newly created package
 
* define the number of zones per item ''(limit of zones that a client may then create within this package)''   
 
* define the number of zones per item ''(limit of zones that a client may then create within this package)''   
Line 791: Line 791:
 
* decide if you allow creating slave zones<br/> '''Important:''' The module allows the creation of two types of DNS zones, master and slave ones:<br/>  '''''Primary (Master) DNS zones''''' – it is a holder of the original zone file (all the DNS records for the zone). You can manage a host through this zone.<br/> '''''Secondary (Slave) DNS zone''''' – it holds a copy of the zone file. You can use them for better performance, for hiding your primary zones, for backups and redundancy.<br/>   
 
* decide if you allow creating slave zones<br/> '''Important:''' The module allows the creation of two types of DNS zones, master and slave ones:<br/>  '''''Primary (Master) DNS zones''''' – it is a holder of the original zone file (all the DNS records for the zone). You can manage a host through this zone.<br/> '''''Secondary (Slave) DNS zone''''' – it holds a copy of the zone file. You can use them for better performance, for hiding your primary zones, for backups and redundancy.<br/>   
  
'''2.''' Here, you can also decide if zones should be created automatically after defined actions.<br/> These are:  
+
2. Here, you can also decide if zones should be created automatically after defined actions.<br/> These are:  
 
*'''New Item''' - zones will be created automatically for every new product being activated
 
*'''New Item''' - zones will be created automatically for every new product being activated
 
*'''Pending Domain Transfer''' - zones will be automatically created for the domains during their transfer:
 
*'''Pending Domain Transfer''' - zones will be automatically created for the domains during their transfer:
Line 798: Line 798:
 
*'''Pending Domain Registration ''' - zones will be created automatically for newly registered domains
 
*'''Pending Domain Registration ''' - zones will be created automatically for newly registered domains
 
**''Before'' - a new zone will be created shortly before sending a registration request to the registrar
 
**''Before'' - a new zone will be created shortly before sending a registration request to the registrar
**''After'' - a new zone will be created once the status of registration request is received from the registrar
+
**''After'' - a new zone will be created once the status of the registration request is received from the registrar
 
*'''Domain with DNS Management''' - zones will be created automatically for domains that have been ordered with the 'DNS Management' domain addon
 
*'''Domain with DNS Management''' - zones will be created automatically for domains that have been ordered with the 'DNS Management' domain addon
 
*'''Existing Zone Update''' - if a zone already exists, it will be updated with newly added record sets<br/>
 
*'''Existing Zone Update''' - if a zone already exists, it will be updated with newly added record sets<br/>
  
'''3.''' Define the maximum, allowed '''limit of records.'''<br/>
+
3. Define the maximum, allowed '''limit of records.'''<br/>
  
'''4.''' Choose [[#DNS_Record_Sets|DNS Record Sets]] that will be applied to this package.
+
4. Choose [[#DNS_Record_Sets|DNS Record Sets]] that will be applied to this package.
 
*'''Default DNS Record Set''' - this default set will be automatically applied upon the zone creation
 
*'''Default DNS Record Set''' - this default set will be automatically applied upon the zone creation
 
*'''DNS Record Sets''' - choose the sets created by the administrator that will also be available for clients to choose from when adding a new zone
 
*'''DNS Record Sets''' - choose the sets created by the administrator that will also be available for clients to choose from when adding a new zone
 
|}
 
|}
 
{|
 
{|
|style="padding: 0px 0px 20px 25px;"|[[File:DNS4_12.png]]
+
|style="padding: 0px 0px 30px 25px;"|[[File:DNS4_12.png]]
 
|}
 
|}
 
====Items====
 
====Items====
 
{|
 
{|
 
|style="padding: 10px 0px 15px 15px;"|Assign ''Domains, Products'' or/and ''Product Addons'' from available ones to the package. Here you can also allow clients to create their own free zones.<br/>
 
|style="padding: 10px 0px 15px 15px;"|Assign ''Domains, Products'' or/and ''Product Addons'' from available ones to the package. Here you can also allow clients to create their own free zones.<br/>
Simply select option under the '' 'Other' '' section. Remember that you may use this option for one package only.
+
Simply select the option under the '' 'Other' '' section. Remember that you may use this option for one package only.
 
|}
 
|}
 
{|
 
{|
Line 835: Line 835:
 
|}
 
|}
 
{|
 
{|
|style="padding: 0px 0px 20px 25px;"|[[File:DNS4_15.png]]
+
|style="padding: 0px 0px 30px 25px;"|[[File:DNS4_15.png]]
 
|}
 
|}
  
Line 843: Line 843:
 
|}
 
|}
 
{|
 
{|
|style="padding: 0px 0px 20px 25px;"|[[File:DNS4_16.png]]
+
|style="padding: 0px 0px 30px 25px;"|[[File:DNS4_16.png]]
 
|}
 
|}
  
Line 862: Line 862:
 
====IP Management====
 
====IP Management====
 
{|
 
{|
|style="padding: 10px 0px 15px 15px;"|In the last part, you can specify which IP addresses can be used by your clients while creating a package. If you do not provide anything, clients can use any IP addresses without any limitations.<br/> The '' 'IP Addresses Blacklist' '' section allows you to ban IP addresses. This will prevent users from using specified IP addresses.<br/>
+
|style="padding: 10px 0px 15px 15px;"|In the last part, you can specify which IP addresses can be used by your clients while creating a package. If you do not provide anything, clients can use any IP address without any limitations.<br/> The '' 'IP Addresses Blacklist' '' section allows you to ban IP addresses. This will prevent users from using specified IP addresses.<br/>
 
Remember to save the changes when the package configuration is ready.
 
Remember to save the changes when the package configuration is ready.
 
|}
 
|}
Line 869: Line 869:
 
|}
 
|}
 
{|
 
{|
|style="padding: 0px 0px 20px 15px;"|Enable the newly created package to allow it to be used!
+
|style="padding: 0px 0px 20px 15px;"|Enable the newly created package to allow it to be used.
 
|}
 
|}
 
{|
 
{|
Line 877: Line 877:
 
==Client Area==
 
==Client Area==
 
{|
 
{|
|style="padding: 10px 0px 15px 15px;"|In order to take advantage of the brand new management page in the client area, you need to allow access in the DNS Manager v3 addon. <br/>Navigate to ''Addons → DNS Manager v3 → Settings → Global Settings,'' and enable '' 'DNS Management Link.' '' This will enable a '' 'Manage DNS' '' button in the Client Area.
+
|style="padding: 10px 0px 15px 15px;"|In order to take advantage of the brand new management page in the client area, you need to allow access to the DNS Manager addon. <br/>Navigate to '' 'Addons' 'DNS Manager' 'Settings' 'Global Settings','' and enable '' 'DNS Management Link.' '' This will enable a '' 'Manage DNS' '' button in the Client Area.
 
|}
 
|}
 
{|
 
{|
 
|style="padding: 0px 0px 30px 25px;"|[[File:DNS3_0.png]]
 
|style="padding: 0px 0px 30px 25px;"|[[File:DNS3_0.png]]
 
|}
 
|}
 +
<!---
 
{|
 
{|
|style="padding: 00px 0px 15px 15px;"|Next navigate to ''Addons → DNS Manager v3 → Settings → General.'' There you will find two sections: '' 'Cron task' '' and '' 'Module Settings'.''<br/>
+
|style="padding: 00px 0px 15px 15px;"|Next navigate to ''' Addons' 'DNS Manager' 'Settings' 'General'.'' There you will find two sections: '' 'Cron task' '' and '' 'Module Settings'.''<br/>
 
*'''Cron Task''' - set up this cron task in order to successfully run tasks added in the '' 'Bulk Management' '' section in the client area. We recommend setting up a 5 minutes interval:
 
*'''Cron Task''' - set up this cron task in order to successfully run tasks added in the '' 'Bulk Management' '' section in the client area. We recommend setting up a 5 minutes interval:
 
  php -q /home/your_whmcs/modules/addons/DNSManager3/cron/cron.php queue
 
  php -q /home/your_whmcs/modules/addons/DNSManager3/cron/cron.php queue
 
*'''Module Settings''' - enable to overwrite the DNS Manager v2 link of the client area<br/>
 
*'''Module Settings''' - enable to overwrite the DNS Manager v2 link of the client area<br/>
 
 
'''''Note:''' If you do not enable this option, your clients will still have access to the previous view of the '' 'Manage DNS' '' page, still available for [https://www.docs.modulesgarden.com/DNS_Manager_For_WHMCS#DNS_Management_in_Client_Area  DNS Manager v2.x.x] users.''
 
'''''Note:''' If you do not enable this option, your clients will still have access to the previous view of the '' 'Manage DNS' '' page, still available for [https://www.docs.modulesgarden.com/DNS_Manager_For_WHMCS#DNS_Management_in_Client_Area  DNS Manager v2.x.x] users.''
 
|}
 
|}
Line 893: Line 893:
 
|style="padding: 0px 0px 30px 25px;"|[[File:DNS4_0.png]]
 
|style="padding: 0px 0px 30px 25px;"|[[File:DNS4_0.png]]
 
|}
 
|}
 +
--->
 
===DNS Management in Client Area===
 
===DNS Management in Client Area===
 
{|
 
{|
Line 902: Line 903:
 
====Zones====
 
====Zones====
 
{|
 
{|
|style="padding: 10px 0px 15px 15px;"|In here, clients may add new zones. To do so, simply type in the name of the zone and choose IP address from the available or enter your custom IP.<br/>It depends on your configuration - read more about possible options [[#Other|here]].<br/>From the dropdown menu clients can also define record sets. If they do not have any added, the default one created by the administrator in the admin area will be selected.<br/>When clients create sets by themselves, they can use the one defined by them as default, or choose other one from the list.
+
|style="padding: 10px 0px 15px 15px;"|In here, clients may add new zones. To do so, simply type in the name of the zone and choose the IP address from the available or enter your custom IP.<br/>It depends on your configuration - read more about possible options [[#Other|here]].<br/>From the dropdown menu clients can also define record sets. If they do not have any added, the default one created by the administrator in the admin area will be selected.<br/>When clients create sets by themselves, they can use the one defined by them as default, or choose another from the list.
 
|}
 
|}
 
{|
 
{|
Line 908: Line 909:
 
|}
 
|}
 
{|
 
{|
|style="padding: 0px 0px 20px 15px;"|Standard list view of DNS Zones:<br/>
+
|style="padding: 0px 0px 15px 15px;"|Standard list view of DNS Zones:<br/>
'''''Note:''' You can turn on this mode in the 'DNS Manager v3 addon' → 'Settings' → 'Global Settings' → 'Other' → [[#Other|'Zones Single Table View']].''
+
'''''Note:''' You can turn on this mode in the 'DNS Manager addon' → 'Settings' → 'Global Settings' → 'Other' → [[#Other|'Zones Single Table View']].''
 
|}
 
|}
 
{|
 
{|
Line 942: Line 943:
 
|}
 
|}
 
{|
 
{|
|style="padding: 0px 0px 20px 15px;"|Enter a new record's name, choose the type from available etc.
+
|style="padding: 0px 0px 20px 15px;"|Enter a new record's name, choose the type from available, etc.
 
|}
 
|}
 
{|
 
{|
Line 973: Line 974:
 
====Bulk Management====
 
====Bulk Management====
 
{|
 
{|
|style="padding: 10px 0px 15px 15px;"|Under this section you may manage numerous DNS zones. Select at least one zone on the list and press the '' 'Choose Action' '' button. <br/> There are six allowed actions that can be preformed on zones. <br/>
+
|style="padding: 10px 0px 15px 15px;"|Under this section you may manage numerous DNS zones. Select at least one zone on the list and press the '' 'Choose Action' '' button. <br/> There are six allowed actions that can be performed on zones. <br/>
 
Allowed actions:
 
Allowed actions:
 
*Add Record
 
*Add Record
Line 989: Line 990:
 
|}
 
|}
 
{|
 
{|
|style="padding: 0px 0px 15px 15px;"|'''Add Record''' - define the newly created record type, name, TTL and address.
+
|style="padding: 0px 0px 15px 15px;"|'''Add Record''' - define the newly created record type, name, TTL, and address.
 
|}
 
|}
 
{|
 
{|
Line 1,017: Line 1,018:
 
|}
 
|}
 
{|
 
{|
|style="padding: 0px 0px 15px 15px;"|'''Delete Record''' - select the record type and specify which records shall be deleted. Enter specific data or use regular expression.  
+
|style="padding: 0px 0px 20px 15px;"|'''Delete Record''' - select the record type and specify which records shall be deleted. Enter specific data or use regular expressions.  
 
|}
 
|}
 
{|
 
{|
Line 1,023: Line 1,024:
 
|}
 
|}
 
{|
 
{|
|style="padding: 0px 0px 15px 15px;"|'''Change Record Set''' - choose a new record set. You may enable the '' 'Wipe Records' '' option to clear the selected zone at the same time.
+
|style="padding: 0px 0px 20px 15px;"|'''Change Record Set''' - choose a new record set. You may enable the '' 'Wipe Records' '' option to clear the selected zone at the same time.
 
|}
 
|}
 
{|
 
{|
Line 1,029: Line 1,030:
 
|}
 
|}
 
{|
 
{|
|style="padding: 0px 0px 15px 15px;"|'''Delete Zones''' - remove all the selected DNS zones.
+
|style="padding: 0px 0px 20px 15px;"|'''Delete Zones''' - remove all the selected DNS zones.
 
|}
 
|}
 
{|
 
{|
Line 1,054: Line 1,055:
 
====rDNS====
 
====rDNS====
 
{|
 
{|
|style="padding: 10px 0px 15px 15px;"|If you have allowed the rDNS management in the client area by selecting either '' 'Allow DNS And rDNS Management' '' or '' 'Allow Only rDNS Management' '' option (read more [[#Other|here]]) in global settings,<br/> your clients can create PTR records for IPv4 and IPv6 addresses without any related zone. To do so, press '' 'Add PTR Record'. ''
+
|style="padding: 10px 0px 15px 15px;"|If you have allowed the rDNS management in the client area by selecting either '' 'Allow DNS And rDNS Management' '' or '' 'Allow Only rDNS Management' '' option (read more [[#Other|here]]) in global settings,<br/> your clients can create PTR records for IPv4 and IPv6 addresses without any related zone. To do so, press '' 'Add PTR Record'. ''
 
|}
 
|}
 
{|
 
{|
Line 1,060: Line 1,061:
 
|}
 
|}
 
{|
 
{|
|style="padding: 0px 0px 15px 15px;"|Select related item, then depending on the configuration enter IP address or choose IP or Subnet from the available list.<br/>
+
|style="padding: 0px 0px 15px 15px;"|Select the related item, then depending on the configuration enter the IP address or choose IP or Subnet from the available list.<br/>
 
'''''Note:''' Subnets are available only if you have integrated your DNS Manager with IP Manager For WHMCS - see below options for more details.''
 
'''''Note:''' Subnets are available only if you have integrated your DNS Manager with IP Manager For WHMCS - see below options for more details.''
 
|}
 
|}
Line 1,075: Line 1,076:
 
====Record Sets====
 
====Record Sets====
 
{|
 
{|
|style="padding: 10px 0px 20px 15px;"|You can add and manage records sets in the '' 'DNS Record Sets' '' section as shown below.
+
|style="padding: 10px 0px 20px 15px;"|You can add and manage records sets in the '' 'Record Sets' '' section as shown below.
 
|}
 
|}
 
{|
 
{|
Line 1,087: Line 1,088:
 
|}
 
|}
 
{|
 
{|
|style="padding: 0px 0px 20px 15px;"|Your newly created DNS record should appear on the list. You may edit the record set, edit general record set data, duplicate or delete it completely.
+
|style="padding: 0px 0px 20px 15px;"|Your newly created DNS record should appear on the list. You may edit the record set, edit general record set data, or duplicate or delete it completely.
 
|}
 
|}
 
{|
 
{|
Line 1,096: Line 1,097:
 
{|
 
{|
 
|style="padding: 10px 0px 15px 15px;"|'''Backup Tasks''' <br/>
 
|style="padding: 10px 0px 15px 15px;"|'''Backup Tasks''' <br/>
You can manage fully your zones backups. Move to the mentioned section to see any options.<br/>  
+
You can manage fully your zone backups. Move to the mentioned section to see any options.<br/>  
 
Note that this option must have been previously allowed by your administrator in general settings. Press the '' 'Create Backup' '' button to start.
 
Note that this option must have been previously allowed by your administrator in general settings. Press the '' 'Create Backup' '' button to start.
 
|}
 
|}
Line 1,103: Line 1,104:
 
|}
 
|}
 
{|
 
{|
|style="padding: 0px 0px 15px 15px;"|A new task is added immediately. Now, all you need to do is edit the added backup task and there select the zones from available that will be processed and stored in a backup file.<br/>
+
|style="padding: 0px 0px 15px 15px;"|A new task is added immediately. Now, all you need to do is edit the added backup task and select the zones from available that will be processed and stored in a backup file.<br/>
 
Press the '' 'Create Zones Backup' '' button when ready.
 
Press the '' 'Create Zones Backup' '' button when ready.
 
|}
 
|}
Line 1,113: Line 1,114:
 
|}
 
|}
 
{|
 
{|
|style="padding: 0px 0px 15px 15px;"|The just added task to back up the zones is now visible on the list of all tasks. There are also information on the task progress and number of zones already processed.<br/>
+
|style="padding: 0px 0px 15px 15px;"|The just-added task to back up the zones is now visible on the list of all tasks. There is also information on the task progress and number of zones already processed.<br/>
To see details, press '' 'Show List' '' button. <br/>
+
To see details, press the'' 'Show List' '' button. <br/>
 
'''''Important:''' Keep in mind that you must wait until the next execution of the "Cron Importer" to start processing. If it is set to more than 5 minutes, you will not see the results on the run.''
 
'''''Important:''' Keep in mind that you must wait until the next execution of the "Cron Importer" to start processing. If it is set to more than 5 minutes, you will not see the results on the run.''
 
|}
 
|}
Line 1,122: Line 1,123:
 
{|
 
{|
 
|style="padding: 0px 0px 15px 15px;"|'''Manual Backups List'''<br/>
 
|style="padding: 0px 0px 15px 15px;"|'''Manual Backups List'''<br/>
Here you will find a list of all files with a number of backed up zones. In order to upload a ready backup file, simply press the '' 'Upload File' '' button.  
+
Here you will find a list of all files with a number of backed-up zones. In order to upload a ready backup file, simply press the '' 'Upload File' '' button.  
 
|}
 
|}
 
{|
 
{|
Line 1,128: Line 1,129:
 
|}
 
|}
 
{|
 
{|
|style="padding: 0px 0px 15px 15px;"|Select the file from your store, keep in mind that only the previously downloaded backup files can be used. <br/> Surely, such file can be edited in any editor to adjust the records inside it to your needs, but you must be careful and stick to its form.  
+
|style="padding: 0px 0px 15px 15px;"|Select the file from your store, keep in mind that only the previously downloaded backup files can be used. <br/> Surely, such a file can be edited in any editor to adjust the records inside it to your needs, but you must be careful and stick to its form.  
 
|}
 
|}
 
{|
 
{|
Line 1,146: Line 1,147:
 
====Tasks====
 
====Tasks====
 
{|
 
{|
|style="padding: 10px 0px 20px 15px;"|You will find a list of current tasks in '' 'Tasks' '' section.<br/> Among all tasks there are import tasks, migration and synchronization tasks.
+
|style="padding: 10px 0px 20px 15px;"|You will find a list of current tasks in '' 'Tasks' '' section.<br/> Among all tasks there are import tasks, migration, and synchronization tasks.
 
|}
 
|}
 
{|
 
{|
Line 1,152: Line 1,153:
 
|}
 
|}
 
{|
 
{|
|style="padding: 0px 0px 30px 15px;"|According to specifically set-up cron jobs all created tasks are regularly executed. Here, you can see the current status of each task.<br/> If it is queuing for the next cron run, is currently executed, aborted or complete. Check when they were executed for the last time ''(Last Execution)'' and when the task was added. <br/>Available actions: call execution manually and remove the task.
+
|style="padding: 0px 0px 30px 15px;"|According to specifically set-up cron jobs all created tasks are regularly executed. Here, you can see the current status of each task.<br/> If it is queuing for the next cron run, is currently executed, aborted, or complete. Check when they were executed for the last time ''(Last Execution)'' and when the task was added. <br/>Available actions: call execution manually and remove the task.
 
|}
 
|}
  
===Zones Management===
+
===Zone Management===
 
{|
 
{|
|style="padding: 10px 0px 15px 15px;"|In the administrator panel, you can spot all your client zones. You are free to preview those already existing.<br/> You will see whose zone it is, its type, on which server it is created and its status (created/deleted).
+
|style="padding: 10px 0px 15px 15px;"|In the administrator panel, you can spot all your client zones. You are free to preview those already existing.<br/> You will see whose zone it is, its type, on which server it is created, and its status (created/deleted).
 
|}
 
|}
 
{|
 
{|
Line 1,176: Line 1,177:
 
|}
 
|}
 
{|
 
{|
|style="padding: 0px 0px 20px 15px;"| If you select a service that is in a package with the allowed option to create slave zones, a dedicated switcher will appear.<br/>
+
|style="padding: 0px 0px 15px 15px;"| If you select a service that is in a package with the allowed option to create slave zones, a dedicated switcher will appear.<br/>
 
'''''Important:''' The module may create two types of zones, master and slave ones. ''Master'' type zones are created on DNS servers and the records are synchronized via AXFR protocol by itself.<br/> In the case of slave zones, the module creates a slave zone on DNS servers and that is the DNS server that performs the synchronization. <br/>("PowerDNSV4" only, in the case of other servers like "cPanel", you have to manually force the synchronization).''
 
'''''Important:''' The module may create two types of zones, master and slave ones. ''Master'' type zones are created on DNS servers and the records are synchronized via AXFR protocol by itself.<br/> In the case of slave zones, the module creates a slave zone on DNS servers and that is the DNS server that performs the synchronization. <br/>("PowerDNSV4" only, in the case of other servers like "cPanel", you have to manually force the synchronization).''
 
|}
 
|}
Line 1,210: Line 1,211:
  
 
==Additional Tools==
 
==Additional Tools==
 +
<!---
 
===Settings===
 
===Settings===
 
{|
 
{|
|style="padding: 10px 0px 20px 15px;"|Remember that if you want to redirect your clients to DNS Management page in V3.0, you must previously configure the dedicated addon settings.<br/>Move to ''Addons → DNS Manager v3 → Settings → General.'' There you will find cron task that you will need to execute in order to allow bulk actions on zones in the client area to be performed.<br/>
+
|style="padding: 10px 0px 20px 15px;"|Remember that if you want to redirect your clients to the DNS Management page in V3.0, you must previously configure the dedicated addon settings.<br/>Move to ''Addons → DNS Manager v3 → Settings → General.'' There you will find the cron task that you will need to execute in order to allow bulk actions on zones in the client area to be performed.<br/>
  
 
Furthermore, in order to redirect your client to a brand new client area page of the DNS Manager v3.0, please enable the option to overwrite the client area link.
 
Furthermore, in order to redirect your client to a brand new client area page of the DNS Manager v3.0, please enable the option to overwrite the client area link.
Line 1,219: Line 1,221:
 
|style="padding: 0px 0px 30px 25px;"|[[File:DNS4_0.png]]
 
|style="padding: 0px 0px 30px 25px;"|[[File:DNS4_0.png]]
 
|}
 
|}
 +
--->
  
 
===Global Settings===
 
===Global Settings===
Line 1,225: Line 1,228:
 
|}
 
|}
 
{|
 
{|
|style="padding: 0px 0px 20px 25px;"|[[File:DNS4_27.png]]
+
|style="padding: 0px 0px 30px 25px;"|[[File:DNS4_27.png]]
 
|}
 
|}
  
Line 1,231: Line 1,234:
 
{|
 
{|
 
|style="padding: 10px 0px 15px 15px;"|Choose a default template that will be used in the client area.<br/>
 
|style="padding: 10px 0px 15px 15px;"|Choose a default template that will be used in the client area.<br/>
If you have more than one template then you may allow your clients switch between them.<br/>
+
If you have more than one template then you may allow your clients to switch between them.<br/>
 
Decide whether you wish to use a ready-configured redirection to the DNS Management page in the client area.
 
Decide whether you wish to use a ready-configured redirection to the DNS Management page in the client area.
 
|}
 
|}
Line 1,256: Line 1,259:
 
====Other====
 
====Other====
 
{|
 
{|
|style="padding: 10px 0px 15px 15px;"|The box with '' 'Other' '' options available is a crucial part of configuration where you can manage [[#IP Manager For WHMCS Integration|IP Manager For WHMCS]] module and manage PTR records creation. <br/>Besides, here you can switch off the guide with simple instructions visible on the dashboard.   
+
|style="padding: 10px 0px 15px 15px;"|The box with '' 'Other' '' options available is a crucial part of the configuration where you can manage [[#IP Manager For WHMCS Integration|IP Manager For WHMCS]] module and manage PTR records creation. <br/>Besides, here you can switch off the guide with simple instructions visible on the dashboard.   
 
|}
 
|}
 
{|
 
{|
Line 1,280: Line 1,283:
 
|}
 
|}
 
{|
 
{|
|style="padding: 0px 0px 20px 15px;"|'''3. Exclude Used Zones From Zone Creation''' - select to exclude the already used domains from the possibility of being used again in a newly added zone
+
|style="padding: 0px 0px 20px 15px;"|'''3. Exclude Used Domains From Zone Creation''' - select to exclude the already used domains from the possibility of being used again in a newly added zone
 
|}
 
|}
 
{|
 
{|
Line 1,286: Line 1,289:
 
|}
 
|}
 
{|
 
{|
|style="padding: 0px 0px 15px 15px;"|'''4. Related Service IP Addresses Only''' - create zones and PTR records with a related IP address only.<br/> When adding a new zone/PTR record you can choose from available hosting related IP addresses only as marked on the screen below.
+
|style="padding: 0px 0px 15px 15px;"|'''4. Related Service IP Addresses Only''' - create zones and PTR records with a related IP address only.<br/> When adding a new zone/PTR record you can choose from available hosting-related IP addresses only as marked on the screen below.
 
|}
 
|}
 
{|
 
{|
Line 1,299: Line 1,302:
 
|}
 
|}
 
{|
 
{|
|style="padding: 0px 0px 15px 15px;"|'''5. rDNS Custom IP Address''' - create PTR records with a custom IP, enter a new IP address to create a new PTR.<br/> '''''Note:''' Both IPv4 and IPv6 are supported by DNS Manager For WHMCS.''
+
|style="padding: 0px 0px 15px 15px;"|'''5. rDNS Custom IP Address''' - create PTR records with a custom IP, and enter a new IP address to create a new PTR.<br/> '''''Note:''' Both IPv4 and IPv6 are supported by DNS Manager For WHMCS.''
 
|}
 
|}
 
{|
 
{|
Line 1,311: Line 1,314:
 
|}
 
|}
 
{|
 
{|
|style="padding: 0px 0px 20px 15px;"|'''7. Client Area Record Sets''' - clients may manage DNS records sets.
+
|style="padding: 0px 0px 20px 15px;"|'''7. Client Area Record Sets''' - clients may manage DNS record sets.
 
|}
 
|}
 
{|
 
{|
Line 1,353: Line 1,356:
 
|}
 
|}
 
{|
 
{|
|style="padding: 0px 0px 20px 15px;"|Use the '' 'Exclude' '' button to specify domains, products and addons that the zones assigned to them will NOT be included in notifications.
+
|style="padding: 0px 0px 20px 15px;"|Use the '' 'Exclude' '' button to specify domains, products, and addons that the zones assigned to them will NOT be included in notifications.
 
|}
 
|}
 
{|
 
{|
Line 1,386: Line 1,389:
 
|}
 
|}
  
===DNS Record Sets===
+
===Record Sets===
 
{|
 
{|
|style="padding: 10px 0px 20px 15px;"|Create ready made sets of DNS records. You will find them in '' 'Settings' → 'DNS Records Sets'. '' <br/>Press '' 'Add Set' '' to create a new one.
+
|style="padding: 10px 0px 15px 15px;"|Create ready made sets of DNS records. You will find them in '' 'Settings' → 'Records Sets'. '' <br/>Press '' 'Add Set' '' to create a new one.
 
|}
 
|}
 
{|
 
{|
Line 1,422: Line 1,425:
 
** hosting dedicated IP address
 
** hosting dedicated IP address
 
** WHMCS server address provided it is a hosting
 
** WHMCS server address provided it is a hosting
* '' '''{$serverhostname}''' '' - will return the DNS server address or its IP address, depending which one has been provided in the module's DNS server configuration in the admin area,<br/> e.g.: ''yourdnsserver.com'' or ''12.23.34.45''
+
* '' '''{$serverhostname}''' '' - will return the DNS server address or its IP address, depending on which one has been provided in the module's DNS server configuration in the admin area,<br/> e.g.: ''yourdnsserver.com'' or ''12.23.34.45''
* '' '''{$ns1}''', '''{$ns2}''', '''{$ns3}''', '''{$ns4}''' '' and '' '''{$ns5}''' '' - will return the global nameservers addresses specified in the order basing on the sequential number of the corresponding data in the variables
+
* '' '''{$ns1}''', '''{$ns2}''', '''{$ns3}''', '''{$ns4}''' '' and '' '''{$ns5}''' '' - will return the addresses of the global nameservers specified in the order basing on the sequential number of the corresponding data in the variables
 
* ''{$serverassignedip'''X'''}'' – allows you to use '' 'Assigned IP Addresses' '' from another server configuration ('' WHMCS → System Settings → Servers''). <br/> '''Important!''' You need to replace '''X''' with a number. For example: If you provide {$serverassignedip'''1'''} in the DNS Record Set, '''the first''' address from the '' 'Assigned IP Addresses' '' section will be used.   
 
* ''{$serverassignedip'''X'''}'' – allows you to use '' 'Assigned IP Addresses' '' from another server configuration ('' WHMCS → System Settings → Servers''). <br/> '''Important!''' You need to replace '''X''' with a number. For example: If you provide {$serverassignedip'''1'''} in the DNS Record Set, '''the first''' address from the '' 'Assigned IP Addresses' '' section will be used.   
 
|}
 
|}
Line 1,430: Line 1,433:
 
|}
 
|}
 
{|
 
{|
|style="padding: 0px 0px 15px 15px;"|Created DNS Records Sets can be then used while preparing ready packages, as it was described. <br/>Ready made sets allow much faster and more personal configuration of packages.<br/> There is also the possibility to duplicate the selected DNS Record Sets.  
+
|style="padding: 0px 0px 15px 15px;"|Created DNS Records Sets can be then used while preparing ready packages, as it was described. <br/> Ready-made sets allow much faster and more personal configuration of packages.<br/> There is also the possibility of duplicating the selected DNS Record Sets.  
 
|}
 
|}
 
{|
 
{|
Line 1,439: Line 1,442:
 
{|
 
{|
 
|style="padding: 10px 0px 15px 15px;"|Proceed to ''Settings → Blocked Strings'' now.<br/>
 
|style="padding: 10px 0px 15px 15px;"|Proceed to ''Settings → Blocked Strings'' now.<br/>
In this section you may define a lists of words that will not be allowed to be used while creating DNS and rDNS records.
+
In this section, you may define a list of words that will not be allowed to be used while creating DNS and rDNS records.
 
|}
 
|}
 
{|
 
{|
Line 1,447: Line 1,450:
 
|style="padding: 0px 0px 15px 15px;"|In order to add certain words, simply type them in the adequate box.<br/>
 
|style="padding: 0px 0px 15px 15px;"|In order to add certain words, simply type them in the adequate box.<br/>
 
Allowed formats:
 
Allowed formats:
*each word in new line
+
*each word in a new line
  
 
*space separated
 
*space separated
Line 1,493: Line 1,496:
 
===DNS Manager Tasks===
 
===DNS Manager Tasks===
 
{|
 
{|
|style="padding: 10px 0px 20px 15px;"|Check the list of current tasks. ''Keep in mind that tasks management is still in the DNS Manager V2 addon!''
+
|style="padding: 10px 0px 15px 15px;"|Check the list of current tasks.
Use the cron tasks to delete '''all''' tasks with the '' 'Finished' '' status:
+
Use the cron tasks to delete '''all''' tasks with the '' 'Finished' '' or '' 'Canceled' '' status:
  
  php -q /yourwhmcs/modules/addons/DNSManager3/cron/cron.php TasksCleaner --clean
+
  php -q /yourwhmcs/modules/addons/DNSManager3/cron/cron.php JobsCleaner --clean
 
|}
 
|}
 
{|
 
{|
Line 1,502: Line 1,505:
 
|}
 
|}
  
==DNS Manager V2 Addon==
 
{|
 
|style="padding: 10px 0px 30px 15px;"|To manage the following setting you will have to step back to the DNS Manager v2 addon module for a moment. You will find there the remaining section described below.
 
|}
 
 
===Cron Jobs===
 
===Cron Jobs===
 
{|
 
{|
|style="padding: 10px 0px 15px 15px;"|In order to manage your cron job tasks proceed to '' 'Tools' → 'Cron'. ''<br/>Here, you will find five information boxes, each one responsible for management of a separate cron task.<br/> These are: migration, import, synchronization, cleaner and backup.  
+
|style="padding: 10px 0px 15px 15px;"|In order to manage your cron job tasks proceed to '' 'Tools' → 'Cron'. ''<br/>Here, you will find five information boxes, each one responsible for the management of a separate cron task.<br/> These are: migration, import, synchronization, cleaner, and backup.  
 
|}
 
|}
 
{|
 
{|
Line 1,514: Line 1,513:
 
|}
 
|}
 
{|
 
{|
|style="padding: 0px 0px 15px 15px;"|At the very top, there is an info box with general cron details, such as recommended time interval of a cron execution (5 minutes is suggested),<br/> the last execution time and run time period. ''(Keep it as frequent as possible!)''
+
|style="padding: 0px 0px 15px 15px;"|At the very top, there is an info box with general cron details, such as the recommended time interval of a cron execution (5 minutes is suggested).<br/> The last execution time and run-time period are listed below. ''(Keep it as frequent as possible.)''<br/>
 +
'''''Note 1:''' The module cron will delete finished/canceled tasks each run.''<br/>
 +
'''''Note 2:''' The module cron is separate from the WHMCS daily cron, which for the purposes of the module only deletes joblogs and finished/canceled tasks after 30 days have passed.''
 
|}
 
|}
 
{|
 
{|
Line 1,521: Line 1,522:
 
{|
 
{|
 
|style="padding: 0px 0px 15px 15px;"|
 
|style="padding: 0px 0px 15px 15px;"|
'''Cron Migration''' - responsible for calling added tasks to migrate zones between servers.<br/>
+
'''Migration Cron''' - responsible for calling added tasks to migrate zones between servers.<br/>
 
Choose an interval and declare how many zones can be migrated during a single execution.<br/>
 
Choose an interval and declare how many zones can be migrated during a single execution.<br/>
 
<br/>
 
<br/>
'''Cron Importer''' - responsible for calling added task to import zones from an external server to WHMCS.<br/>
+
'''Import Cron''' - responsible for calling added tasks to import zones from an external server to WHMCS.<br/>
 
Choose an interval and declare how many zones can be imported during a single execution (Admin and Client backup tasks).<br/>
 
Choose an interval and declare how many zones can be imported during a single execution (Admin and Client backup tasks).<br/>
Select option to automatically check recognized records to perform the import much faster.<br/>
+
Select the option to automatically check recognized records to perform the import much faster.<br/>
 
Mark ''Active Users/Services'' and only such will be imported. <br/>
 
Mark ''Active Users/Services'' and only such will be imported. <br/>
''Import Priority'' - decide whether these should be services that will be assigned to a client firstly ''('Services, Domains' sequence)'' at Related Itmes or domains if selected the other way round.<br/>
+
''Import Priority'' - decide whether these should be services that will be assigned to a client firstly ''('Services, Domains' sequence)'' at Related Items or domains if selected the other way round.<br/>
 
<br/>
 
<br/>
'''Cron Synchronization''' - this cron job is responsible for regular synchronization of created zones.<br/>
+
'''Synchronization Cron''' - this cron job is responsible for regular synchronization of created zones.<br/>
Choose interval and declare how many zones can be synchronized during a single execution.<br/>
+
Choose an interval and declare how many zones can be synchronized during a single execution.<br/>
 
'''''Note:''''' ''When NS records are inconsistent with nameservers set in the server configuration, this cron job also deletes the zones.''
 
'''''Note:''''' ''When NS records are inconsistent with nameservers set in the server configuration, this cron job also deletes the zones.''
 
|}
 
|}
Line 1,538: Line 1,539:
 
|}
 
|}
 
{|
 
{|
|style="padding: 0px 0px 15px 15px;"|'''Cron Cleaner''' - this option is a little bit more complex. Just like in case of other cron jobs, firstly choose an interval and declare how many zones should be cleared<br/> during a single execution. Then you may specify conditions of clearing zones and records.<br />
+
|style="padding: 0px 0px 15px 15px;"|'''Cleaner Cron''' - this option is a little bit more complex. Just like in case of other cron jobs, firstly choose an interval and declare how many zones should be cleared<br/> during a single execution. Then you may specify the conditions of clearing zones and records.<br />
'' '''Warning!''' By default, the cron job is disabled and the 'Notify Only' option is enabled.<br/>
+
'' '''Warning:''' By default, the cron job is disabled and the 'Notify Only' option is enabled.<br/>
 
''You will need to change these settings manually if you would like to have the zones removed.''<br/>
 
''You will need to change these settings manually if you would like to have the zones removed.''<br/>
''What is more, when the cron will be enabled and the 'Notify Only' feature disabled, the module will send the warning about the zones deletion as an additional layer of safety.'' <br/><br/>
+
''What is more, when the cron is enabled and the 'Notify Only' feature disabled, the module will send the warning about the zones deletion as an additional layer of safety.'' <br/><br/>
Zones are removed:
+
Define which zones get removed:
*'''Not Included In Package''' - if no longer match with any package
+
*'''Excluded from Package''' - if no longer match with any package.
*'''Not Modified For''' - have not been modified for a specified period of time
+
*'''Unmodified for''' - have not been modified for a specified period.
*'''Not Found In WHOIS''' - their domain is not found in WHOIS Lookup
+
*'''Missing in WHOIS''' - their domain is not found in WHOIS Lookup.
*'''Without Records''' - no chosen records are included
+
*'''Without Records''' - no chosen records are included.
*'''Inactive Services''' - with canceled, terminated and/or suspended status
+
*'''Inactive Services''' - with canceled, terminated and/or suspended status.
*'''Inactive Domains''' - with canceled and/or expired status
+
*'''Inactive Domains''' - with canceled and/or expired status.
 
Decide for which of the following services, the PTR Records should be removed:
 
Decide for which of the following services, the PTR Records should be removed:
 
*'''Terminated Services'''
 
*'''Terminated Services'''
Line 1,555: Line 1,556:
 
|}
 
|}
 
{|
 
{|
|style="padding: 0px 0px 15px 15px;"|'''Cron Backup Scheduler'''
+
|style="padding: 0px 0px 20px 25px;"|[[File:DNS_36_1.png]]
In this section, you can schedule your backups. Similarly as previously, complete these fields according to your preferences.
+
*'''Automatic Backup Limit''' - you can set a maximum number of backups that will be stored. If the provided number is exceeded, then the oldest backups will be overwritten.  
+
 
|}
 
|}
 
{|
 
{|
|style="padding: 0px 0px 30px 25px;"|[[File:DNS_36.png]]
+
|style="padding: 0px 0px 15px 15px;"|'''Backup Schedule Cron''' - in this section, you can schedule your backups. Similarly as previously, complete these fields according to your preferences.
 +
*'''Stored Backups Limit''' - you can set the maximum number of backups that will be stored. If the provided number is exceeded, then the oldest backups will be overwritten.
 +
'''Important: '''For this function to work properly, the '''Import Cron''' has to be running.<br/> It's also crucial to configure both crons correctly:
 +
*'''Backup Schedule Cron''' cannot queue more tasks, than the '''Import Cron''' can handle.
 +
'''Example:'''<br/>
 +
There are:
 +
*100 clients
 +
*Each client has between 1 and 100 zones
 +
*Backup Schedule Cron is set to run every 3 hours
 +
|}
 +
{|
 +
|style="padding: 0px 0px 20px 25px;"|[[File:DNS_36_2.png]]
 +
|}
 +
{|
 +
|style="padding: 0px 0px 15px 15px;"|This means the Backup Schedule Cron will create a maximum of '''1000''' tasks for the Import Cron to handle.<br/>
 +
By extension, the Import Cron has to be configured in such a way, to handle those 1000 tasks across 3 hours and still have some leeway for other tasks.<br/>
 +
The suggested configuration of the '' 'Import Cron' '' here would be:
 +
*Run every 5 minutes
 +
*Zones per Execution: 30
 +
This means a maximum of '''1080''' tasks across 3 hours, which exceeds the potential tasks from the Backup Schedule Cron and leaves some additional space for unrelated tasks.
 +
|}
 +
{|
 +
|style="padding: 0px 0px 30px 25px;"|[[File:DNS_36_3.png]]
 
|}
 
|}
  
 
===Import===
 
===Import===
 
{|
 
{|
|style="padding: 10px 0px 15px 15px;"|Import - this is an additional tool that allows to import zones that exist on outside servers to WHMCS.<br/> Move to  '' Tools' → 'Import' '' in your admin panel. You will find here a list of '' 'Import' '' assignments with information on which server they are imported from,<br/> total number of already imported zones and the number of all zones, progress of import task. <br/>
+
|style="padding: 10px 0px 15px 15px;"|This is an additional tool that allows the import of zones that exist on outside servers to WHMCS. Move to  '' Tools' → 'Import' '' in your admin panel.<br/> You will find here a list of '' 'Import' '' assignments with information on which server they are imported from, total number of already imported zones and the number of all zones, progress of the import task. <br/>
To add a new import task press '' 'Add Import'. ''
+
To add a new import task press '' 'Import Zones'. ''
 
|}
 
|}
 
{|
 
{|
Line 1,578: Line 1,599:
 
|}
 
|}
 
{|
 
{|
|style="padding: 0px 0px 20px 15px;"|Now, when the new import task appeared on the list of awaiting imports, schedule the action.<br/>
+
|style="padding: 0px 0px 20px 15px;"|Now, when the new import task appears on the list of awaiting imports, schedule the action.
 
|}
 
|}
 
{|
 
{|
Line 1,584: Line 1,605:
 
|}
 
|}
 
{|
 
{|
|style="padding: 0px 0px 15px 15px;"|When schedule is confirmed, preview the list of imported zones to assign a client and a related product to the zone.<br/>
+
|style="padding: 0px 0px 15px 15px;"|When the schedule is confirmed, preview the list of imported zones to assign a client and a related product to the zone.<br/>
 
To do so, press the button as marked on the screen.
 
To do so, press the button as marked on the screen.
 
|}
 
|}
Line 1,591: Line 1,612:
 
|}
 
|}
 
{|
 
{|
|style="padding: 0px 0px 15px 15px;"|A list of zones appears.<br/>
+
|style="padding: 0px 0px 15px 15px;"|A list of zones appears, press '' 'Queue Import' '' to add zones into the import queue or '' 'Import Now' '' to import them immediately.<br/>
DNS Manager Import tool detects the client and product which the domain and IP address is assigned to and automatically designates related client and product to migrate.<br/> You can also do it manually by selecting a client and product from the list of available.<br/> When ready, press '' 'Import Zones' '' to import several zones at once or use action buttons for a single import.
+
Select the related client and item in the next window.<br/>
 +
If you do not schedule import tasks, regular cron execution will trigger the import.
 
|}
 
|}
 
{|
 
{|
|style="padding: 0px 0px 20px 25px;"|[[File:DNS_37_4.png]]
+
|style="padding: 0px 0px 30px 25px;"|[[File:DNS_37_4.png]]
|}
+
{|
+
|style="padding: 0px 0px 30px 15px;"|If you do not schedule import tasks, regular cron execution will trigger the import.<br/> However, you always have to make sure that selected zones are assigned to related clients and products.
+
 
|}
 
|}
  
===Zone Backups===
+
===Zone Backup===
 
{|
 
{|
|style="padding: 10px 0px 20px 15px;"|The '' 'Zone Backups' '' section allows you to export your zones to the file and, when needed, easily import them on the server.
+
|style="padding: 10px 0px 20px 15px;"|The '' 'Zone Backups' '' section allows you to export your zones to a file and, when needed, easily import them on the server.
 
|}
 
|}
 
{|
 
{|
Line 1,609: Line 1,628:
 
|}
 
|}
 
{|
 
{|
|style="padding: 0px 0px 20px 15px;"|To export zone automatically, press '' 'Export To File', '' define from which server you wish to export it and click on '' 'Add.' ''
+
|style="padding: 0px 0px 15px 15px;"|To export zone automatically, press '' 'Export To File', '' define from which server you wish to export it, and click on '' 'Confirm'.''<br/>
 +
'''''Note:''' Automatic backups will export all zones of every user.''
 
|}
 
|}
 
{|
 
{|
Line 1,618: Line 1,638:
 
|}
 
|}
 
{|
 
{|
|style="padding: 0px 0px 20px 15px;"|Schedule the task. Remember to confirm the action.
+
|style="padding: 0px 0px 15px 15px;"|Click on '' 'Add Export' '' and define details for the action:
 +
*'''Destination Server'''
 +
*'''Source File'''
 
|}
 
|}
 
{|
 
{|
Line 1,624: Line 1,646:
 
|}
 
|}
 
{|
 
{|
|style="padding: 0px 0px 20px 15px;"|You can now move to the list of zones to assign clients and products. Press the button marked on the screen.
+
|style="padding: 0px 0px 20px 15px;"|Schedule the task. Remember to confirm the action.
 +
 
 
|}
 
|}
 
{|
 
{|
|style="padding: 0px 0px 20px 25px;"|[[File:DNS3_6.png]]
+
|style="padding: 0px 0px 20px 25px;"|[[File:DNS3_5_1.png]]
 
|}
 
|}
 
{|
 
{|
|style="padding: 0px 0px 20px 15px;"|Select zones using action buttons next to single zones and '' 'Import Zones' '' for mass import.  
+
|style="padding: 0px 0px 20px 15px;"|You can now move to the list of zones. Press the button marked on the screen.
 
|}
 
|}
 
{|
 
{|
|style="padding: 0px 0px 20px 25px;"|[[File:DNS3_7.png]]
+
|style="padding: 0px 0px 20px 25px;"|[[File:DNS3_6.png]]
 
|}
 
|}
 
{|
 
{|
|style="padding: 0px 0px 20px 15px;"|You can also manually export zones. All you have to do is press the '' 'Add Export' '' button, then choose the appropriate server and source file.
+
|style="padding: 0px 0px 20px 15px;"|A list of zones appears, press '' 'Queue Export' '' to add zones to the export queue or '' 'Export Now' '' to export them immediately.
 
|}
 
|}
 
{|
 
{|
|style="padding: 0px 0px 20px 25px;"|[[File:DNS3_8.png]]
+
|style="padding: 0px 0px 30px 25px;"|[[File:DNS3_8.png]]
|}
+
{|
+
|style="padding: 0px 0px 30px 25px;"|[[File:DNS3_9.png]]
+
 
|}
 
|}
  
 
===Tasks===
 
===Tasks===
 +
<!---
 
{|
 
{|
|style="padding: 10px 0px 20px 15px;"|You will find a list of current tasks in '' 'Tools' → 'Tasks' '' section.<br/> Among all tasks there are import tasks, migration and synchronization tasks.
+
|style="padding: 10px 0px 20px 15px;"|You will find a list of current tasks in '' 'Tools' → 'Tasks' '' section.<br/> Among all tasks there are import tasks, migration, and synchronization tasks.
 
|}
 
|}
 
{|
 
{|
Line 1,653: Line 1,674:
 
|}
 
|}
 
{|
 
{|
|style="padding: 0px 0px 30px 15px;"|According to specifically set-up cron jobs all created tasks are regularly executed. Here, you can see the current status of each task.<br/> If it is queuing for the next cron run, is currently executed, aborted or complete. Check when they were executed for the last time ''(Last Execution)'' and when the task was added. <br/>Available actions: call execution manually and remove the task.
+
|style="padding: 0px 0px 30px 15px;"|According to specifically set-up cron jobs all created tasks are regularly executed. Here, you can see the current status of each task.<br/> If it is queuing for the next cron run, is currently executed, aborted, or complete. Check when they were executed for the last time ''(Last Execution)'' and when the task was added. <br/>Available actions: call execution manually and remove the task.
 
|}
 
|}
<!--
+
-->
 
{|
 
{|
|style="padding: 10px 0px 20px 15px;"|DNS Manager v3 addon '' 'Tasks' '' section includes a list of tasks with their current status and allowed actions:  
+
|style="padding: 10px 0px 15px 15px;"|DNS Manager addon '' 'Tasks' '' section includes a list of tasks with their current status and allowed actions:  
 
*View task information details and logs
 
*View task information details and logs
 
*Download Task File ''(csv)''
 
*Download Task File ''(csv)''
Line 1,666: Line 1,687:
 
|}
 
|}
 
{|
 
{|
|style="padding: 0px 0px 20px 25px;"|[[File:DNS3_69.png]]
+
|style="padding: 0px 0px 0px 25px;"|[[File:DNS3_69.png]]
 
|}
 
|}
 
{|
 
{|
|style="padding: 0px 0px 20px 25px;"|[[File:DNS3_70.png]]
+
|style="padding: 0px 0px 30px 25px;"|[[File:DNS3_70.png]]
 
|}
 
|}
-->
 
  
 
==Dashboard==
 
==Dashboard==
 
{|
 
{|
|style="padding: 10px 0px 15px 15px;"|The home page of DNS Manager which can be used to get a quick and clear preview on the crucial parts of the module: added servers with number of zones created on them,<br/> summary of email messages sent to clients and finally the most important notifications.
+
|style="padding: 10px 0px 15px 15px;"|The home page of DNS Manager which can be used to get a quick and clear preview on the crucial parts of the module: added servers with the number of zones created on them,<br/> summary of email messages sent to clients and finally the most important notifications.
 
|}
 
|}
 
{|
 
{|
Line 1,682: Line 1,702:
 
<!--==Integration Codes==
 
<!--==Integration Codes==
 
{|
 
{|
|style="padding: 10px 0px 15px 15px;"|With these codes you can easily change templates of your client area. You will find them in '' 'Configuration' '' → '' 'Integration Codes' '' section.<br />
+
|style="padding: 10px 0px 15px 15px;"|With these codes, you can easily change templates of your client area. You will find them in '' 'Configuration' '' → '' 'Integration Codes' '' section.<br />
 
You can download files you have to alter and check where to paste code.
 
You can download files you have to alter and check where to paste code.
 
|}
 
|}
Line 1,694: Line 1,714:
 
===Management of DNS Zones===
 
===Management of DNS Zones===
 
{|
 
{|
|style="padding: 10px 0px 20px 15px;"|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'. ''
+
|style="padding: 10px 0px 20px 15px;"|Adding new DNS zone is very simple. First, you need to go to your product details and open '' 'Manage DNS' '' tab. Afterward, press '' 'Add Zone'. ''
 
|}
 
|}
 
{|
 
{|
Line 1,700: Line 1,720:
 
|}
 
|}
 
{|
 
{|
|style="padding: 0px 0px 20px 15px;"|In next step enter your zone name, IP address and press '' 'Add Zone'. ''
+
|style="padding: 0px 0px 20px 15px;"|In the next step enter your zone name, and IP address and press '' 'Add Zone'. ''
 
|}
 
|}
 
{|
 
{|
Line 1,706: Line 1,726:
 
|}
 
|}
 
{|
 
{|
|style="padding: 0px 0px 15px 15px;"|If the operation was successful, you will see a following screen.<br />  
+
|style="padding: 0px 0px 15px 15px;"|If the operation was successful, you will see the following screen.<br />  
 
In order to check your new DNS zone details press '' 'Edit' '' button.  
 
In order to check your new DNS zone details press '' 'Edit' '' button.  
 
|}
 
|}
Line 1,721: Line 1,741:
 
{|
 
{|
 
|style="padding: 10px 0px 15px 15px;"|At product view, customers can manage their DNS and rDNS records. <br />
 
|style="padding: 10px 0px 15px 15px;"|At product view, customers can manage their DNS and rDNS records. <br />
To view DNS records simply go to'' 'Manage DNS' '' tab as presented on the following screen.
+
To view DNS records simply go to the'' 'Manage DNS' '' tab as presented on the following screen.
 
|}
 
|}
 
{|
 
{|
Line 1,728: Line 1,748:
 
{|
 
{|
 
|style="padding: 0px 0px 15px 15px;"|Here you can view all DNS records assigned to a certain domain.<br />
 
|style="padding: 0px 0px 15px 15px;"|Here you can view all DNS records assigned to a certain domain.<br />
To add new record, simply enter values to record with empty textbox fields at the bottom of page as shown on the screen below.<br />
+
To add a new record, simply enter values to record with empty textbox fields at the bottom of the page as shown on the screen below.<br />
You can also add multiple records at once. To do so, add new empty record by pressing '' 'More Records' '' (1) button. When you are finished, save changes by pressing '' 'Save Changes'. ''
+
You can also add multiple records at once. To do so, add a new empty record by pressing the'' 'More Records' '' (1) button. When you are finished, save changes by pressing '' 'Save Changes'. ''
 
|}
 
|}
 
{|
 
{|
Line 1,735: Line 1,755:
 
|}
 
|}
 
{|
 
{|
|style="padding: 0px 0px 20px 15px;"|You can also edit records from the list. To do so, enter changes into textboxes you want to alter and press '' 'Save Changes'. ''
+
|style="padding: 0px 0px 20px 15px;"|You can also edit records from the list. To do so, enter changes into the text boxes you want to alter and press '' 'Save Changes'. ''
 
|}
 
|}
 
{|
 
{|
Line 1,754: Line 1,774:
 
|}
 
|}
 
{|
 
{|
|style="padding: 0px 0px 20px 15px;"|Afterwards enter zone name, IP address, value and press '' 'Add' '' button once again.
+
|style="padding: 0px 0px 20px 15px;"|Afterwards enter the zone name, IP address, and value and press the'' 'Add' '' button once again.
 
|}
 
|}
 
{|
 
{|
Line 1,760: Line 1,780:
 
|}
 
|}
 
{|
 
{|
|style="padding: 0px 0px 20px 15px;"|You can also edit your rDNS zones. To do so, press edit button.
+
|style="padding: 0px 0px 20px 15px;"|You can also edit your rDNS zones. To do so, press the edit button.
 
|}
 
|}
 
{|
 
{|
Line 1,769: Line 1,789:
 
|}
 
|}
 
{|
 
{|
|style="padding: 0px 0px 20px 25px;"|[[File:DNS30.20.png]]
+
|style="padding: 0px 0px 30px 25px;"|[[File:DNS30.20.png]]
 
|}
 
|}
 
==Template Switching In The Client Area==
 
==Template Switching In The Client Area==
 
{|
 
{|
|style="padding: 10px 0px 15px 15px;"|Your customers can choose the complexity of zones management through switching between two templates: 'Simple' and 'Advanced'.<br />
+
|style="padding: 10px 0px 15px 15px;"|Your customers can choose the complexity of zone management by switching between two templates: 'Simple' and 'Advanced'.<br />
 
To enable this functionality, go to your DNS Manager → '' 'Configuration' '' → '' 'Processing' '' and tick '' 'Allow to switch template' '' as presented on the following screen.
 
To enable this functionality, go to your DNS Manager → '' 'Configuration' '' → '' 'Processing' '' and tick '' 'Allow to switch template' '' as presented on the following screen.
 
|}
 
|}
Line 1,780: Line 1,800:
 
|}
 
|}
 
{|
 
{|
|style="padding: 0px 0px 15px 15px;"|From this moment, new field '' 'Change Template' '' will show up in DNS Manager client area during zones management.<br />
+
|style="padding: 0px 0px 15px 15px;"|From this moment, the new field '' 'Change Template' '' will show up in the DNS Manager client area during zones management.<br />
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.
+
Default template is '' 'Simple' '' and it allows your customers to edit records separately. To change the template, choose '' 'Edit All Records (Advanced)' '' from a dropdown menu.
 
|}
 
|}
 
{|
 
{|
Line 1,793: Line 1,813:
 
|}
 
|}
 
{|
 
{|
|style="padding: 0px 0px 20px 15px;"|A screen below presents edit of CNAME records in Advanced template.
+
|style="padding: 0px 0px 20px 15px;"|A screen below presents the edit of CNAME records in the Advanced template.
 
|}
 
|}
 
{|
 
{|
|style="padding: 0px 0px 20px 25px;"|[[File:DNS54.2.png]]  
+
|style="padding: 0px 0px 30px 25px;"|[[File:DNS54.2.png]]  
 
|}
 
|}
 
-->
 
-->
Line 1,813: Line 1,833:
 
==IP Manager For WHMCS Integration==
 
==IP Manager For WHMCS Integration==
 
{|
 
{|
|style="padding: 10px 0px 15px 15px;"|As it has been mentioned above, some of the options in our DNS Manager For WHMCS are available if you are also using [https://www.modulesgarden.com/products/whmcs/ip-manager IP Manager For WHMCS] simultaneously.<br/> In this section you will learn how to integrate the two products to work together. For more inforamtion on the IP manager module configuration please refer to our [https://www.docs.modulesgarden.com/IP_Manager_For_WHMCS documentation].<br/>
+
|style="padding: 10px 0px 15px 15px;"|As it has been mentioned above, some of the options in our DNS Manager For WHMCS are available if you are also using [https://www.modulesgarden.com/products/whmcs/ip-manager IP Manager For WHMCS] simultaneously.<br/> In this section you will learn how to integrate the two products to work together. For more information on the IP manager module configuration please refer to our [https://www.docs.modulesgarden.com/IP_Manager_For_WHMCS documentation].<br/>
Let us take a look at the IP Manager module firstly. There you have to create a subnet.
+
Let us take a look at the IP Manager module first. There you have to create a subnet.
 
|}
 
|}
 
{|
 
{|
Line 1,826: Line 1,846:
 
|}
 
|}
 
{|
 
{|
|style="padding: 0px 0px 20px 15px;"|When ready, create a proper configuration and assign required products to it.
+
|style="padding: 0px 0px 20px 15px;"|When ready, create a proper configuration and assign the required products to it.
 
|}
 
|}
 
{|
 
{|
Line 1,836: Line 1,856:
 
{|
 
{|
 
|style="padding: 0px 0px 20px 25px;"|[[File:DNS2_71_2.png]]
 
|style="padding: 0px 0px 20px 25px;"|[[File:DNS2_71_2.png]]
|}
 
{|
 
|style="padding: 0px 0px 20px 25px;"|[[File:DNS2_71_3.png]]
 
 
|}
 
|}
 
{|
 
{|
Line 1,883: Line 1,900:
 
2. Run the following command in your browser or in the console:<br/>
 
2. Run the following command in your browser or in the console:<br/>
 
  your_whmcs_path\modules\addons\DNSManager2\cron\migration.php
 
  your_whmcs_path\modules\addons\DNSManager2\cron\migration.php
3. Follow the steps that you see on your screen now!<br/><br />
+
3. Follow the steps that you see on your screen now.<br/><br />
 
''Note: It is advised to use your console to do the migration between the previous and the new versions of your DNS Manager in case you have a huge number of zones<br/>(if more than 1000, it is highly recommended).''<br/>
 
''Note: It is advised to use your console to do the migration between the previous and the new versions of your DNS Manager in case you have a huge number of zones<br/>(if more than 1000, it is highly recommended).''<br/>
4. Once the script has run and the migration is complete you need to review the configuration of your servers to alter their naming and which is the most important '''enable migrated servers and packages.'''<br/>
+
4. Once the script has run and the migration is complete you need to review the configuration of your servers to alter their naming which is the most important '''enable migrated servers and packages.'''<br/>
 
Freshly migrated servers and packages are by default disabled.
 
Freshly migrated servers and packages are by default disabled.
 
|}
 
|}
Line 1,891: Line 1,908:
 
|style="padding: 0px 0px 30px 15px;"|Once the migration of zones is ready you can migrate rDNS records.<br/>
 
|style="padding: 0px 0px 30px 15px;"|Once the migration of zones is ready you can migrate rDNS records.<br/>
 
To do so:<br/>
 
To do so:<br/>
1. Run command in your browser or in console:<br/>
+
1. Run the command in your browser or in the console:<br/>
 
  your_whmcs_path\modules\addons\DNSManager2\cron\ptr_migration.php
 
  your_whmcs_path\modules\addons\DNSManager2\cron\ptr_migration.php
 
2. Follow the steps that you see on your screen now.<br/>
 
2. Follow the steps that you see on your screen now.<br/>
 
3. Your PTR records will be assigned to adequate zones. In case when the pointing domain does not exist, the required zone will be created and added to the client's account (if no other user already has it).<br/>
 
3. Your PTR records will be assigned to adequate zones. In case when the pointing domain does not exist, the required zone will be created and added to the client's account (if no other user already has it).<br/>
4. Migrated rDNS records are visible in edition page of its zone as PTR records.
+
4. Migrated rDNS records are visible on the edition page of its zone as PTR records.
 
|}
 
|}
  
 
==API Methods==
 
==API Methods==
 
{|
 
{|
|style="padding: 10px 0px 30px 15px;"|You may access your DNS Manager For WHMCS '''API'''. Here is a short instruction how to do that:<br/>
+
|style="padding: 10px 0px 30px 15px;"|You may access your DNS Manager For WHMCS '''API'''. Here is a short instruction on how to do that:<br/>
 
The main required command that has to be used is:
 
The main required command that has to be used is:
 
*'' 'dnsmanager' ''<br/>
 
*'' 'dnsmanager' ''<br/>
Line 1,953: Line 1,970:
 
);
 
);
 
</pre>
 
</pre>
*'' 'updateZone' '' -  updates records of the zone. Use with these parameters:
+
*'' 'updateZone' '' -  updates records of the zone. Use these parameters:
 
**'' 'action = dnsmanager' ''
 
**'' 'action = dnsmanager' ''
 
**'' 'dnsaction = updateZone' '' - DNS action that DNS Manager should execute
 
**'' 'dnsaction = updateZone' '' - DNS action that DNS Manager should execute
 
**'' 'zone_id  -  ID of the zone that should be updated (use ID from WHMCS)
 
**'' 'zone_id  -  ID of the zone that should be updated (use ID from WHMCS)
**'' 'records -  array of the records that should be updated (added/changed/removed) if DNS Manager compare these records and add/change/remove corresponding difference. These are:
+
**'' 'records -  array of the records that should be updated (added/changed/removed) if DNS Manager compares these records and add/change/remove the corresponding difference. These are:
 
***'' 'name' '' - name of the node to which this record pertains
 
***'' 'name' '' - name of the node to which this record pertains
 
***'' 'type' '' - type of the updating resource record (e.g. MX)
 
***'' 'type' '' - type of the updating resource record (e.g. MX)
Line 1,987: Line 2,004:
 
       ),'admin');
 
       ),'admin');
 
</pre>
 
</pre>
*'' 'getZone' '' -  returns the zone with records. Use with these parameters:
+
*'' 'getZone' '' -  returns the zone with records. Use these parameters:
 
***'' 'action = dnsmanager' ''
 
***'' 'action = dnsmanager' ''
 
***'' 'dnsaction = getZone' '' - DNS action that DNS Manager should execute
 
***'' 'dnsaction = getZone' '' - DNS action that DNS Manager should execute
Line 1,993: Line 2,010:
 
***'' 'zone_name' '' - name of the zone
 
***'' 'zone_name' '' - name of the zone
  
*'' 'removeZone' '' -  deletes the zone. Use with these parameters:
+
*'' 'removeZone' '' -  deletes the zone. Use these parameters:
 
***'' action = dnsmanager' ''
 
***'' action = dnsmanager' ''
 
***'' dnsaction = removeZone' '' - DNS action that DNS Manager should execute
 
***'' dnsaction = removeZone' '' - DNS action that DNS Manager should execute
 
***'' zone_id' '' - ID of the zone that should be removed (use ID from WHMCS)
 
***'' zone_id' '' - ID of the zone that should be removed (use ID from WHMCS)
 +
|}
 +
 +
=Use Cases=
 +
{|
 +
|style="padding: 10px 0px 30px 15px;"|'''This section provides exemplary scenarios that demonstrate common use cases and detail how the module's functionalities can be applied in practice.'''<br/>
 +
Review the following scenarios to see practical examples of module usage.
 +
|}
 +
==Offering DNS Management For Ordered Services==
 +
{|
 +
|style="padding: 10px 0px 15px 15px;"|'''Offering your clients a way to manage DNS zones for products they purchase is one of the core features of the DNS Manager For WHMCS module.<br/>
 +
First, open the addon and navigate to '' 'Settings' '' → '' 'Servers' '' to configure a server that will be used to handle DNS Zones. <br/>
 +
In our case, this will be a cPanel server.<br/>
 +
'''''Note:''' More information on how to configure a server can be found in the [[#Server_Configuration|Server Configuration]] section.''
 +
|}
 +
{|
 +
|style="padding: 0px 0px 20px 25px;"|[[File:DNS4_87.png]]
 +
|}
 +
{|
 +
|style="padding: 0px 0px 15px 15px;"|Next, navigate to '' 'Settings' '' → '' 'Packages' '' to configure a package.<br/>
 +
Enable zone creation on '' 'New Items' '' and set up the '' 'Limits'.''<br/>
 +
'''''Note:''' More information on packages can be found in the [[#Management_of_Packages|Management of Packages]] section.''
 +
|}
 +
{|
 +
|style="padding: 0px 0px 20px 25px;"|[[File:DNS4_88.png]]
 +
|}
 +
{|
 +
|style="padding: 0px 0px 20px 15px;"|Include your products and domains under Items.
 +
|}
 +
{|
 +
|style="padding: 0px 0px 20px 25px;"|[[File:DNS4_89.png]]
 +
|}
 +
{|
 +
|style="padding: 0px 0px 20px 15px;"|Select the server prepared in the previous step.
 +
|}
 +
{|
 +
|style="padding: 0px 0px 20px 25px;"|[[File:DNS4_90.png]]
 +
|}
 +
{|
 +
|style="padding: 0px 0px 15px 15px;"|Make sure either (or both) the '' 'DNS Management Link' '' or '' 'Show DNS Manage Button' '' is enabled under '' 'Settings' '' → '' 'Global Settings'.''<br/>
 +
'''''Note:''' Detailed explanation of the other settings can be found in the [[#Global_Settings|Global Settings]] section.''
 +
|}
 +
{|
 +
|style="padding: 0px 0px 20px 25px;"|[[File:DNS4_92.png]]
 +
|}
 +
{|
 +
|style="padding: 0px 0px 15px 15px;"|Once clients purchase a product with an appropriate TLD in the domain, they can manage its DNS zones.<br/>
 +
This option will be available in the client area under '' 'Domains' '' → '' 'Manage DNS' '' or on the product page under '' 'Actions','' depending on the global settings.<br/>
 +
'''''Note:''' More information on the options available to the client can be found in the [[#Client_Area|Client Area]] section.''
 +
|}
 +
{|
 +
|style="padding: 0px 0px 30px 25px;"|[[File:DNS4_91.png]]
 +
|}
 +
 +
==Deploying Backup DNS Server For External DNS Zones==
 +
{|
 +
|style="padding: 10px 0px 15px 15px;"|'''If you would like to create a backup of an external DNS zone, a great way to do that would be to utilize the DNS Manager For WHMCS '' 'slave zone' '' functionality.'''<br/>
 +
Follow the instructions below to see how you can do that.<br/><br/>
 +
1. Make sure your package allows for the creation of slave zones.
 +
|}
 +
{|
 +
|style="padding: 0px 0px 20px 25px;"|[[File:DNS4_93.png]]
 +
|}
 +
{|
 +
|style="padding: 0px 0px 20px 15px;"|
 +
2. Under '' 'Domains' '' → '' 'Manage DNS' '' clients can create a slave zone by clicking on the '' 'Add DNS Zone' '' button.
 +
|}
 +
{|
 +
|style="padding: 0px 0px 20px 25px;"|[[File:DNS4_94.png]]
 +
|}
 +
{|
 +
|style="padding: 0px 0px 20px 15px;"|
 +
3. Select the related item, enable the '' 'Slave Zone' '' toggle, and input the slave zone details. Click on '' 'Confirm' '' to create the zone.
 +
|}
 +
{|
 +
|style="padding: 0px 0px 30px 25px;"|[[File:DNS4_95.png]]
 +
|}
 +
 +
==Delivering DNS Zone Management With rDNS For Ordered Servers==
 +
{|
 +
|style="padding: 10px 0px 15px 15px;"|'''Offering DNS zone management along with rDNS for ordered servers is another core feature of '' 'DNS Manager For WHMCS'.'''''<br/>
 +
First, open the addon and navigate to '' 'Settings' '' → '' 'Servers' '' to configure a server that will be used to handle DNS Zones. <br/>
 +
In our case, this will be a cPanel server. Make sure to allow rDNS Records at this stage<br/>
 +
'''''Note:''' More information on how to configure a server can be found in the [[#Server_Configuration|Server Configuration]] section.''
 +
|}
 +
{|
 +
|style="padding: 0px 0px 20px 25px;"|[[File:DNS4_96.png]]
 +
|}
 +
{|
 +
|style="padding: 0px 0px 15px 15px;"|Next, navigate to '' 'Settings' '' → '' 'Packages' '' to configure a package.<br/>
 +
Remember to include your product, for example, a Proxmox VM.<br/>
 +
'''''Note:''' More information on packages can be found in the [[#Management_of_Packages|Management of Packages]] section.''
 +
|}
 +
{|
 +
|style="padding: 0px 0px 20px 25px;"|[[File:DNS4_97.png]]
 +
|}
 +
{|
 +
|style="padding: 0px 0px 20px 15px;"|Select the server prepared in the previous step.
 +
|}
 +
{|
 +
|style="padding: 0px 0px 20px 25px;"|[[File:DNS4_90.png]]
 +
|}
 +
{|
 +
|style="padding: 0px 0px 15px 15px;"|Make sure either (or both) the '' 'DNS Management Link' '' or '' 'Show DNS Manage Button' '' is enabled under '' 'Settings' '' → '' 'Global Settings'.''<br/>
 +
'''''Note:''' Detailed explanation of the other settings can be found in the [[#Global_Settings|Global Settings]] section.''
 +
|}
 +
{|
 +
|style="padding: 0px 0px 20px 25px;"|[[File:DNS4_92.png]]
 +
|}
 +
{|
 +
|style="padding: 0px 0px 15px 15px;"|Once a client purchases the VM with an appropriate TLD in the domain, they can manage its DNS zones.<br/>
 +
This option will be available in the client area under '' 'Domains' '' → '' 'Manage DNS' '' or on the product page under '' 'Actions','' depending on the global settings.<br/>
 +
'''''Note:''' More information on the options available to the client can be found in the [[#Client_Area|Client Area]] section.''
 +
|}
 +
{|
 +
|style="padding: 0px 0px 20px 25px;"|[[File:DNS4_100.png]]
 +
|}
 +
{|
 +
|style="padding: 0px 0px 15px 15px;"|Provided the relevant option is enabled in the package settings (step 1), the rDNS tab will be available as well.<br/>
 +
'''''Note:''' More information on rDNS can be found in the [[#rDNS|rDNS]] section.''
 +
|}
 +
{|
 +
|style="padding: 0px 0px 30px 25px;"|[[File:DNS4_101.png]]
 +
|}
 +
 +
==Using Reseller Account For cPanel Server==
 +
{|
 +
|style="padding: 10px 0px 15px 15px;"|'''DNS Manager For WHMCS can be used not only with the root account of cPanel but also with reseller accounts.''' <br/>
 +
1. First, make sure that the reseller account has DNS-related privileges granted in the WHM panel.
 +
|}
 +
{|
 +
|style="padding: 0px 0px 20px 25px;"|[[File:DNS4_78.png]]
 +
|}
 +
{|
 +
|style="padding: 0px 0px 20px 15px;"|2. Open the DNS Manager addon and navigate to '' 'Settings' '' →'' 'Servers' '' to add a new server or edit an existing cPanel server.
 +
|}
 +
{|
 +
|style="padding: 0px 0px 20px 25px;"|[[File:DNS4_79.png]]
 +
|}
 +
{|
 +
|style="padding: 0px 0px 5px 15px;"|3. Fill in the necessary fields as explained in [[#Servers_Configuration|Servers Configuration]].<br/> For the '' 'Username' '' and '' 'User Password' '' use the reseller credentials and enable the '' 'Reseller Account' '' switch.
 +
|}
 +
{|
 +
|style="padding: 0px 0px 20px 15px;"|4. Click on '' 'Confirm' '' when ready.
 +
|}
 +
{|
 +
|style="padding: 0px 0px 20px 25px;"|[[File:DNS4_80.png]]
 +
|}
 +
{|
 +
|style="padding: 0px 0px 20px 15px;"|5. All that remains is to change the server's status to '' 'Enabled'.''
 +
|}
 +
{|
 +
|style="padding: 0px 0px 30px 25px;"|[[File:DNS4_82.png]]
 +
|}
 +
 +
==Providing DNS Zone Management For Domains Without It==
 +
{|
 +
|style="padding: 10px 0px 15px 15px;"|'''If you use a domain registrar that does not support DNS management by default, you may use DNS Manager For WHMCS to introduce such an option.'''<br/>
 +
Navigate to '' 'System Settings' '' → '' 'Domain Pricing'.''<br/>
 +
Find the domain you want to use and enable '' 'DNS Management','' then set the registrar that does not support DNS Management under '' 'Auto Registration'.'' <br/>
 +
You can set its price in the '' 'Domain Addons' '' table at the bottom.
 +
|}
 +
{|
 +
|style="padding: 0px 0px 20px 25px;"|[[File:DNS4_83.png]]
 +
|}
 +
{|
 +
|style="padding: 0px 0px 15px 15px;"|Now open the DNS Manager addon, navigate to '' 'Settings' '' → '' 'Packages' '' and prepare a [[#Management_of_Packages|package]].<br/>
 +
Move to the '' 'Registrars' '' tab and select your TLD.<br/>'''''Note:''' The TLD has to be included in the package under 'Item' first.''
 +
|}
 +
{|
 +
|style="padding: 0px 0px 20px 25px;"|[[File:DNS4_84.png]]
 +
|}
 +
{|
 +
|style="padding: 0px 0px 15px 15px;"|When the domain is ordered, there will be an option to include DNS Management as an addon on the order form.<br/>Later on, the option will still be available in the client area under '' 'Domains' '' → '' 'My Domains' '' → '' 'Addons'.''
 +
|}
 +
{|
 +
|style="padding: 0px 0px 20px 25px;"|[[File:DNS4_85.png]]
 +
|}
 +
{|
 +
|style="padding: 0px 0px 15px 15px;"|After the option is purchased, the in-build WHMCS DNS Management will be available, just as it would for a registrar that does support DNS Management.<br/>'''''Note:''' If the function does not seem to work, make sure that you have set up the  'your_whmcs/modules/addons/DNSManager3/app/Legacy/DNSManager2/storage' folder as recursively writable.''
 +
|}
 +
{|
 +
|style="padding: 0px 0px 30px 25px;"|[[File:DNS4_86.png]]
 
|}
 
|}
  
 
=Tips=
 
=Tips=
 
{|
 
{|
|style="padding: 10px 0px 15px 15px;"|1. Keep track of your '' 'pending' '' and in '' 'progress' '' ''' 'Tasks' ''' to set an optimum interval time for the tasks execution. <br/>
+
|style="padding: 10px 0px 15px 15px;"|1. Keep track of your '' 'pending' '' and'' 'progress' '' ''' 'Tasks' ''' to set an optimum interval time for the task's execution. <br/>
For example, set an interval in the way that half of the time task is set to the pending status.
+
For example, set an interval in the way that half of the time the task is set to the pending status.
 
|}
 
|}
 
{|
 
{|
|style="padding: 0px 0px 15px 15px;"|2. While using the OVH submodule, note that each time a client wants to remove a zone, the administrator will receive an email sent by OVH. Only after its confirmation, a given zone will be terminated successfully.   
+
|style="padding: 0px 0px 15px 15px;"|2. While using the OVH submodule, note that each time a client wants to remove a zone, the administrator will receive an email sent by OVH. Only after its confirmation, a given zone will be terminated successfully.   
 
|}
 
|}
 
{|
 
{|
Line 2,012: Line 2,211:
 
<!--
 
<!--
 
{|
 
{|
|style="padding: 0px 0px 20px 15px;"|4. When you try to add a record of not supported type to a package, you will be informed about the lack of support with a note as on the screen below.  
+
|style="padding: 0px 0px 20px 15px;"|4. When you try to add a record of not-supported type to a package, you will be informed about the lack of support with a note as on the screen below.  
 
|}
 
|}
 
{|
 
{|
Line 2,018: Line 2,217:
 
|}-->
 
|}-->
 
{|
 
{|
|style="padding: 0px 0px 20px 15px;"|4. As this module supports templates system, any changes made in the module's templates files will be saved after the upgrade process.
+
|style="padding: 0px 0px 20px 15px;"|4. As this module supports template system, any changes made in the module's template files will be saved after the upgrade process.
 
|}
 
|}
 
{|
 
{|
|style="padding: 0px 0px 15px 15px;"|5. In case you are using cPanel or cPanel Extended provisioning modules with DNS Manager, it is '''highly''' advised to enable the '''Existing Zone Update''' option.<br/> Otherwise, DNS zone will be previously created by the provisioning module, not by DNS Manager where an error notification on already existing zone will appear. That will cause such zone will not be visible on the Zones List. <br/> If the mentioned option is enabled, DNS Manager will fail to check whether the zone already exists and consequently the created by the provisioning module entry will be added to the Zones List.
+
|style="padding: 0px 0px 15px 15px;"|5. In case you are using cPanel or cPanel Extended provisioning modules with DNS Manager, it is '''highly''' advised to enable the '''Existing Zone Update''' option.<br/> Otherwise, the DNS zone will be previously created by the provisioning module, not by the DNS Manager where an error notification on the already existing zone will appear. That will cause such a zone not to be visible on the Zones List. <br/> If the mentioned option is enabled, DNS Manager will fail to check whether the zone already exists and consequently the created by the provisioning module entry will be added to the Zones List.
 
|}
 
|}
 
{|
 
{|
Line 2,027: Line 2,226:
 
|}
 
|}
 
{|
 
{|
|style="padding: 0px 0px 15px 15px;"|6. Please note that from the 2.13.0 version of the module, it is '''obligatory''' to use a dot at the end of each domain while adding or editing '' 'DNS Records' '' and '' 'DNS Record Sets' ''.<br/> If you do not provide a dot, the module will double your domain. Take a look at the following examples, on the left side we present what is typed by a client and on the right side you can see the module’s interpretation:<br/>
+
|style="padding: 0px 0px 15px 15px;"|6. Please note that from the 2.13.0 version of the module, it is '''obligatory''' to use a dot at the end of each domain while adding or editing '' 'DNS Records' '' and '' 'DNS Record Sets' ''.<br/> If you do not provide a dot, the module will double your domain. Take a look at the following examples, on the left side we present what is typed by a client, and on the right side you can see the module’s interpretation:<br/>
 
An exemplary zone name is '''example.com'''<br/>
 
An exemplary zone name is '''example.com'''<br/>
 
@ → example.com. <br/>  
 
@ → example.com. <br/>  
Line 2,048: Line 2,247:
 
|style="padding: 0px 0px 15px 15px;"|'''8. How to correctly add translations of the DNS server errors into the language file:'''<br/>
 
|style="padding: 0px 0px 15px 15px;"|'''8. How to correctly add translations of the DNS server errors into the language file:'''<br/>
 
Most errors include a string with a domain name, to add a custom error message, you have to replace this string with ''':domain_word:''' phrase. <br/>
 
Most errors include a string with a domain name, to add a custom error message, you have to replace this string with ''':domain_word:''' phrase. <br/>
An example of currently displayed error message:  
+
An example of a currently displayed error message:  
  
 
   RRset A.testdnsipdefault.by. IN CNAME: Conflicts with pre-existing non-CNAME RRset   
 
   RRset A.testdnsipdefault.by. IN CNAME: Conflicts with pre-existing non-CNAME RRset   
Line 2,057: Line 2,256:
  
 
As a result the below message will be displayed in the module:  
 
As a result the below message will be displayed in the module:  
   Some serious problem occurred with A.testdnsipdefault.by.
+
   Some serious problems occurred with A.testdnsipdefault.by.
  
 
Of course, you may skip the domain name in the final output or add a fully customized error message:   
 
Of course, you may skip the domain name in the final output or add a fully customized error message:   
Line 2,063: Line 2,262:
 
   $_LANG['addonCA']['dashboard']['errors']['RRset :domain_word: IN CNAME: Conflicts with pre-existing non-CNAME RRset'] = 'My custom translation';   
 
   $_LANG['addonCA']['dashboard']['errors']['RRset :domain_word: IN CNAME: Conflicts with pre-existing non-CNAME RRset'] = 'My custom translation';   
  
If you do not add any translation in to the lang file, an original error message will be displayed.
+
If you do not add any translation into the lang file, an original error message will be displayed.
 
|}
 
|}
 
<!--
 
<!--
 
{|
 
{|
|style="padding: 0px 0px 10px 15px;"|3. We recommend to run Cron once per hour.
+
|style="padding: 0px 0px 10px 15px;"|3. We recommend running Cron once per hour.
 
|}
 
|}
 
{|
 
{|
Line 2,073: Line 2,272:
 
|}
 
|}
 
{|
 
{|
|style="padding: 0px 0px 10px 15px;"|5. If the zone is inactive or mis-configured for longer than 24 hours, Cron will automatically delete it. Single Cron run removes up to 5 such zones.
+
|style="padding: 0px 0px 10px 15px;"|5. If the zone is inactive or misconfigured for longer than 24 hours, Cron will automatically delete it. A single Cron run removes up to 5 such zones.
 
|}
 
|}
 
{|
 
{|
|style="padding: 0px 0px 5px 15px;"|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.<br />
+
|style="padding: 0px 0px 5px 15px;"|6. '' 'Default IP' '' as the name suggests is the default IP address of the zone. If you don't specify an IP address when you create a new zone, the default IP will be used.<br />
In case you don't provide default IP neither zone IP, you won't be able to create new zone.
+
In case you don't provide a default IP or zone IP, you won't be able to create a new zone.
 
|}
 
|}
 
{|
 
{|
Line 2,088: Line 2,287:
 
{|  
 
{|  
 
|style="padding: 0px 0px 5px 15px;"|9. Variable <code>$dns_manager_is_active</code> returns true if DNS Manager Add-On is active.<br />
 
|style="padding: 0px 0px 5px 15px;"|9. Variable <code>$dns_manager_is_active</code> returns true if DNS Manager Add-On is active.<br />
Variable <code>$dns_manager_link</code> returns a link when domain is available in DNS Manager (exists on the list in the '' 'Zones List' '').<br />
+
Variable <code>$dns_manager_link</code> returns a link when the domain is available in DNS Manager (exists on the list in the '' 'Zones List' '').<br />
 
If you can't access DNS Management from the client area then make sure that domain for which <code>$dns_manager_link</code> is empty, is located on the '' 'Zones List'. ''
 
If you can't access DNS Management from the client area then make sure that domain for which <code>$dns_manager_link</code> is empty, is located on the '' 'Zones List'. ''
 
|}
 
|}
 
{|
 
{|
|style="padding: 0px 0px 10px 15px;"|10. The screen below shows an example configuration of PowerDNS connection.
+
|style="padding: 0px 0px 10px 15px;"|10. The screen below shows an example configuration of the PowerDNS connection.
 
|}
 
|}
 
{|
 
{|
Line 2,101: Line 2,300:
 
=Update Instructions=
 
=Update Instructions=
 
{|
 
{|
|style="padding: 10px 0px 30px 15px;"|The essential guidance through the process of updating the module is offered '''[https://www.docs.modulesgarden.com/How_To_Update_WHMCS_Module here]'''.<br/><br/>
+
|style="padding: 10px 0px 30px 15px;"|The essential guidance through the process of updating the module is offered '''[https://www.docs.modulesgarden.com/How_To_Update_WHMCS_Module here]'''.<br/>
Keep in mind there is a quick and easy option in our client area that will let you upgrade the license of your module to an open source version at any time - and at a lower price!<br/>
+
Ensure successful completion of the module update by carefully following each step, thereby preventing data loss or any unforeseen issues.<br/> Additionally, you will find a current list of supplementary actions necessary for a smooth update process there.
To take advantage of it, simply use the '''License Upgrade''' button located on the product's page and a discounted invoice will be generated automatically.<br/>
+
 
|}
 
|}
 
==Migration from V2x.x to V3.x.x==
 
==Migration from V2x.x to V3.x.x==
Line 2,109: Line 2,307:
 
|style="padding: 10px 0px 30px 15px;"|If you want to migrate your DNS Manager For WHMCS to version 3.0, please follow the below steps:
 
|style="padding: 10px 0px 30px 15px;"|If you want to migrate your DNS Manager For WHMCS to version 3.0, please follow the below steps:
 
*Keep both module addons '''DNS Manager''' and '''DNS Manager v3''' active  
 
*Keep both module addons '''DNS Manager''' and '''DNS Manager v3''' active  
*Full module configuration is still located in DNS Manager addon module, your old data are not lost
+
*Full module configuration is still located in the DNS Manager addon module, your old data are not lost
 
*Move to DNS Manager '''v3''' addon module → '' 'Settings' '' to enable access to Client Area with support for '' 'Twenty-One' '' theme
 
*Move to DNS Manager '''v3''' addon module → '' 'Settings' '' to enable access to Client Area with support for '' 'Twenty-One' '' theme
 
**Set up a new cron task ''(DNS Manager '''v3''' addon module → Settings)''
 
**Set up a new cron task ''(DNS Manager '''v3''' addon module → Settings)''
 
*Go back to ''DNS Manager addon module'' → 'Settings' → 'Global Settings' → 'Client Area Zones Status' '' and again save the content. <br/> '''''Note:''' Entered content might not be correctly displayed in the new client area view, saving the changes will ensure there are no unexpected errors or missing information.''  
 
*Go back to ''DNS Manager addon module'' → 'Settings' → 'Global Settings' → 'Client Area Zones Status' '' and again save the content. <br/> '''''Note:''' Entered content might not be correctly displayed in the new client area view, saving the changes will ensure there are no unexpected errors or missing information.''  
 +
|}
 +
==Migration from V3x.x to V3.4.0==
 +
{|
 +
|style="padding: 10px 0px 30px 15px;"|When updating the module to version 3.4.0 keep in mind that:
 +
*With version 3.4.0 all DNS Manager For WHMCS functionality can be found in one addon.<br/> The DNS Manager '''V2 addon can be safely deactivated''' and deleted after the module update as it is no longer required for module configuration or management.
 +
*You need to '''reissue your module license''' to ensure proper functionality and avoid any interruptions.
 +
*Database migration will be done automatically after module update, but can also be triggered manually via script:
 +
php -q /yourwhmcs/modules/addons/DNSManager3/cron/cron.php upgrade-3-3-to-3-4
 
|}
 
|}
  
 
==Migration of Zones==
 
==Migration of Zones==
 
{|
 
{|
|style="padding: 10px 0px 15px 15px;"|'' 'Migration' '' is another useful tool that you may use to manage zones efficiently. With this tool you may migrate zones between servers. <br/>
+
|style="padding: 10px 0px 15px 15px;"|'' 'Migration' '' is another useful tool that you may use to manage zones efficiently. With this tool, you may migrate zones between servers. <br/>
 
Keep in mind, that if you wish to transfer the relation that exists in the DNS Manager module to the target server, you must select the '' 'Move Management To Target Server' '' option.<br/> Otherwise, only the zone will be copied from the original to the target server, the relation to the original server will remain in the module.<br/>
 
Keep in mind, that if you wish to transfer the relation that exists in the DNS Manager module to the target server, you must select the '' 'Move Management To Target Server' '' option.<br/> Otherwise, only the zone will be copied from the original to the target server, the relation to the original server will remain in the module.<br/>
 
<br/>
 
<br/>
Line 2,128: Line 2,334:
 
|style="padding: 0px 0px 15px 15px;"|To add a migration task, press '' 'Add Migration', '' specify from which server you wish to migrate zones, and the target server, as simple as that.<br/>
 
|style="padding: 0px 0px 15px 15px;"|To add a migration task, press '' 'Add Migration', '' specify from which server you wish to migrate zones, and the target server, as simple as that.<br/>
 
'''''Note 1:''' Migration does not copy DNS Manager settings, to illustrate: if you are migrating zones that exist in DNS Manager their locations for example are not updated.'' <br/>
 
'''''Note 1:''' Migration does not copy DNS Manager settings, to illustrate: if you are migrating zones that exist in DNS Manager their locations for example are not updated.'' <br/>
'''''Note 2:''' You can decide if the option of managing zones should be transferred to the target server. To do it, please tick 'Move Management To Target Server' .  
+
'''''Note 2:''' You can decide if the option of managing zones should be transferred to the target server. To do it, please tick 'Move Management To Target Server'.  
 
|}
 
|}
 
{|
 
{|
Line 2,150: Line 2,356:
 
{|
 
{|
 
|style="padding: 0px 0px 30px 25px;"|[[File:DNS_41_3.png]]
 
|style="padding: 0px 0px 30px 25px;"|[[File:DNS_41_3.png]]
 +
|}
 +
=Upgrade Guide=
 +
{|
 +
|style="padding: 10px 0px 30px 15px;"|Seeking a solution that offers greater flexibility, customization tailored to your precise needs, and unrestricted availability?<br/> There is an option that not only proves to be cost-effective in the long run but also includes prioritized support services, making it a truly valuable investment.<br/>
 +
 +
Opt for the [https://www.modulesgarden.com/products/whmcs/dns-manager#open-source-version Open Source version] of your DNS Manager For WHMCS module to unlock these benefits.<br/> Simply click on either the '''Get Source Code''' or '''Upgrade To Lifetime''' button found on the product's page in our client area to complete the one-step upgrade process, with a '''dedicated discount''' already applied.<br/>
 +
 +
Follow a [https://www.docs.modulesgarden.com/How_To_Upgrade_WHMCS_Module comprehensive guide] covering the transition process, the advantages it brings, and step-by-step instructions on what to do next after the order has been successfully finalized.
 
|}
 
|}
  
Line 2,160: Line 2,374:
 
|}
 
|}
 
{|
 
{|
|style="padding: 0px 0px 5px 15px;"|3. In case you cannot see any zone records in your client area after import or migration actions, then disable cache for the DNS server.<br/>
+
|style="padding: 0px 0px 5px 15px;"|3. In case you cannot see any zone records in your client area after import or migration actions, then disable the cache for the DNS server.<br/>
 
:To do so, edit the '' 'General' '' section of the server.
 
:To do so, edit the '' 'General' '' section of the server.
 
|}
 
|}
Line 2,181: Line 2,395:
 
|}
 
|}
 
{|
 
{|
|style="padding: 0px 0px 30px 15px;"|7. Error: "Message: API failure: (XID 2ugbb6) You do not have access to a domain named “domain.tld”."<br/>
+
|style="padding: 0px 0px 5px 15px;"|7. Error: "Message: API failure: (XID 2ugbb6) You do not have access to a domain named “domain.tld”."<br/>
 
If you encounter the above error for a zone associated with a cPanel server, it means that you need to set '''root user permissions''' for the token that is used in the cPanel submodule configuration.
 
If you encounter the above error for a zone associated with a cPanel server, it means that you need to set '''root user permissions''' for the token that is used in the cPanel submodule configuration.
 
|}
 
|}
 +
{|
 +
|style="padding: 0px 0px 30px 15px;"|8. Problem: The DNS Manager button in the client area menu with the Lagom Client Theme is missing.<br/>
 +
Solution: Use the [https://lagom.rsstudio.net/docs/menu-manager/ Lagom Client Theme addon] to manually add the missing item to the menu via the menu manager.
 +
|}
 +
 
<!--{|
 
<!--{|
 
|style="padding: 0px 0px 30px 15px;"|7. In case you have encountered issues with setting up an invalid zone type with the '''"Allow Update Of Existing Zone"''' option enabled,<br/> please use the '''"linkedZonesFixer"''' argument in the cron command to overcome the problems that have arisen.  
 
|style="padding: 0px 0px 30px 15px;"|7. In case you have encountered issues with setting up an invalid zone type with the '''"Allow Update Of Existing Zone"''' option enabled,<br/> please use the '''"linkedZonesFixer"''' argument in the cron command to overcome the problems that have arisen.  
Line 2,191: Line 2,410:
 
  If after successful installation in your client area you receive the following or similar error:
 
  If after successful installation in your client area you receive the following or similar error:
 
  Fatal error: main() [function.require]: Failed opening required '/var/www/html/client/templates/dns_templates//lang/english.php'<br />(include_path='.:/usr/share/pear:/usr/share/php') in /var/www/html/client/templates/dns_templates/dns_controller.php on line 0
 
  Fatal error: main() [function.require]: Failed opening required '/var/www/html/client/templates/dns_templates//lang/english.php'<br />(include_path='.:/usr/share/pear:/usr/share/php') in /var/www/html/client/templates/dns_templates/dns_controller.php on line 0
That means that you have forgotten to configure and save processing of your addon. Tutorial on how to configure processing you can find [[#Configuration of processing|here]]<br />
+
That means that you have forgotten to configure and save the processing of your addon. Tutorial on how to configure processing you can find [[#Configuration of processing|here]]<br />
 
This was fixed in DNS Manager 1.6
 
This was fixed in DNS Manager 1.6
 
|}
 
|}
 
{|
 
{|
|style="padding: 0px 0px 5px 15px;"|3. Access denied error on Test Connection it's a bug which might appear with dns only servers OR banned IP in cphulk.<br />
+
|style="padding: 0px 0px 5px 15px;"|3. Access denied error on Test Connection it's a bug that might appear with DNS-only servers OR banned IP in cphulk.<br />
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.
+
If you are sure that the details are correct, please ignore this error and try to create/terminate the zones to see whether the connection is working.
 
|}
 
|}
 
{|
 
{|
|style="padding: 0px 0px 10px 15px;"|4. If you see a blank page right after installation process please make sure that you configured and saved processing options.
+
|style="padding: 0px 0px 10px 15px;"|4. If you see a blank page right after the installation process please make sure that you configured and saved processing options.
 
|}
 
|}
 
{|
 
{|
|style="padding: 0px 0px 5px 15px;"|5. 4PSA platform is very specific therefore it can cause some problems with DNS Manager. You may encounter problem with file privileges.<br />
+
|style="padding: 0px 0px 5px 15px;"|5. 4PSA platform is very specific therefore it can cause some problems with DNS Manager. You may encounter problems with file privileges.<br />
 
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.<br />
 
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.<br />
 
To fix it you can create this directory on your own and set chmod 777 privileges. Afterwards try to connect and check whether the directory was created.<br />
 
To fix it you can create this directory on your own and set chmod 777 privileges. Afterwards try to connect and check whether the directory was created.<br />
Line 2,228: Line 2,447:
 
|}
 
|}
 
{|
 
{|
|style="padding: 0px 0px 5px 15px;"|10. If after install, you will get an ionCube encoder problem (wrong version), please open a support ticket.<br />
+
|style="padding: 0px 0px 5px 15px;"|10. If after installation, you will get an ionCube encoder problem (wrong version), please open a support ticket.<br />
We will provide you with different version of the module encrypted with the older version of ionCube.
+
We will provide you with a different version of the module encrypted with the older version of ionCube.
 
|}
 
|}
 
{|
 
{|
Line 2,239: Line 2,458:
 
|}
 
|}
 
-->
 
-->
 
Seeking a solution that offers greater flexibility, customization tailored to your precise needs, and unrestricted availability?<br />
 
There is an option that not only offers cost-effective long-term maintenance but also includes prioritized support services, making it a truly valuable investment.<br />
 
Opt for the Open Source version of your DNS Manager For WHMCS module and unlock these benefits.<br />
 
Simply use either the Get Source Code or Upgrade To Lifetime button found on the product's page in our client area, and proceed as you would with a standard order, but with a dedicated discount already applied.<br />
 
Follow a comprehensive guide covering the transition process, the advantages it brings, and step-by-step instructions on what to do next after the order has been successfully completed.<br />
 

Latest revision as of 11:53, 11 September 2024

Updating your DNS Manager For WHMCS module to version 3.4.0? Please remember to reissue your license to ensure proper functionality and avoid any interruptions.
We are sorry for the inconvenience caused.


Contents

[edit] About DNS Manager For WHMCS

DNS Manager For WHMCS is an end-to-end module that enables your customers to be in charge of their DNS zones.

Thanks to a wide variety of submodules, combined with options allowing you to prepare ready packages, your DNS Manager For WHMCS is there for you to surely meet your expectations.
As an administrator, you have full control over DNS zones and possess access to a broad range of management options.

The Wiki page for DNS Manager For WHMCS 2.x can be found here.

  • Admin Area Features:
✔ Define DNS Servers
✔ Define Packages
✔ Create DNS Zones
✔ View And Edit Existing Zones
✔ Add And View DNS Slave Zones
✔ Lock/Unlock Zones From Edition By Clients
✔ Migrate Zones Between Chosen Servers
✔ Import Zones From Chosen Server
✔ Export Zone To TXT File In BIND Format
✔ Auto-Synchronize Zones And DNS Records Between Multiple Servers
✔ Manage Zones Backups
✔ Define, Manage And Duplicate DNS Records Set
✔ Apply DNS Record Sets To Multiple Zones At Once
✔ Wipe Existing Zone Records Upon Applying DNS Records Set
✔ Set Up Automated Tasks And Execution Time
✔ Toggle Administrator Notifications And Choose Who Send Them To
✔ Modify Notifications Email Templates
✔ Allow Creation Of PTR Record Without DNS Zone
✔ Protect DNS Zones On Product Termination
✔ Manage Client Area Zones Features:
✔ Select Default Template
✔ Toggle DNS Management Link
✔ Choose Scope Of Zones Management:
✔ Allow DNS And rDNS Management
✔ Allow Only DNS Management
✔ Allow Only rDNS Management
✔ Allow Domain/Products/Addon/Other Items Zones With:
✔ Only That Domain
✔ Only That Product Domain
✔ Only Domains From Owned Domains Items
✔ Only Domains From Products Items
✔ Only Domains From Both Owned Domains And Product Items
✔ Any Custom Domain
✔ Exclude Used Domains From Zone Creation
✔ Allow Zones With Related Service IP Addresses Only
✔ Allow Zones With Custom Subnet IP Addresses
✔ Allow rDNS With Custom IP Address
✔ Allow DNS With Custom IP Address
✔ Allow Management Of DNS Record Sets
✔ Display Full DNS Record Names
✔ Allow Management Of Zones Backups
✔ Define Zones Backups Limit
✔ Define Time Interval To Refresh Slave Zones
✔ Choose Whether To Display Zone's Product Name
✔ Display Suggested Nameservers From Submodule
✔ Display DNS Manager Button In Services Sidebar Menus
✔ Define Zone Statuses Displayed In Client Area
✔ SOA Warning
✔ Available Domain
✔ Active
✔ Pending
✔ Define Blocked DNS Strings With Regex Support
✔ Define Logs And Notifications Settings
✔ Define Which Zone Actions To Log:
✔ Create/Terminate Zone
✔ Add/Edit/Remove Record
✔ View Details And Notifications Related To Zones And Servers Load
✔ View Information About Automated Tasks
✔ View Scheduled Tasks Progress
✔ Display Usage Of DNS Servers
✔ View Email Notifications Statistics
✔ View Logs
  • Client Area Features:
✔ View List Of Owned Packages
✔ View Domain Status
✔ Add And Manage New Zones Within Package Limit
✔ Add And View DNS Slave Zones
✔ View Zones Limit Per Package
✔ Add And Manage Zones Records Within Records Limits
✔ Export DNS Zone To TXT File In BIND Format
✔ View DNS Records Limits Per Zone
✔ Toggle DNSSEC For Zone
✔ View DNSSEC Details Of Zone
✔ Manage In Bulk
✔ Add/Modify/Delete/List DNS Records
✔ Change DNS Record Sets
✔ Delete Zones
✔ Add And Manage rDNS PTR Records Without DNS Zone
✔ Add, Manage And Duplicate DNS Records Sets
✔ Create Zone From DNS Records Set
✔ Manage Zones Backups:
✔ Create Manual Backups
✔ View Automated Backups
✔ Restore Backups
✔ Preview Zones List In Created Backups
✔ Export To File
✔ Import From File
✔ View Bulk Management Tasks
  • Automation Features:
✔ Provision Packages
✔ Migrate Zones
✔ Import Zones
✔ Clear Unused Zones
✔ Clear Logs
✔ Backup Zones
  • Server Settings:
✔ Allow rDNS Records
✔ Enable DNSSEC
✔ Allow Multiple PTR Records
✔ Use Cache To Optimize Loading Time
✔ Overwrite SOA Record
✔ Populate Nameservers
✔ Define Nameservers
  • Package Settings:
✔ Define Zones Limit Per Package
✔ Define Items (Products/Domains/Products Addons) Purchase Of Which Results In Receiving Package
✔ Define If Single Instance Of Package Should Be Assigned To Each Client
✔ Define Servers Used By Package
✔ Define Allowed Record Types
✔ Define Total Records Limit
✔ Define Record Limits Per Type
✔ Define Default TTL For Records
✔ Define Automation Settings For Creating First Zone
✔ Allow To Create DNS Slave Zones
✔ Assign Default DNS Records Set
✔ Allow Client To Create Zone Using Chosen DNS Records Sets
✔ Introduce DNS Management Functionality If Domain Registrar Does Not Support It By Default
✔ Toggle Client And Administrator Notifications
✔ Define Allowed/Blocked IP Addresses For Zones And DNS Records Creation
  • Supported DNS Servers:
✔ 4PSA
✔ AtomiaDNS
✔ AWS Route 53
✔ BIND 9
✔ CentralNic Reseller (former RRPproxy)
✔ Cloudflare (DNSSEC Support)
✔ cPanel (DNSSEC Support)
✔ cPanel DNSOnly
✔ DigitalOcean
✔ DirectAdmin (DNSSEC Support)
✔ DNS Made Easy
✔ DNS Pod
✔ DNS.com
✔ DynECT
✔ EuroDNS
✔ Freenom
✔ Google Cloud DNS
✔ InterWorx
✔ Nettica
✔ Openprovider
✔ OpenSRS
✔ OVH
✔ Plesk
✔ PowerDNS Hosted
✔ PowerDNS V4 (DNSSEC Support)
✔ Rackspace
✔ Rage4 DNS
✔ Simple DNS Plus
✔ Simple DNS Plus V8 And V9 (DNSSEC Support)
✔ Storm On Demand
✔ Zonomi
  • Supported DNS Record Types:
✔ A
✔ AAAA
✔ AFSDB
✔ ALIAS
✔ ANAME
✔ CAA
✔ CERT
✔ CNAME
✔ DNAME
✔ DNSKEY
✔ DS
✔ HINFO
✔ HTTPRED
✔ ISDN
✔ LOC
✔ MB
✔ MD
✔ MF
✔ MG
✔ MINFO
✔ MR
✔ MX
✔ NAPTR
✔ NEC
✔ NEC3
✔ NS
✔ NSEC3PARAM
✔ PTR
✔ RP
✔ RRSIG
✔ SMIMEA
✔ SOA
✔ SRV
✔ SSHFP
✔ TLSA
✔ TXT
✔ URI
✔ URL
✔ WKS
✔ X25
  • General Info:
✔ Supports IDN Zones
✔ AJAX Loaded Pages In Admin Area
✔ Supports Template Customization
✔ Connect With DNS Manager Using Its API
✔ Integrated With IP Manager For WHMCS - Complete Control And Easy Assignment Of IP Subnets
✔ Fully Integrated With Lagom WHMCS Client Theme
✔ Multi-Language Support
✔ Supports PHP 8.2 Back To PHP 7.4
✔ Supports WHMCS Themes "Six", "Twenty-One" And "Croster"
✔ Supports WHMCS V8.11 Back To WHMCS V8.8
✔ Requires ionCube Loader V13 Or Later
✔ Easy Module Upgrade To Open Source Version

[edit] 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 our client area and download the module.
DNS3 1.png
2. Extract the package and upload its content into the main WHMCS directory.

The content of the package to upload should look like this.

DNS2 2.png
3. When you install DNS Manager For WHMCS for the first time you have to rename the 'license_RENAME.php' file.

This file is located in 'modules/addons/DNSManager3/license_RENAME.php.' Rename it from 'license_RENAME.php' to 'license.php'.

DNS3.png
4. In order to configure your license key you have to edit the previously renamed 'license.php' file.

Enter your license key between quotation marks as presented on the following screen. You can find your license key in our client area → 'My Products'.

DNS4.png
5. In the next step, set up the 'storage' folder as recursively writable.

This folder is available at 'your_whmcs/modules/addons/DNSManager3/storage' .

DNS4 2.png
6. Now you have to activate the module in your WHMCS system.

Go to 'WHMCS Admin Area' 'System Settings' 'Addon Modules' . Afterward, find 'DNS Manager' and activate the addon.

DNS4 3.png
7. In the next step, you need to permit access to this module. To do so click on the 'Configure' button, choose 'Full Administrator' and press 'Save Changes'.
DNS4 4.png
8. Good job! You have just successfully installed DNS Manager For WHMCS! Now in your WHMCS system press 'Addons' then press 'DNS Manager'.
DNS2 6.png

[edit] Configuration and Management

This section has been divided into two main parts to allow full and, at the same time, easy understanding of the whole module functionality.
In the first part 'Basic Configuration' an exemplary flow of basic configuration of servers, through creating packages and then zones management
from both the client and the administrator side has been presented.
In the second part, there are additional settings and tools that can be used while working with DNS Manager For WHMCS.

[edit] Basic Configuration

In the first place we would like to show you the process of configuring your DNS manager in a simple example.
Follow the steps below to see how the process looks like in practice.

Proceed to 'Addons' → 'DNS Manager'. There are several sections, but the one you should be interested in the most, in the beginning, is named 'Servers'.
You will find it under the 'Settings' tab.

[edit] Server Configuration

To start your work, add a new server.
DNS4 7.png
To add a new server you must fill out some data to allow connection with it. As an example, we will try to connect with a cPanel server.
Additionally, you may declare here whether you need rDNS, Multiple PTR, or Cache. Select the desired options.

Please note, that there is also an option Enable DNSSEC available. However, it is currently compatible only with CloudFlare, cPanel, DirectAdmin, PowerDNS V4 and Simple DNS Plus V8 And V9 submodules.
DNSSEC (DNS Security Extensions) - allows enabling validation and authentication of the origin and integrity of DNS data.
If you enable this option, the client will be allowed to turn on DNSSEC for a zone and display its DNSSEC-related details accordingly.

DNS4 8.png
If you want to have the nameserver records populated each time a new zone is created, make sure to check the Populate Nameservers option.

A similar scenario applies to the Overwrite SOA Record checkbox which stands for automatically assigned nameservers in the SOA record.

DNS4 8 1.png
Once you have chosen a server from the dropdown menu, 'Configuration' and 'Nameservers' tabs appear.
Enter your username, password, Hostname/IP, and any other details needed to connect successfully.
Now, press 'Nameservers' and enter the nameservers that will be visible for your customers in their client area.

Remember to save the changes when ready.

DNS4 9.png
Please also note that the configuration differs per selected submodule.
DNS4 9 0.png
DNS4 9 1.png
Now, that you have servers on the list, you may manage them. Turn it on/off by changing their status (1.), edit (2.), test connection (3.) and delete (4.).
DNS4 10.png

[edit] BIND 9 Configuration

DNS Manager For WHMCS offers solutions not only for remote DNS servers, but it can also support your own DNS server created using BIND 9.

Please note that currently DNSSEC for BIND 9 is not supported yet.

In this part, we will show you an exemplary BIND 9 configuration.
Firstly, go to the 'Servers' section in the 'Settings' tab, click 'Add Server' and select 'Bind9' module.

DNSBind9 1.png
Now, move to the 'Configuration' tab and provide essential data to your BIND 9 server configuration.

The 'Path To Bind9 Config Directory' filed is used to locate the BIND 9 'named.conf.local' configuration file.
Please remember that all paths presented on the screens below are only an illustration and you need to adjust to directory paths on your own BIND 9 server.
The module should also have permissions set to access these directories.
Thanks to the provided backup paths, you can also easily revert a backup copy in case of any breakdown so it is extremely important to carry out the configuration properly.
Also, note that the module can create a large number of backup files within a newly created 'zones' directory based on the provided path.

Important: Remember that paths to 'Bind9 Config Directory' and 'Backup Directory' should start with / and be absolute.

DNSBind9 2.png
Another obligatory step to set up is 'Nameservers' . Fill in at least one nameserver and its IP address.

Do not also forget to save the changes.

DNSBind9 3.png
Once the configuration has been established successfully, you can test your connection, and view your ready server which can be easily managed here.
DNSBind9 4.png

[edit] Management of Packages

Packages - these are collections of settings related to the products for sale.
Thanks to these, the client will be allowed to create specific zones and will possess access to DNS Management in the Client Area.
Click 'Add Package' to see how to configure it and what exactly can be specified there.
DNS 11.png
DNS 11 1.png
1. In the 'General' section you have to:
  • name the newly created package
  • define the number of zones per item (limit of zones that a client may then create within this package)
  • decide if you allow creating slave zones
    Important: The module allows the creation of two types of DNS zones, master and slave ones:
    Primary (Master) DNS zones – it is a holder of the original zone file (all the DNS records for the zone). You can manage a host through this zone.
    Secondary (Slave) DNS zone – it holds a copy of the zone file. You can use them for better performance, for hiding your primary zones, for backups and redundancy.

2. Here, you can also decide if zones should be created automatically after defined actions.
These are:

  • New Item - zones will be created automatically for every new product being activated
  • Pending Domain Transfer - zones will be automatically created for the domains during their transfer:
    • Before - a new zone will be created right before launching the transfer to the registrar
    • After - the transfer occurs first, and only if it ends successfully a new zone is created
  • Pending Domain Registration - zones will be created automatically for newly registered domains
    • Before - a new zone will be created shortly before sending a registration request to the registrar
    • After - a new zone will be created once the status of the registration request is received from the registrar
  • Domain with DNS Management - zones will be created automatically for domains that have been ordered with the 'DNS Management' domain addon
  • Existing Zone Update - if a zone already exists, it will be updated with newly added record sets

3. Define the maximum, allowed limit of records.

4. Choose DNS Record Sets that will be applied to this package.

  • Default DNS Record Set - this default set will be automatically applied upon the zone creation
  • DNS Record Sets - choose the sets created by the administrator that will also be available for clients to choose from when adding a new zone
DNS4 12.png

[edit] Items

Assign Domains, Products or/and Product Addons from available ones to the package. Here you can also allow clients to create their own free zones.

Simply select the option under the 'Other' section. Remember that you may use this option for one package only.

DNS4 13.png

[edit] Servers

Assign the package to the previously added server.

Note: You may always assign the package to more than one server.
Due to extra synchronization, you may select which server will be marked as 'Master Server '.
As a result, once you modify the 'Master Server' and run cron commands, all performed changes (such as adding, deleting new records etc.) will be implemented to other servers as well.

DNS4 14.png

[edit] Records

In this part, you may define the record types that you want to enable and declare their limit.

Note: The 'Total' value cannot be lower than the sum of limits set for individual records.

DNS4 15.png

[edit] Notifications

Here, you may configure which notification will be sent to clients and administrators.
DNS4 16.png

[edit] Registrars

In this part, you may allow the 'DNS Management ' option for selected here registrars that do not support DNS management by default.
DNS4 15 1.png
Please note that the inbuilt WHMCS DNS Management will be used to handle the above functionality.
DNS30 15 2.png

[edit] IP Management

In the last part, you can specify which IP addresses can be used by your clients while creating a package. If you do not provide anything, clients can use any IP address without any limitations.
The 'IP Addresses Blacklist' section allows you to ban IP addresses. This will prevent users from using specified IP addresses.

Remember to save the changes when the package configuration is ready.

DNS4 16 1.png
Enable the newly created package to allow it to be used.
DNS4 17.png

[edit] Client Area

In order to take advantage of the brand new management page in the client area, you need to allow access to the DNS Manager addon.
Navigate to 'Addons' → 'DNS Manager' → 'Settings' → 'Global Settings', and enable 'DNS Management Link.' This will enable a 'Manage DNS' button in the Client Area.
DNS3 0.png

[edit] DNS Management in Client Area

Now, that we already have the module configured you may see how clients will add and then manage their zones.
In the client area find the button 'Manage DNS', it will redirect you to the management page.
DNS30 1.png

[edit] Zones

In here, clients may add new zones. To do so, simply type in the name of the zone and choose the IP address from the available or enter your custom IP.
It depends on your configuration - read more about possible options here.
From the dropdown menu clients can also define record sets. If they do not have any added, the default one created by the administrator in the admin area will be selected.
When clients create sets by themselves, they can use the one defined by them as default, or choose another from the list.
DNS30 2.png
Standard list view of DNS Zones:

Note: You can turn on this mode in the 'DNS Manager addon' → 'Settings' → 'Global Settings' → 'Other' → 'Zones Single Table View'.

DNS4 30 0.png
The module gives you the possibility of creating two types of zones. These are master zones and slave zones. For more info please read this section.

Form to create a master DNS zone:

DNS30 3.png
If you wish to create a slave zone, this is how the form will look like:
DNS4 30 5.png
Allowed actions on a zone:
  • edit an existing zone
  • delete zone
DNS30 4.png
Press 'Edit' to see details of the zone, you may edit the zone here and add new records if limits allow you.
DNS30 5.png
Enter a new record's name, choose the type from available, etc.
DNS30 6.png
In the case of slave zones, press the dedicated icon (2.) to only view the zone records list.

You may force the slave zone to refresh by pressing the button (1.) - related to slave zones on servers other than PowerDNSv4.
A new task will be added to the queue and the zone will be refreshed with the setup time interval.

DNS30 6 1.png
[edit] DNSSEC
If the 'Enable DNSSEC' option has been selected ('CloudFlare', 'cPanel', 'DirectAdmin', 'PowerDNS', 'PowerDNS V4' and 'Simple DNS Plus V8 And V9' submodules), the client may turn it on.

To do so, navigate to 'Additional Actions' → 'DNSSEC'.

DNS30 7.png
Enable DNSSEC here, you will then get access to DNNSSEC details for the zone, including keys and delegation signer records.

Press 'Rectify Zone' to comply with DNSSEC.

DNS30 8.png

[edit] Bulk Management

Under this section you may manage numerous DNS zones. Select at least one zone on the list and press the 'Choose Action' button.
There are six allowed actions that can be performed on zones.

Allowed actions:

  • Add Record
  • Modify Record
  • Delete Record
  • List Records
  • Change Record Set
  • Delete Zones
DNS30 9.png
DNS30 10.png
Add Record - define the newly created record type, name, TTL, and address.
DNS30 11.png
List Records - search for records manually by typing in exactly what you need or enable 'Regular Expression' to broaden your search results.
Use regex syntax, for example:
  • /abc/ - all records including "abc" string (lower case only)
  • /[\d]+/ - all records including numbers
  • /^www/ - all records that start with "www" (lower case only)
  • /\.com$/ - all records that end with ".com" (lower case only)
  • /[abc]/i - all records that include "a," "b" or "c" letters (lower or capital case, any position)
DNS30 14.png
Modify Record - you may modify existing records. Search for records manually by typing in exactly what you need or enable 'Regular Expression' to broaden your search results.
Use regex syntax, for example:

Search: /(\d+)abc/i
Replace With: def$1

The above example will result in exchanging all records that include a string of numbers followed by abc letters to a 'def' phrase with the same string of numbers:

phrase2137abc → phrasedef2137
DNS30 12.png
Delete Record - select the record type and specify which records shall be deleted. Enter specific data or use regular expressions.
DNS30 13.png
Change Record Set - choose a new record set. You may enable the 'Wipe Records' option to clear the selected zone at the same time.
DNS30 13 2.png
Delete Zones - remove all the selected DNS zones.
DNS30 13 3.png

[edit] rDNS

If you have allowed the rDNS management in the client area by selecting either 'Allow DNS And rDNS Management' or 'Allow Only rDNS Management' option (read more here) in global settings,
your clients can create PTR records for IPv4 and IPv6 addresses without any related zone. To do so, press 'Add PTR Record'.
DNS3 50.png
Select the related item, then depending on the configuration enter the IP address or choose IP or Subnet from the available list.

Note: Subnets are available only if you have integrated your DNS Manager with IP Manager For WHMCS - see below options for more details.

DNS3 51.png
Your newly created rDNS record should appear on the list. You may edit RDATA or delete the record completely.
DNS3 52.png

[edit] Record Sets

You can add and manage records sets in the 'Record Sets' section as shown below.
DNS3 53.png
Click the 'Add Record Set' button and provide the necessary details.
It can be also set as default.
DNS3 55.png
Your newly created DNS record should appear on the list. You may edit the record set, edit general record set data, or duplicate or delete it completely.
DNS3 56.png

[edit] Backups

Backup Tasks

You can manage fully your zone backups. Move to the mentioned section to see any options.
Note that this option must have been previously allowed by your administrator in general settings. Press the 'Create Backup' button to start.

DNS3 57.png
A new task is added immediately. Now, all you need to do is edit the added backup task and select the zones from available that will be processed and stored in a backup file.

Press the 'Create Zones Backup' button when ready.

DNS3 58.png
DNS3 59.png
The just-added task to back up the zones is now visible on the list of all tasks. There is also information on the task progress and number of zones already processed.

To see details, press the 'Show List' button.
Important: Keep in mind that you must wait until the next execution of the "Cron Importer" to start processing. If it is set to more than 5 minutes, you will not see the results on the run.

DNS3 60.png
Manual Backups List

Here you will find a list of all files with a number of backed-up zones. In order to upload a ready backup file, simply press the 'Upload File' button.

DNS3 62.png
Select the file from your store, keep in mind that only the previously downloaded backup files can be used.
Surely, such a file can be edited in any editor to adjust the records inside it to your needs, but you must be careful and stick to its form.
DNS3 63.png
Use the action buttons to start the tasks:

1. - Show Backup File Content
2. - Download the file.
3. - Restore backup file. This action, when stared, is also visible on the list of tasks above.
4. - Delete the file.

DNS3 64.png

[edit] Tasks

You will find a list of current tasks in 'Tasks' section.
Among all tasks there are import tasks, migration, and synchronization tasks.
DNS3 65.png
According to specifically set-up cron jobs all created tasks are regularly executed. Here, you can see the current status of each task.
If it is queuing for the next cron run, is currently executed, aborted, or complete. Check when they were executed for the last time (Last Execution) and when the task was added.
Available actions: call execution manually and remove the task.

[edit] Zone Management

In the administrator panel, you can spot all your client zones. You are free to preview those already existing.
You will see whose zone it is, its type, on which server it is created, and its status (created/deleted).
DNS4 21.png
You can always add a new custom zone directly for your client from your admin area.

To do so, press the button marked on the screen below.

DNS4 121.png
Now, you are required to fill out the visible fields.
DNS4 122.png
If you select a service that is in a package with the allowed option to create slave zones, a dedicated switcher will appear.

Important: The module may create two types of zones, master and slave ones. Master type zones are created on DNS servers and the records are synchronized via AXFR protocol by itself.
In the case of slave zones, the module creates a slave zone on DNS servers and that is the DNS server that performs the synchronization.
("PowerDNSV4" only, in the case of other servers like "cPanel", you have to manually force the synchronization).

DNS4 122 0.png
Note that both the admin and client area allow the user to apply a record set to a single or to multiple zones.
DNS3 122 1.png
DNS3 66.png
Actions on zones from the admin area:
  1. Change Related Item - choose one of the available items from a dropdown menu and save changes
  2. Edit DNS Zone Records- modify existing records or add new ones
  3. Add DNS Zone - use this button to create a zone on the server
  4. Import DNS Zone From File - choose a file from which zones will be imported
  5. Export DNS Zone To File - choose a file to which zones will be exported
  6. Export DNS Zone To TXT File In BIND Format - a TXT file will be saved just after pressing the button
  7. Lock/Unlock DNS Zone - if you lock a zone, it will not be possible to edit this zone in the client area
  8. Delete DNS Zone - if you use this button, the zone will be deleted both from WHMCS and from the server
  9. Remove DNS Zone From WHMCS - zone will still be available on the server
  10. Refresh Slave Zone - press this button to manually add the task to the queue and force refreshing a slave zone via AXFR protocol (slave zones created on servers other than PowerDNSv4)
  11. View DNS Zone - press to see a list of records; you may also refresh the slave zone from this level (slave zones only)
DNS4 22.png

[edit] Additional Tools

[edit] Global Settings

This section has been designed to allow quick and simple configuration of global settings from one place.
DNS4 27.png

[edit] Templates

Choose a default template that will be used in the client area.

If you have more than one template then you may allow your clients to switch between them.
Decide whether you wish to use a ready-configured redirection to the DNS Management page in the client area.

DNS4 28.png

[edit] Logs And Notifications

In this part, you may impose when log entries and notifications should be removed from the system database.
If you wish you may also check the 'Log Successful Actions' option to store all entries in logs (DNS Manager → Settings → Logs).
'Log Zone Actions' - select single actions on zones, logs on them will be stored in the module as well.
DNS4 32.png

[edit] Slave Zones

The following section is dedicated to the created in the module slave zones on servers other than PowerDNSv4 (in its case, the slave zones are refreshed automatically).

Here, you may define the time interval at which the slave zones will be refreshed and their information synchronized with a remote DNS master server using the AXFR protocol.
Note that the time is measured in hours.

DNS4 33 1.png

[edit] Other

The box with 'Other' options available is a crucial part of the configuration where you can manage IP Manager For WHMCS module and manage PTR records creation.
Besides, here you can switch off the guide with simple instructions visible on the dashboard.
DNS4 62.png
1. Client Area Management - depending on the configuration, the client has access to:
  • DNS And rDNS Management - give your clients full access to DNS management in the client area.
  • rDNS Management Only - create PTR records for IPv4 and IPv6 addresses without a related zone.
    If this option is enabled your clients will be only allowed to add reverse DNS with no zone related. Other sections are blocked
  • DNS Management Only - the 'rDNS' tab will be blocked for the client
2. Domain/Product/Addon/Other Item Options - restrict clients to manually create zones using the indicated domains only.
  • Allow Only That Domain
  • Allow Only That Product Domain
  • Allow Only Domains From Domains Items
  • Allow Only Domains From Product Items
  • Allow Only Domains From Domains And Product Items
  • Allow Custom Domain
DNS2 67 1.png
3. Exclude Used Domains From Zone Creation - select to exclude the already used domains from the possibility of being used again in a newly added zone
DNS3 67 3.png
4. Related Service IP Addresses Only - create zones and PTR records with a related IP address only.
When adding a new zone/PTR record you can choose from available hosting-related IP addresses only as marked on the screen below.
DNS3 67 0.png
5. Custom Subnet IP Address - create zones and PTR records with an IP address included in a subnet related to the product.

Note: This option works only if you have integrated your DNS Manager with IP Manager For WHMCS.

DNS3 67 1.png
5. rDNS Custom IP Address - create PTR records with a custom IP, and enter a new IP address to create a new PTR.
Note: Both IPv4 and IPv6 are supported by DNS Manager For WHMCS.
DNS3 68 1.png
6. Custom IP Address - create zones with a custom IP address. If you have no IP addresses to choose from, you have to enter a new IP address.
Note: Both IPv4 and IPv6 are supported by DNS Manager For WHMCS.
DNS3 67 2.png
7. Client Area Record Sets - clients may manage DNS record sets.
DNS3 69 1.png
8. Client Area Backups and Client Area Backups Limit - clients are given the option to create backups of their zones and upload backup files.
It is advised to set a limit on the number of allowed backups. Default '-1' indicates unlimited
DNS3 69 2.png
9. Protect Zones On Product Termination - zones are not automatically deleted once the product has been terminated.
10. Show Product Name - a full product name is shown, instead of the general type with an order number.
DNS3 69 4.png
11. Show Nameservers - submodule nameservers will be displayed in the 'Edit Zone' section of the client area.
DNS3 69 5.png
12. Show DNS Manager Button - the 'DNS Manager' button will show up in the sidebar section of products which have zones created.
Thanks to this button you can easily move to the 'Edit Zone' section.
DNS3 69 6.png

[edit] Notifications

In this part, set which notification should be sent to clients and which to the administrator. Select the ones that interest you.

Press 'Modify' and you will be quickly redirected to the email template page where you can adjust it to your needs.

DNS4 29.png
Use the 'Exclude' button to specify domains, products, and addons that the zones assigned to them will NOT be included in notifications.
DNS4 30.png
Use the 'Include' button to specify which admin users will receive notifications.
DNS4 31.png

[edit] Client Area Zones Status

Checking the selected boxes will result in an additional status concerning a given domain in the client area.
DNS4 31 1.png
Pressing the Modify button next to a given option will cause a new window to appear where you can set up your own custom status by means of HTML.

Your new description can include the {$domain} variable which will give the domain address back in the status message.

DNS4 31 2.png
You can see an example status on the screen below.
DNS31 3.png

[edit] Record Sets

Create ready made sets of DNS records. You will find them in 'Settings' → 'Records Sets'.
Press 'Add Set' to create a new one.
DNS3 23.png
Enter the newly created set name.
DNS3 24.png
Once your new set appears on the list, you may edit that set in order to create records. Press 'Edit Record Set' to continue.
DNS3 24 1.png
List of records will appear. Please use the 'Add Record' button to continue.
DNS3 25.png
Now, fill out the data as required.

Note: You may add adequate variables for domain and IP address and then these fields will be automatically changed to domain/zone IP when this record set is used.
For example, if you have the 'example.com' domain with '123.123.123.123' IP address all you have to do is add the following variable to the DNS Record Set:

  • {$domain} - will return full 'example.com' domain address
  • {$domainname} - will return only 'example' name
  • {$domainextension} - will return 'com' extension
  • {$ip} will return the '123.123.123.123' IP address; that can be:
    • IP address assigned to the domain by a client, provided while creating a zone
    • hosting dedicated IP address
    • WHMCS server address provided it is a hosting
  • {$serverhostname} - will return the DNS server address or its IP address, depending on which one has been provided in the module's DNS server configuration in the admin area,
    e.g.: yourdnsserver.com or 12.23.34.45
  • {$ns1}, {$ns2}, {$ns3}, {$ns4} and {$ns5} - will return the addresses of the global nameservers specified in the order basing on the sequential number of the corresponding data in the variables
  • {$serverassignedipX} – allows you to use 'Assigned IP Addresses' from another server configuration ( WHMCS → System Settings → Servers).
    Important! You need to replace X with a number. For example: If you provide {$serverassignedip1} in the DNS Record Set, the first address from the 'Assigned IP Addresses' section will be used.
DNS3 25 1.png
Created DNS Records Sets can be then used while preparing ready packages, as it was described.
Ready-made sets allow much faster and more personal configuration of packages.
There is also the possibility of duplicating the selected DNS Record Sets.
DNS3 26.png

[edit] DNS Blocked Strings

Proceed to Settings → Blocked Strings now.

In this section, you may define a list of words that will not be allowed to be used while creating DNS and rDNS records.

DNS4 32 1.png
In order to add certain words, simply type them in the adequate box.

Allowed formats:

  • each word in a new line
  • space separated
  • coma separated
  • coma with space separated


Allowed regular expression options:

  • test* - all expressions that begin with a 'test' word
  • *test - all expressions that end with a 'test' word
  • rec...ord - three dots inside will block all expressions with any three signs inside a word
  • rec*ord - an asterisk inside will block all expressions that begin with a 'rec' and end with a 'ord' as in example


You may create a separate list for DNS records and another one for rDNS or create one shared list for both of them.
In the latter case just select the 'Use same values as for DNS' option like on the screen below.

DNS4 32 2.png
At the very bottom, you may also create a list of clients who will be excluded from the above restrictions.

All the other clients will have to follow the 'Blocked Strings' rule. Remember to save the changes in the end.

DNS4 32 3.png
In practice, when a client will be trying to create a record using one of the forbidden words, the action will be blocked.
DNS3 32 4.png

[edit] DNS Manager Logs

This section helps you keep track of all the activities carried out in DNS Manager. Find them here: 'Settings' → 'Logs'.
DNS4 60.png

[edit] DNS Manager Tasks

Check the list of current tasks.

Use the cron tasks to delete all tasks with the 'Finished' or 'Canceled' status:

php -q /yourwhmcs/modules/addons/DNSManager3/cron/cron.php JobsCleaner --clean
DNS4 60 1.png

[edit] Cron Jobs

In order to manage your cron job tasks proceed to 'Tools' → 'Cron'.
Here, you will find five information boxes, each one responsible for the management of a separate cron task.
These are: migration, import, synchronization, cleaner, and backup.
DNS 33.png
At the very top, there is an info box with general cron details, such as the recommended time interval of a cron execution (5 minutes is suggested).
The last execution time and run-time period are listed below. (Keep it as frequent as possible.)

Note 1: The module cron will delete finished/canceled tasks each run.
Note 2: The module cron is separate from the WHMCS daily cron, which for the purposes of the module only deletes joblogs and finished/canceled tasks after 30 days have passed.

DNS2 34.png

Migration Cron - responsible for calling added tasks to migrate zones between servers.
Choose an interval and declare how many zones can be migrated during a single execution.

Import Cron - responsible for calling added tasks to import zones from an external server to WHMCS.
Choose an interval and declare how many zones can be imported during a single execution (Admin and Client backup tasks).
Select the option to automatically check recognized records to perform the import much faster.
Mark Active Users/Services and only such will be imported.
Import Priority - decide whether these should be services that will be assigned to a client firstly ('Services, Domains' sequence) at Related Items or domains if selected the other way round.

Synchronization Cron - this cron job is responsible for regular synchronization of created zones.
Choose an interval and declare how many zones can be synchronized during a single execution.
Note: When NS records are inconsistent with nameservers set in the server configuration, this cron job also deletes the zones.

DNS 35.png
Cleaner Cron - this option is a little bit more complex. Just like in case of other cron jobs, firstly choose an interval and declare how many zones should be cleared
during a single execution. Then you may specify the conditions of clearing zones and records.

Warning: By default, the cron job is disabled and the 'Notify Only' option is enabled.
You will need to change these settings manually if you would like to have the zones removed.
What is more, when the cron is enabled and the 'Notify Only' feature disabled, the module will send the warning about the zones deletion as an additional layer of safety.

Define which zones get removed:

  • Excluded from Package - if no longer match with any package.
  • Unmodified for - have not been modified for a specified period.
  • Missing in WHOIS - their domain is not found in WHOIS Lookup.
  • Without Records - no chosen records are included.
  • Inactive Services - with canceled, terminated and/or suspended status.
  • Inactive Domains - with canceled and/or expired status.

Decide for which of the following services, the PTR Records should be removed:

  • Terminated Services
  • Cancelled Services
  • Suspended Services
DNS 36 1.png
Backup Schedule Cron - in this section, you can schedule your backups. Similarly as previously, complete these fields according to your preferences.
  • Stored Backups Limit - you can set the maximum number of backups that will be stored. If the provided number is exceeded, then the oldest backups will be overwritten.

Important: For this function to work properly, the Import Cron has to be running.
It's also crucial to configure both crons correctly:

  • Backup Schedule Cron cannot queue more tasks, than the Import Cron can handle.

Example:
There are:

  • 100 clients
  • Each client has between 1 and 100 zones
  • Backup Schedule Cron is set to run every 3 hours
DNS 36 2.png
This means the Backup Schedule Cron will create a maximum of 1000 tasks for the Import Cron to handle.

By extension, the Import Cron has to be configured in such a way, to handle those 1000 tasks across 3 hours and still have some leeway for other tasks.
The suggested configuration of the 'Import Cron' here would be:

  • Run every 5 minutes
  • Zones per Execution: 30

This means a maximum of 1080 tasks across 3 hours, which exceeds the potential tasks from the Backup Schedule Cron and leaves some additional space for unrelated tasks.

DNS 36 3.png

[edit] Import

This is an additional tool that allows the import of zones that exist on outside servers to WHMCS. Move to Tools' → 'Import' in your admin panel.
You will find here a list of 'Import' assignments with information on which server they are imported from, total number of already imported zones and the number of all zones, progress of the import task.

To add a new import task press 'Import Zones'.

DNS 37 1.png
Choose a server that you want to import zones from.
DNS 38.png
Now, when the new import task appears on the list of awaiting imports, schedule the action.
DNS 37 2.png
When the schedule is confirmed, preview the list of imported zones to assign a client and a related product to the zone.

To do so, press the button as marked on the screen.

DNS 37 3.png
A list of zones appears, press 'Queue Import' to add zones into the import queue or 'Import Now' to import them immediately.

Select the related client and item in the next window.
If you do not schedule import tasks, regular cron execution will trigger the import.

DNS 37 4.png

[edit] Zone Backup

The 'Zone Backups' section allows you to export your zones to a file and, when needed, easily import them on the server.
DNS3 2.png
To export zone automatically, press 'Export To File', define from which server you wish to export it, and click on 'Confirm'.

Note: Automatic backups will export all zones of every user.

DNS3 3.png
DNS3 4.png
Click on 'Add Export' and define details for the action:
  • Destination Server
  • Source File
DNS3 5.png
Schedule the task. Remember to confirm the action.
DNS3 5 1.png
You can now move to the list of zones. Press the button marked on the screen.
DNS3 6.png
A list of zones appears, press 'Queue Export' to add zones to the export queue or 'Export Now' to export them immediately.
DNS3 8.png

[edit] Tasks

DNS Manager addon 'Tasks' section includes a list of tasks with their current status and allowed actions:
  • View task information details and logs
  • Download Task File (csv)
  • Delete task
DNS3 68.png
DNS3 69.png
DNS3 70.png

[edit] Dashboard

The home page of DNS Manager which can be used to get a quick and clear preview on the crucial parts of the module: added servers with the number of zones created on them,
summary of email messages sent to clients and finally the most important notifications.
DNS2 43.png

[edit] 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 do not know how to create your own Zone Template, you can follow this short guide made by cPanel: Edit Zone Templates Guide
To apply your newly created zone template simply log in to your WHMCS and go to 'Addons' 'cPanel Extended Functions' 'Configuration'.
As a module choose 'cPanel' and enter the name of your zone template in the 'Template' field as shown on the screen below. Remember to save changes.

DNS3 55.2.png

[edit] IP Manager For WHMCS Integration

As it has been mentioned above, some of the options in our DNS Manager For WHMCS are available if you are also using IP Manager For WHMCS simultaneously.
In this section you will learn how to integrate the two products to work together. For more information on the IP manager module configuration please refer to our documentation.

Let us take a look at the IP Manager module first. There you have to create a subnet.

DNS2 70.png
You can do it ether for IPv4 or IPv6 type. DNS Manager For WHMCS supports both types.
DNS2 71.png
When ready, create a proper configuration and assign the required products to it.
DNS2 71 1.png
Assign created subnet to this configuration.
DNS2 71 2.png
Under 'Relations Configuration' → 'Products' define the number of IP addresses that will be allowed for a client.
By default this is only one address.
DNS2 71 5.png
Move to DNS Manager now and create an appropriate package where you declare limits for zones, select the product and allow records types and limits
that will be provided within the purchased service.
DNS4 71 4.png
Now, a client upon purchase of such service may now use assigned IP addresses from the subnet and manage the DNS zones and rDNS zones according to limits specified in the package.
DNS4 73.png
The client may now add PTR records within the related service.
DNS4 74.png
Create zones with IP addresses included in a subnet related to a service in IP Manager.
DNS4 74 1.png
You only need to remember that relevant options must be enabled in the 'Global Settings' section.
DNS4 75.png

[edit] DNS Manager Migrator

If you have been already using DNS Manager For WHMCS, you can migrate data from your current system to the latest version.
To do so, follow the below steps:

1. Activate DNS Manager For WHMCS V2.x.x.
2. Run the following command in your browser or in the console:

your_whmcs_path\modules\addons\DNSManager2\cron\migration.php

3. Follow the steps that you see on your screen now.

Note: It is advised to use your console to do the migration between the previous and the new versions of your DNS Manager in case you have a huge number of zones
(if more than 1000, it is highly recommended).

4. Once the script has run and the migration is complete you need to review the configuration of your servers to alter their naming which is the most important enable migrated servers and packages.
Freshly migrated servers and packages are by default disabled.

Once the migration of zones is ready you can migrate rDNS records.

To do so:
1. Run the command in your browser or in the console:

your_whmcs_path\modules\addons\DNSManager2\cron\ptr_migration.php

2. Follow the steps that you see on your screen now.
3. Your PTR records will be assigned to adequate zones. In case when the pointing domain does not exist, the required zone will be created and added to the client's account (if no other user already has it).
4. Migrated rDNS records are visible on the edition page of its zone as PTR records.

[edit] API Methods

You may access your DNS Manager For WHMCS API. Here is a short instruction on how to do that:

The main required command that has to be used is:

  • 'dnsmanager'

Additionally, you have to define 'dnsaction' with some specific value.
Note: the 'action' parameter is no longer used since the 2.7.0 version due to not being allowed as a method to be executed as external.
These specific values can be:

  • 'getServerList' - returns the list of servers in DNS Manager
  • 'saveRDNS' - allows adding new rDNS record. Additional parameters are required here, these are:
    • 'serverid' - ID of a server
    • 'ip' - IP address that will be used
    • 'clientid' - ID of a client, record will be assigned to that client
    • 'ttl' - value of TTL for record
    • 'rdata' - record's value
  • 'removeRDNS' - allows removing existing rDNS record. Additional, required parameters:
    • 'serverid' - ID of a server
    • 'ip' - IP address that will be used

Exemplary use:

<?php
  // Set Vars
  $command = 'dnsmanager';
  $values = array( 'dnsaction' => 'getServerList', 'params' => array() );
  $adminuser = 'DemoAdmin';

  // Call API
  $results = localAPI($command, $values, $adminuser);
  var_dump($results);
?>

Since the 2.7.0 version, there are new methods available:

  • 'createZone' - creates a zone. Additional parameters are required here, these are:
    • 'action = dnsmanager'
    • 'dnsaction = createZone ' - DNS action, that DNS Manager should execute
    • 'zone_name' - name of the zone being created
    • 'type = 1 or 2' - type of related item. Use 1 for domain or 2 for the product
    • 'relid' - ID of the related item (hosting ID, domain ID)
    • 'userid - ID of user
    • 'zone_ip' - IP address assigned to the zone. If empty, a default IP address will be used
    • 'recordSet' - ID of the DNS Record Set, it can be downloaded from the base, table: ' dns_manager2_setrecord', field: 'setid'

Exemplary use:

$postfields = array(
 'action' => 'dnsmanager',
 'dnsaction' => 'createZone',
 'zone_name' => 'zonename.com', 
 'type' => '1',
 'relid' => '2',
 'zone_ip' => '192.168.56.101',
 'userid' => '1',
 'recordSet' => '2',
);
  • 'updateZone' - updates records of the zone. Use these parameters:
    • 'action = dnsmanager'
    • 'dnsaction = updateZone' - DNS action that DNS Manager should execute
    • 'zone_id - ID of the zone that should be updated (use ID from WHMCS)
    • 'records - array of the records that should be updated (added/changed/removed) if DNS Manager compares these records and add/change/remove the corresponding difference. These are:
      • 'name' - name of the node to which this record pertains
      • 'type' - type of the updating resource record (e.g. MX)
      • 'class' - class node
      • 'ttl' - number of seconds that the RR stays valid (e.g. 14400)
      • 'data' - additional specific RR data

Exemplary use:

$result = localAPI('dnsmanager' ,
    array(
      'dnsaction' => 'updateZone',
      'zone_id' => 2,
      'records' => array(
        array(
          'name' => 'example.website.com',
          'type' => 'A',
          'class' => 'IN',
          'ttl' => '14440',
          'data' => '192.168.56.101',
        ),
        array(
          'name' => 'example.website.com',
          'type' => 'A',
          'class' => 'IN',
          'ttl' => '14440',
          'data' => '192.168.56.102',
        ),
      )
      ),'admin');
  • 'getZone' - returns the zone with records. Use these parameters:
      • 'action = dnsmanager'
      • 'dnsaction = getZone' - DNS action that DNS Manager should execute
      • 'zone_id' - ID of the zone that should be retrieved (use ID from the dns_manager2_zone table)
      • 'zone_name' - name of the zone
  • 'removeZone' - deletes the zone. Use these parameters:
      • action = dnsmanager'
      • dnsaction = removeZone' - DNS action that DNS Manager should execute
      • zone_id' - ID of the zone that should be removed (use ID from WHMCS)

[edit] Use Cases

This section provides exemplary scenarios that demonstrate common use cases and detail how the module's functionalities can be applied in practice.

Review the following scenarios to see practical examples of module usage.

[edit] Offering DNS Management For Ordered Services

Offering your clients a way to manage DNS zones for products they purchase is one of the core features of the DNS Manager For WHMCS module.

First, open the addon and navigate to 'Settings' 'Servers' to configure a server that will be used to handle DNS Zones.
In our case, this will be a cPanel server.
Note: More information on how to configure a server can be found in the Server Configuration section.

DNS4 87.png
Next, navigate to 'Settings' 'Packages' to configure a package.

Enable zone creation on 'New Items' and set up the 'Limits'.
Note: More information on packages can be found in the Management of Packages section.

DNS4 88.png
Include your products and domains under Items.
DNS4 89.png
Select the server prepared in the previous step.
DNS4 90.png
Make sure either (or both) the 'DNS Management Link' or 'Show DNS Manage Button' is enabled under 'Settings' 'Global Settings'.

Note: Detailed explanation of the other settings can be found in the Global Settings section.

DNS4 92.png
Once clients purchase a product with an appropriate TLD in the domain, they can manage its DNS zones.

This option will be available in the client area under 'Domains' 'Manage DNS' or on the product page under 'Actions', depending on the global settings.
Note: More information on the options available to the client can be found in the Client Area section.

DNS4 91.png

[edit] Deploying Backup DNS Server For External DNS Zones

If you would like to create a backup of an external DNS zone, a great way to do that would be to utilize the DNS Manager For WHMCS 'slave zone' functionality.

Follow the instructions below to see how you can do that.

1. Make sure your package allows for the creation of slave zones.

DNS4 93.png

2. Under 'Domains' 'Manage DNS' clients can create a slave zone by clicking on the 'Add DNS Zone' button.

DNS4 94.png

3. Select the related item, enable the 'Slave Zone' toggle, and input the slave zone details. Click on 'Confirm' to create the zone.

DNS4 95.png

[edit] Delivering DNS Zone Management With rDNS For Ordered Servers

Offering DNS zone management along with rDNS for ordered servers is another core feature of 'DNS Manager For WHMCS'.

First, open the addon and navigate to 'Settings' 'Servers' to configure a server that will be used to handle DNS Zones.
In our case, this will be a cPanel server. Make sure to allow rDNS Records at this stage
Note: More information on how to configure a server can be found in the Server Configuration section.

DNS4 96.png
Next, navigate to 'Settings' 'Packages' to configure a package.

Remember to include your product, for example, a Proxmox VM.
Note: More information on packages can be found in the Management of Packages section.

DNS4 97.png
Select the server prepared in the previous step.
DNS4 90.png
Make sure either (or both) the 'DNS Management Link' or 'Show DNS Manage Button' is enabled under 'Settings' 'Global Settings'.

Note: Detailed explanation of the other settings can be found in the Global Settings section.

DNS4 92.png
Once a client purchases the VM with an appropriate TLD in the domain, they can manage its DNS zones.

This option will be available in the client area under 'Domains' 'Manage DNS' or on the product page under 'Actions', depending on the global settings.
Note: More information on the options available to the client can be found in the Client Area section.

DNS4 100.png
Provided the relevant option is enabled in the package settings (step 1), the rDNS tab will be available as well.

Note: More information on rDNS can be found in the rDNS section.

DNS4 101.png

[edit] Using Reseller Account For cPanel Server

DNS Manager For WHMCS can be used not only with the root account of cPanel but also with reseller accounts.

1. First, make sure that the reseller account has DNS-related privileges granted in the WHM panel.

DNS4 78.png
2. Open the DNS Manager addon and navigate to 'Settings' 'Servers' to add a new server or edit an existing cPanel server.
DNS4 79.png
3. Fill in the necessary fields as explained in Servers Configuration.
For the 'Username' and 'User Password' use the reseller credentials and enable the 'Reseller Account' switch.
4. Click on 'Confirm' when ready.
DNS4 80.png
5. All that remains is to change the server's status to 'Enabled'.
DNS4 82.png

[edit] Providing DNS Zone Management For Domains Without It

If you use a domain registrar that does not support DNS management by default, you may use DNS Manager For WHMCS to introduce such an option.

Navigate to 'System Settings' 'Domain Pricing'.
Find the domain you want to use and enable 'DNS Management', then set the registrar that does not support DNS Management under 'Auto Registration'.
You can set its price in the 'Domain Addons' table at the bottom.

DNS4 83.png
Now open the DNS Manager addon, navigate to 'Settings' 'Packages' and prepare a package.

Move to the 'Registrars' tab and select your TLD.
Note: The TLD has to be included in the package under 'Item' first.

DNS4 84.png
When the domain is ordered, there will be an option to include DNS Management as an addon on the order form.
Later on, the option will still be available in the client area under 'Domains' 'My Domains' 'Addons'.
DNS4 85.png
After the option is purchased, the in-build WHMCS DNS Management will be available, just as it would for a registrar that does support DNS Management.
Note: If the function does not seem to work, make sure that you have set up the 'your_whmcs/modules/addons/DNSManager3/app/Legacy/DNSManager2/storage' folder as recursively writable.
DNS4 86.png

[edit] Tips

1. Keep track of your 'pending' and 'progress' 'Tasks' to set an optimum interval time for the task's execution.

For example, set an interval in the way that half of the time the task is set to the pending status.

2. While using the OVH submodule, note that each time a client wants to remove a zone, the administrator will receive an email sent by OVH. Only after its confirmation, a given zone will be terminated successfully.
3. 255 characters in TXT records is a maximum limit for the 'PowerDNS' and 'cPanel' submodules.
4. As this module supports template system, any changes made in the module's template files will be saved after the upgrade process.
5. In case you are using cPanel or cPanel Extended provisioning modules with DNS Manager, it is highly advised to enable the Existing Zone Update option.
Otherwise, the DNS zone will be previously created by the provisioning module, not by the DNS Manager where an error notification on the already existing zone will appear. That will cause such a zone not to be visible on the Zones List.
If the mentioned option is enabled, DNS Manager will fail to check whether the zone already exists and consequently the created by the provisioning module entry will be added to the Zones List.
DNS4 77.png
6. Please note that from the 2.13.0 version of the module, it is obligatory to use a dot at the end of each domain while adding or editing 'DNS Records' and 'DNS Record Sets' .
If you do not provide a dot, the module will double your domain. Take a look at the following examples, on the left side we present what is typed by a client, and on the right side you can see the module’s interpretation:

An exemplary zone name is example.com
@ → example.com.
example.com → example.com.example.com.
example.com. → example.com.
www.example.com. → www.example.com.
www.example.com → www.example.com.example.com.
www → www.example.com.
www. → www.example.com.
www.@ → www.example.com.

7. Now you may use 'API Token' instead of 'API Key' to configure the Cloudflare submodule. Before you generate your 'API Token' in your Cloudflare panel, please remember to set the following read/edit permissions there:
  • User/User Details – Read
  • Zone/Zone – Edit
  • Zone/Zone Settings - Edit
  • Zone/DNS - Edit
8. How to correctly add translations of the DNS server errors into the language file:

Most errors include a string with a domain name, to add a custom error message, you have to replace this string with :domain_word: phrase.
An example of a currently displayed error message:

 RRset A.testdnsipdefault.by. IN CNAME: Conflicts with pre-existing non-CNAME RRset   

In this case A.testdnsipdefault.by. must be replaced with :domain_word:
A correctly generated lang snippet will look as follows:

 $_LANG['addonCA']['dashboard']['errors']['RRset :domain_word: IN CNAME: Conflicts with pre-existing non-CNAME RRset'] = "Some serious problem occurred with :domain_word:";

As a result the below message will be displayed in the module:

 Some serious problems occurred with A.testdnsipdefault.by.

Of course, you may skip the domain name in the final output or add a fully customized error message:

 $_LANG['addonCA']['dashboard']['errors']['RRset :domain_word: IN CNAME: Conflicts with pre-existing non-CNAME RRset'] = "Some serious problem occurred";
 $_LANG['addonCA']['dashboard']['errors']['RRset :domain_word: IN CNAME: Conflicts with pre-existing non-CNAME RRset'] = 'My custom translation';  

If you do not add any translation into the lang file, an original error message will be displayed.

[edit] Update Instructions

The essential guidance through the process of updating the module is offered here.

Ensure successful completion of the module update by carefully following each step, thereby preventing data loss or any unforeseen issues.
Additionally, you will find a current list of supplementary actions necessary for a smooth update process there.

[edit] Migration from V2x.x to V3.x.x

If you want to migrate your DNS Manager For WHMCS to version 3.0, please follow the below steps:
  • Keep both module addons DNS Manager and DNS Manager v3 active
  • Full module configuration is still located in the DNS Manager addon module, your old data are not lost
  • Move to DNS Manager v3 addon module → 'Settings' to enable access to Client Area with support for 'Twenty-One' theme
    • Set up a new cron task (DNS Manager v3 addon module → Settings)
  • Go back to DNS Manager addon module → 'Settings' → 'Global Settings' → 'Client Area Zones Status' and again save the content.
    Note: Entered content might not be correctly displayed in the new client area view, saving the changes will ensure there are no unexpected errors or missing information.

[edit] Migration from V3x.x to V3.4.0

When updating the module to version 3.4.0 keep in mind that:
  • With version 3.4.0 all DNS Manager For WHMCS functionality can be found in one addon.
    The DNS Manager V2 addon can be safely deactivated and deleted after the module update as it is no longer required for module configuration or management.
  • You need to reissue your module license to ensure proper functionality and avoid any interruptions.
  • Database migration will be done automatically after module update, but can also be triggered manually via script:
php -q /yourwhmcs/modules/addons/DNSManager3/cron/cron.php upgrade-3-3-to-3-4

[edit] Migration of Zones

'Migration' is another useful tool that you may use to manage zones efficiently. With this tool, you may migrate zones between servers.

Keep in mind, that if you wish to transfer the relation that exists in the DNS Manager module to the target server, you must select the 'Move Management To Target Server' option.
Otherwise, only the zone will be copied from the original to the target server, the relation to the original server will remain in the module.

Remember that migrated zones are available on both servers now! Migration does not delete zones, just copy them to the new server!

DNS 40.png
To add a migration task, press 'Add Migration', specify from which server you wish to migrate zones, and the target server, as simple as that.

Note 1: Migration does not copy DNS Manager settings, to illustrate: if you are migrating zones that exist in DNS Manager their locations for example are not updated.
Note 2: You can decide if the option of managing zones should be transferred to the target server. To do it, please tick 'Move Management To Target Server'.

DNS 41.png
Schedule the migration. Remember to confirm the action.
DNS 41 1.png
Move to the list of zones to assign clients and products. Press the button marked on the screen.
DNS 41 2.png
Select zones and 'Migrate Zones' for mass migration or use action buttons next to single zones.
DNS 41 3.png

[edit] Upgrade Guide

Seeking a solution that offers greater flexibility, customization tailored to your precise needs, and unrestricted availability?
There is an option that not only proves to be cost-effective in the long run but also includes prioritized support services, making it a truly valuable investment.

Opt for the Open Source version of your DNS Manager For WHMCS module to unlock these benefits.
Simply click on either the Get Source Code or Upgrade To Lifetime button found on the product's page in our client area to complete the one-step upgrade process, with a dedicated discount already applied.

Follow a comprehensive guide covering the transition process, the advantages it brings, and step-by-step instructions on what to do next after the order has been successfully finalized.

[edit] Common Problems

1. When you have problems with connection, check whether your SELinux or firewall does not block ports.
2. jQuery 1.9 is required to work properly.
3. In case you cannot see any zone records in your client area after import or migration actions, then disable the cache for the DNS server.
To do so, edit the 'General' section of the server.
DNS4 81.png
4. Once you have problems with manually created zones for specific domains, along with the 'Subdomain is not allowed' or 'Invalid zone name' error,
make sure to add the .tld that you would like to use to the following file:
modules\addons\DNSManager2\storage\tld.list 
5. In case your backup task started in your client area is not being processed, make sure that your Cron Import job is not disabled or set to a low frequency.
6. Error: "The selected zone is already taken"

Reason 1: A zone with the same name already exists in dns_manager2_zone table (you can also find it on the 'Zones List' in the addon)
Reason 2: Other client is using such domain with a product or has it registered. It is allowed as long as the other client's domain status is: Cancelled, Transferred Away, Fraud or Terminated
Solution: Find the domain in WHMCS and cancel it
Reason 3: Zone already exists on the DNS server (e.g. cPanel)

7. Error: "Message: API failure: (XID 2ugbb6) You do not have access to a domain named “domain.tld”."

If you encounter the above error for a zone associated with a cPanel server, it means that you need to set root user permissions for the token that is used in the cPanel submodule configuration.

8. Problem: The DNS Manager button in the client area menu with the Lagom Client Theme is missing.

Solution: Use the Lagom Client Theme addon to manually add the missing item to the menu via the menu manager.


Navigation
WHMCS Modules
WHMCS Widgets
Translations
cPanel Modules
General
FAQ
Community
DNS Manager For WHMCS