Click Add

Monday, September 7, 2009

How To Setup DNS Name Server Using BIND 9

It is pretty easy to setup nameserver for each domain using BIND. For example, ns1.mmr.net and ns2.mmr.net
Our sample setup

ns1.mmr.net 202.191.120.158
ns2.mmr.net 202.191.120.159


Master server configuration
(ns1.mmr.net)
Next, you need to setup named.conf as follows on master bind 9 server, enter:
# vi named.conf
Append zone as follows, enter:
zone "mmr.net" {
type master;
file "/etc/bind/zones/master.mmr.net";
allow-transfer { 202.191.120.158 };
};


Save and close the file.

Run following command to check named.conf for error:
# named-checkconf


Now, create /etc/bind/zones/master.theos.in zone file:
# vi /etc/bind/zones/master.mmr.net

Append zone as follows, enter:

$ORIGIN theos.in.
$TTL 3h
@ IN SOA ns1.mmr.net. admin.mmr.net. (
2008071801 ; Serial yyyymmddnn
3h ; Refresh After 3 hours
1h ; Retry Retry after 1 hour
1w ; Expire after 1 week
1h) ; Minimum negative caching of 1 hour
;
@ 86400 IN NS ns1.mmr.net.
@ 86400 IN NS ns2.mmr.net.
@ 86400 IN MX 10 smtp.mmr.net.

; DNS must point to IP of ns1.mmr.net and ns2.mmr.net
ns1 86400 IN A 202.191.120.158
ns2 86400 IN A 202.191.120.159
; host stuff
@ 86400 IN A 202.191.120.160
www 86400 IN A 202.191.120.160
ftp 86400 IN A 202.191.120.160



Save and close the file. Run zone file validity checking for mmr.net, enter:
# named-checkzone mmr.net /etc/bind/zones/master.mmr.net

Sample output:zone mmr.net/IN: loaded serial 2008071801
OK


Now just reload bind 9, enter:
# rndc reload

Check your server
#dig mmr.net or nslookup -sil mmr.net
(Related command dig, host, ping details coming soon)


Slave server configuration
(ns2.mmr.net)

Open named.conf on slave server and append following code:

zone "mmr.net" {
type slave;
file "/etc/bind/zones/slave.mmr.net";
masters { 202.191.120.158 };
allow-transfer { none; };
};

Save and close the file.
Run following command to check named.conf for error:
# named-checkconf
Reload named, enter:
# rndc reload
It may take anywhere from 24-48 hrs to propagate a domain across the internet. You can test your setup with the following command:
$ host -t ns mmr.net
Sample output:
mmr.net name server ns1.mmr.net.
mmr.net name server ns2.mmr.net.

No comments:

Post a Comment