How to Install DNS server in UBUNTU 16?

STEP 1: Update server-

# Sudo apt-get update

# sudo apt-get upgrade

# sudo apt-get dist-upgrade

STEP 2: Install BIND9 -

# sudo apt-get install bind9 bind9utils bind9-doc

STEP 3: caching name server-

To configure Caching name server, edit /etc/bind/named.conf.options file:

# sudo nano /etc/bind/named.conf.options

Uncomment the below lines. Make the entry of forwarders (default 8.8.8.8)

forwarders {
 8.8.8.8;
 };

Save and close the file. Restart bind.

# sudo systemctl restart bind9

STEP 4: Testing the name server

# dig -x 127.0.0.1

( the status should return with STATUS : NOERROR )

STEP 5: Installing/configuring DNS server –

Edit /etc/bind/named.conf file

# sudo nano /etc/bind/named.conf

If these lines are not there just add them -

include "/etc/bind/named.conf.options";
include "/etc/bind/named.conf.local";
include "/etc/bind/named.conf.default-zones";

Save and close the file.

STEP 6: now define forward and reverse zone file. To do so edit the file

#sudo nano /etc/bind/named.conf.local

Add these lines to the file and make the changes like IP, DOMAIN NAME according to you…

zone "example.com" {
type master;
file "/etc/bind/for.example.com";
allow-transfer { 192.168.1.1; };
also-notify { 192.168.1.1; };
 };

zone "1.168.192.in-addr.arpa" {
type master;
file "/etc/bind/rev.example.com";
allow-transfer { 192.168.1.1; };
also-notify { 192.168.1.1; };
 };

Save and close the file.

NOW CREATE THE ZONE FILE –

# sudo nano /etc/bind/for.example.com

Add the following lines in it –

$TTL 86400
@   IN  SOA     pri.example.com. root.example.com. (
        2011071001  ;Serial
        3600        ;Refresh
        1800        ;Retry
        604800      ;Expire
        86400       ;Minimum TTL
)
@       IN  NS          pri.example.com.
pri     IN  A           192.168.1.1

Here you can add secondary DNS server and client entry according to the scheme/pattern.

Save and close the file.

NEXT create reverse zone file –

# sudo nano /etc/bind/rev.example.com

Add the following lines

$TTL 86400
@   IN  SOA     pri.example.com. root.example.com. (
        2011071002  ;Serial
        3600        ;Refresh
        1800        ;Retry
        604800      ;Expire
        86400       ;Minimum TTL
)
@       IN  NS          pri.example.com.
@       IN  PTR         example.com.
pri     IN  A           192.168.1.1
1     IN  PTR         pri.example.com.

Save and close the file.

NOW set the permission –

# sudo chmod -R 755 /etc/bind

# sudo chown -R bind:bind /etc/bind

STEP 7 – Verify the DNS configuration files :

# sudo named-checkconf /etc/bind/named.conf

# sudo named-checkconf /etc/bind/named.conf.local

If the commands return nothing that means DNS configuration is valid. If it show error, correct them In particular file.

Verify the ZONE file –

# sudo named-checkzone example.com /etc/bind/for.example.com

Sample output :

zone example.com/IN: loaded serial 2011071001
OK

In same manner check the reverse zone file –

# sudo named-checkzone example.com /etc/bind/rev.example.com

Sample Output :

zone example.com/IN: loaded serial 2011071002
OK

STEP 8 –  Checking the DNS server is working or not –

To do so, First Add the DNS IP address in this file :

# sudo nano /etc/network/interfaces

Add these lines to the file :

# primary network interface
auto ens33
iface ens33 inet static
	address	192.168.1.1
	netmask	255.255.255.0
	gateway	192.168.1.10
	dnsnameservers	192.168.1.1

Save and close the file.

Finally Restart the BIND9 service :

# sudo systemctl restart bind9

STEP 10 – Testing DNS server –

# dig pri.example.com

( it should return with STATUS : NOERROR)

# nslookup example.com

Sample Output :

Server: 192.168.1.1
Address: 192.168.1.1#53

Name: example.com
Address: 192.168.1.1

IF YOU GOT THE RESULT, SOMETHING LIKE ABOVE, THAT MEANS YOUR DNS SERVER IS UP and IS WORKING PROPERLY.

Write My Essay Services