Forward Look-up Config file for Bind9

Posted: July 23, 2011 in Linux, servers, Uncategorized
Tags: , , , , ,

I’m a bit stressed for time, so i’ll keep this nice and short. The whole article will be a series of points.

  • Almost ALL bind config files are basic text files.
  • Spaces and special ending characters are VERY important.
  • Serial numbers within the files (you will see shortly) do NOT effect greatly, but it is best practice to keep them in order.
  • Serial numbers SHOULD be incremented everytime you edit the file
  • Forward lookup files are usually stored in /etc/bind
  • Naming of the file should be [domain-name].db  for example: geekdomain.db, google.db
Here’s a Sample forward lookup file:  (Note, all lines starting with ; are comments)

; As a basic RULE, all config files HAVE to start with the SOA (Start Of Authority) line.
; The SOA tells us which server is the Authoritative DNS server for this domain. If this is your ONLY DNS server, this will be your Authoritative server. Lets di-sect the stuff within the ().
; The serial number, is a number representing which version this file is. The numbering convention is upto the admin. We normally type the serial number as date & time. For example,
; if we edit this file on the 17th of May 2011, we will number it 20110517. If you want you can put the time in there as well. You must remember to change this number everytime you make any
; change to the file. 
; The next line tells us the refresh rate.  The numbers are in seconds. Hence 3600 gives us a refresh time of 1 hour
; The next line tells us the retry rate. Again, the numbers are in seconds.
; The Next line tells us the expiry time.
; The next line is the minimum time.
    ; Alot of people get confused by this first line. It's simply; @ IN SOA(Saying this server is the SOA) (with the @ sign replaces by a . )
    @ IN SOA geek.domain.  admin.geek.domain. (
	20110517	; Serial number
	3600		; 1 hour refresh
	300		; 5 minutes retry
	172800		; 2 days expiry
	43200 )		; 12 hours minimum

; List of Name servers in this domain. It MIGHT be a good idea to also have your ISP's DNS server in here.
	IN NS		geek.domain.
	IN NS		isp.geek.domain.gk.

; List all MX (Mail exchange) records here!
	IN MX		mail.geek.domain.

; List all your other servers and machines here
    web.geek.domain.            IN A   ; Web Server
    fileserver.geek.domain.     IN A   ; File Server
    machine1.geek.domain.       IN A   ; Windows XP machine

; Alias names
    www	        IN CNAME	web.geek.domain.
    ftp		IN CNAME	fileserver.geek.domain.
    printer	IN CNAME	fileserver.geek.domain.

How to fit all this in with your Bind server (If you came here from my other tutorial):

Goto /etc/bind
Create a text file there named [domain-name].db  for example: geekdomain.db
Type in (or copy paste & edit) the above code according to your needs.
Save the file.
Restart Bind:
/etc/init.d/bind9 restart

How to test if your look up tables are working.

In bash type in :
for example:
nslookup fileserver.geek.domain
  1. Hello there! I know this is kind of off topic but I was wondering which blog platform are you using for this
    website? I’m getting sick and tired of WordPress because I’ve had problems with hackers and I’m looking at alternatives for another platform. I would be awesome if you could point me in the direction of a good platform.

Leave a Reply

Fill in your details below or click an icon to log in: Logo

You are commenting using your account. Log Out / Change )

Twitter picture

You are commenting using your Twitter account. Log Out / Change )

Facebook photo

You are commenting using your Facebook account. Log Out / Change )

Google+ photo

You are commenting using your Google+ account. Log Out / Change )

Connecting to %s