Bind DNS Auto Slave Using Webmin

The latest webmin has bug! In this tutorials I’m using webmin verison 1.801- that actually works. Don’t know if webmin team really knows are aware of the bug 🙁

So, let’s start. But before that, it’s assumed that you have webmin installed in both the servers.

Configuring Webmin Server

  • Go back to the Virtualmin server. Log in with root and go to the Webmin section. Browse Webmin>Webmin Servers Index.
  • Click Register a new server.
  • Enter as the hostname of your slave server.
  • Select Ubuntu OS as OS type.
  • Select a Link type of Login via Webmin with username, and enter the authentication details for your root account.
  • Change Make fast RPC calls? to Yes.
  • Click Save.

Configuring Secondary DNS

  • Now go to Servers>BIND DNS Server and click on Cluster Slave Servers.
  • In the Add server drop-down menu, select your slave server (if it’s the only server you’ve added, you won’t have to select it, as it will already be selected).
  • Set the Create secondary on slave when creating locally? option to Yes.
  • If you have already created any domains on your Virtualmin server, set the Create all existing master zones on slave? option to Yes.
  • If you entered in the Post-Installation Wizard as secondary name server, then change the Name for NS record option to textbox and enter it.
  • Click Add server and return to the Module Index.
  • Click Apply Configuration in the right corner.

Setting the Master IP Address (optional)

By default, Virtualmin will use the IP address that the master server’s hostname resolves to as the IP that the slaves should contact to transfer records. However, on some systems this IP is, which will not work. If you edited the hosts file at the beginning of the tutorial this should not be a problem, but I’ll show you how to solve this.

  • Go to Servers>BIND DNS Server, and click on Module Config.
  • In the Cluster slave servers section, find the Default master server IP for remote slave zones field.
  • Enter the IP address of your master server.
  • Click Save. Any DNS zones created from now on will use that IP.
  • Click Apply Configuration in the right corner.

Please note: that it won’t update existing DNS zones.

Basic Setup of DNS server

There are some more options that you should check. Go to Servers>BIND DNS Server and click on Zone defaults

  • Set the Default email address to an existing email address (Some technical check requires to set an existing email address).
  • Set Default nameserver for master domains to (optional).

Click Apply Configuration in the right corner.

Create new DNS zone

Now it’s time to test our settings. Click on Create master Zone. Enter your domain name.

  • Check your settings (By default, the IP address for address records will be the primary server’s IP address).
  • Click Create.

Check your master zone on primary and slave zone on the secondary server.

Pointing the Main Domain to DigitalOcean’s Name Servers

The most common problem is that in some cases there is a technical check which requires an email address. That email address is set in the DNS zone file, which is hostmaster@domain.tld, postmaster@domain.tld, etc. by default. Some domain providers let you edit this email address, but most of them do not.

You can solve this problem by pointing the domain to DigitalOcean’s name servers. Of course you can’t do that immediately. After completing this tutorial you have to create a virtual domain in postfix module and create an alias for hostmaster@domain.tld or you can create a virtual server in Virtualmin for domain, which will create these aliases for you, but remember to disable DNS zone.

Other Options

If you want only DNS management, you can install two Webmin instances instead of Virtualmin and Webmin, but this way you have to create DNS records manually. It is the same as Webmin installation above, but you have to do it twice. From Configure Cluster and DNS the steps are the same.

You can use your secondary DNS server for more than one Virtualmin server. In this case the primary DNS server is the virtualmin server, the secondary is the webmin server. This means that you have several Virtualmin servers which are primary DNS servers and you have only one secondary server.

You can use two Virtualmin server as DNS servers. In this case each virtualmin server wil conatin the master zone for the domains added to them. This means that if you create a virtual server in virtualmin1, then virtualmin1 will be the primary DNS server for that domain.

 All done! You have successfully finished this tutorial.



Leave a Reply

This site uses Akismet to reduce spam. Learn how your comment data is processed.