Set Up DNS Services on cPanel – cPanel ready as master DNS server or Add2DNS
cPanel is a Linux based web hosting control panel that provides a graphical interface and automation tools designed to simplify the process of hosting a web site. cPanel utilizes a 3 tier structure that provides capabilities for administrators, resellers, and end-user website owners to control the various aspects of website and server administration through a standard web browser.
cPanel is a commercial web-based control panel for server systems. It can help ease the burden of common system administration tasks such as website creation, database deployment and management, and more. This guide will show you how to set up your cPanel server to serve DNS records. These instructions should be done through your root WHM interface.
In addition to the GUI, cPanel also has command line and API-based access that allows third party software vendors, web hosting organizations, and developers to automate standard system administration processes.
In your root WHM, under the Service Configuration section, click on “Nameserver Selection”. You will be presented with this screen:
You can choose from BIND, MyDNS or NSD; the advantages and disadvantages for each are displayed. If you are unfamiliar with either of them, BIND will be the easiest to work with.
To use your own nameservers (e.g. ns1.mydomain.com, ns2.mydomain.com), you’ll need to create those entries at your registrar first. The process for adding those can vary based on which registrar you are using, so if you are unsure as to how to go about getting these entries set up, you should contact your registrar’s support and ask them how to do so. You’ll also need to add A records for your nameservers on your Linode within WHM. To do that, you’ll want to log into your WHM as root then navigate to the DNS Functions section and click on Edit DNS Zone, which will present you with this page:
Simply click the domain you used when you set up your nameservers at your registrar and click the Edit button to get to the DNS Editor screen. On the DNS Editor screen, you will want to add A records for your nameservers. To do this, you will fill in the spaces at the bottom of the screen like so:
Just make sure you use your own Linode’s IP address. You can add more than two nameservers if you like.
Using Linode’s DNS Manager as a Slave
When using your BIND install on cPanel as your master nameserver and the Linode DNS Servers as a slave, you will want to set all of the nameservers at your registrar. You should have a list like this:
The DNS changes can take up to 48 hours to propagate.
To get your cPanel Linode ready as your master DNS server, you’ll need to make a few additions/edits to your
The transfer of DNS records from your Master DNS server to the Linode DNS servers is done through AXFR queries. By default these are not allowed.
First open the
/etc/named.conf file in your text editor and search for the following line:
- 1recursion no;
You will need to change it to:
- 1recursion yes;
After you make that edit, add these two sections under your recursion line:
After your updates are complete, save and close the
Check that the configuration file is usable by issuing the command :
If everything was done correctly, you should see no output. No output means everything is OK. If you get any errors, open the file and fix the reported issue. The errors are self explanatory and point to the exact issue.
Once the check is OK, the BIND service will need to be restarted in order for the changes to be picked up.
On the Left side in WHM under “Restart Services” Click DNS Server (BIND/NSD/My).
Click Yes to restart the service. Allow a few minutes for the service to restart.
You’ll then want to begin adding your domains to the Linode DNS Manager as slave zones.
- Log in to the Linode Manager and click on the DNS Manager tab.
- At the bottom, click on the “Add a domain zone” link.
- On the bottom right corner of the next page, click the link titled “I wanted a slave zone.”
- On the slave zone page, you’ll want to enter your domain name in the “Domain” box and your cPanel server’s main IP address in the “Masters” box.
- Click the “Add a Slave Zone” button.
Once you save your slave zone, you’ll see a new text field titled “Domain Transfers”. You can leave this empty.
You may wish to consult the following resources for additional information on this topic. While these are provided in the hope that they will be useful, please note that we cannot vouch for the accuracy or timeliness of externally hosted materials.
Suggest you also check allow-transfer, allow-notify, also-notify settings in named.conf of your cPanel box.
Good luck ,