By Christopher P Wakefield

Linux MintToday we will have a look at setting up a DNS server on Linux. This tutorial was configured using Linux Mint 9 but the steps are the same for any Linux distribution.

First thing to do is to install the software we need. Open up a terminal and type:

sudo apt-get install bind9

Once installed it is time for some configuring. The first file we need to configure is named.conf.local. So in the terminal type:

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

I have used nano to open up the file but use whichever text editor you are happy with. Insert the following code into the file:

# This is the zone definition. replace example.com with your domain name

zone “business.com” {

type master;

file “/etc/bind/zones/business.com.db”;

};

# This is the zone definition for reverse DNS. replace 0.168.192 with your network address in reverse notation – e.g my network address is 192.168.0

zone “1.168.192.in-addr.arpa” {

type master;

file “/etc/bind/zones/rev.0.168.192.in-addr.arpa”;

};

Replace business.com with the name of your DNS domain (this is not the same as an active directory domain but rather a name for your DNS zone).

Next up is the options file. In the terminal type:

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

Within this file we need to modify the forwarder with the address of your ISP’s DNS servers. So modify the file adding the following:

forwarders {

194.72.0.114;

194.74.65.69;

};

Replace the addresses above with the addresses of your ISP’s DNS servers.

Now we need to add the zones file:

sudo mkdir /etc/bind/zones

And then configure it:

sudo nano /etc/bind/zones/business.com.db (replace business.com with your DNS domain).

Add the following code to the file:

// replace example.com with your domain name. do not forget the. after the domain name!

// Also, replace ns1 with the name of your DNS server

business.com. IN SOA chris-server.business.com.

// Do not modify the following lines!

2006081401

28800

3600

604800

38400

)

// Replace the following line as necessary:

// ns1 = DNS Server name

// mta = mail server name

// example.com = domain name

business.com. IN NS chris-server.business.com.

business.com. IN MX 10 mta.example.com.

// Replace the IP address with the right IP addresses.

www IN A 192.168.1.4

mta IN A 192.168.0.3

chris-server IN A 192.168.1.4

In the above code replace the following:

business.com with your DNS domain name,

192.168.1.4 with your static DNS server address,

chris-server.business.com with your computers hostname.dns-domain,

mta is your mail server (if you have one). If you do modify the IP address to show this.

Next we have to create the reverse DNS zone file:

sudo nano /etc/bind/zones/rev.1.168.192.in-addr.arpa

Add the following code:

//replace example.com with yoour domain name, ns1 with your DNS server name.

// The number before IN PTR example.com is the machine address of the DNS server

@ IN SOA chris-server.business.com admin.business.com. (

2006081401;

28800;

604800;

604800;

86400

)

IN NS chris-server.business.com.

1 IN PTR business.com

All that is left to do is restart bind:

sudo service bind9 restart (using upstart) or sudo /etc/init.d/bind9 restart (init scripts)

Don’t forget to test the new configuration:

dig business.com

Here at ComTech I love Linux. I use it for my own systems in the office and ‘pass on the good word’ to clients when appropriate. I can sort out any Linux queries you might have, including setting up servers, or offer advice if needed. Please go to http://www.comtech247.net/business-it for more information.