Setting Up Private Nameservers in WHM/cPanel
Setting up your own private nameservers on a cPanel server has many benefits, most importantly enabling all of cPanel’s built-in DNS tools which can make DNS changes much easier.
This guide will show you how to set up and register new private nameservers on a cPanel server using the WHM (Web Host Manager) interface.
Most users will want to use a domain name they already own, often the same domain name that is being used for the hostname of the server that will be running the private nameservers.
For this example, we will use a fake domain called example.com. Our server is called host.example.com, and we will be setting up ns1.example.com and ns2.example.com.
There are three parts to setting your private nameservers: Configuring the server to accept and process the DNS requests, registering our new nameservers at the registrar who controls the domain name, and finally pointing domains at those new nameservers.
Step 1: Configuring the Server
Log in to your server’s WHM interface and find the search bar and type in Basic WebHost Manager Setup. This option will be under the Server Configuration.
Scroll to the bottom of the page, you will find the Nameservers section.
When you load this screen for the first time you may see that two nameservers, using the same domain name as the server’s hostname, are already in place. If this is the case skip to Step 2: Registering Your Private Nameservers.
If there are no nameservers listed here then we will need to create them. Type the name of the nameserver IP. Once you’ve added the IP address, click the Configure Address Records button.
You will be returned to the same screen now showing your new nameserver and the IP it has been assigned. You need to have at least two nameserver names configured, so repeat this step to create your second nameserver.
When you are finished assigning IP addresses, make sure to click Save Changes.
Optional: Editing Nameserver IPs via SSH
cPanel stores the nameserver IP assignments in a file located at:
If you log in to your server using SSH it is possible to edit this file manually and have cPanel use your new settings.
root@host [/]# cat /var/cpanel/nameserverips.yaml --- ns1.example.com: 126.96.36.199: 1 count: '4' zones: example.com,domain.com,ns1.example.com,ns2.example.com ns2.example.com 188.8.131.52: 1 count: '4' zones: example.com,domain.com,ns1.example.com,ns2.example.com
In the above example, we are using the command cat to display the contents of the file. Changes can be made to this file using your favorite shell text editor such as vim, nano, or whatever you are comfortable using. Before editing the nameserverips.yaml file, you will need to delete the following cache file:
root@host [/]# rm /var/cpanel/nameserverips.cache
cPanel will rebuild that file after you have made your changes.
As always, Liquid Web support recommends you make a backup of any files you change manually using SSH before you modify them!
A simple backup command:
root@host [/]# cp /var/cpanel/nameserverips.yaml /var/cpanel/nameserverips.yaml.bak
Now you can modify the file as much as you want, and if anything terrible happens you can simply delete the file and rename your .bak copy to the original file name.
Step 2: Registering Your Private Nameservers
The vast majority of registrars do not charge their customers any extra fee for registering nameservers as long as the main domain name itself has already been purchased.
If you registered the domain yourself:
If you are setting up nameservers for a domain name that you own, which you also purchased yourself at a domain registrar, you will need to log in to your account at that same registrar and use their tool to register the new names.
For example, if you are setting up ns1.testdomain.com and ns2.testdomain.com, and you purchased testdomain.com from GoDaddy, you would need to log in to your GoDaddy account to register the new nameservers.
Once you have found the tool/page you need at your registrar’s website the registration itself is very straightforward. Most registrars use a simple form where you enter the name of the nameserver you wish to create and the corresponding IP address (that we obtained from the steps described above).
If Liquid Web registered the domain for you:
If you are setting up nameservers for a domain and the domain was purchased as a part of your Liquid Web account you will need to open a new help desk ticket with your request using either your manage login or by e-mailing email@example.com.
You are welcome to follow the steps described above to complete the server configuration and have us handle the nameserver registration, or if you would like our Heroic Support admins will be happy to help you with the entire process.
Step 3: Pointing Your Domain(s) at Your New Nameservers
The final step in creating your nameservers is to start using them by correctly pointing your domain(s). Log in to your registrar and edit the assigned nameservers so that it now points at your new nameserver names.
Now that your domain is pointing at your server’s nameservers you can use the DNS tools in the WHM and cPanel interfaces to modify your zone files!
About the Author: Jay Allen
Our Sales and Support teams are available 24 hours by phone or e-mail to assist.
How to Install ClamAVRead Article
How to Use Disk Quotas in Dedicated Linux Servers with PleskRead Article
Guide on Connecting to Remote Servers Using SSH in Linux, Windows, or macOS SystemsRead Article
New User Tutorial: What is DNS?Read Article
Difference Between AlmaLinux and Rocky LinuxRead Article