Bind8 on Linux
Don't make complicated, at first.
The basics are basic.
(I am assuming the dns server is also the mail and web server)
This is a link to some commands and files for dns.
  1. Get it installed
      Get Bind
      download to /usr/local/download/bind8
      cd /usr/local/download/bind8
      make
      make install
  2. See if you have more than one verison of BIND on your system.
      find / -name named
  3. If you see more than one executable, find the newest one.
      /usr/local/sbin/named -v
      /usr/sbin/named -v
  4. Make links to the newest one.
      mv /usr/local/sbin/named /usr/local/sbin/named.old
      ln -s /usr/sbin/named /usr/local/sbin/named
  5. Touch some files
      mkdir /var/named/
      cd /var/named
      touch db.127.0.0 db.mydomain.com db.123.456.789 db.cache
  6. Now fill them with these these as your guide:
      vi  db.127.0.0
      vi  db.mydomain.com
      vi  db.123.456.789
      vi  db.cache
      vi  named.boot
      vi  named.conf
  7. In each file, search and replace with your favorite text editor.
      replace "mydomain.com"     with    your domain name (including the .com)
      replace "123.456.789.abc"  with    your dns servers ip address
      replace "mother"           with    your server's name
      replace "789.456.123"      with    the first three cotets of your ip in reverse order.
  8. Kill the existing named:
      killall -QUIT named
      or
      kill -9 `ps -x |grep [n]amed |awk '{print $1}'`
  9. Started the new named:
      /usr/local/sbin/named
  10. Log time, go check'm:
      cat /var/log/messages
  11. Make it startup when you boot:
      vi /etc/rc.d/init.d/named
      sample named
      touch /var/lock/subsys/named
      ln -s /etc/rc.d/init.d/named /etc/rc.d/rc2.d/S45named
Classless in-addr.arpa Delegation Files -one description Classless in-addr.arpa Delegation Files -another take Classless in-addr.arpa Delegation RFC2317