How to install and use djbdns name server on Ubuntu 6.06 LTS

I do not issue any guarantee that this will work for you!!!
btw. it’s working for me :p

apt-get install build-essential

Download patches:

mkdir -p /usr/local/djb/patches
cd /usr/local/djb/patches
wget http://www.thedjbway.org/patches/djb_errno_patches.tgz
tar xfvz djb_errno_patches.tgz

Install daemontools:

mkdir -p /package
chmod 1755 /package
cd /package
wget  http://cr.yp.to/daemontools/daemontools-0.76.tar.gz
gunzip daemontools-0.76.tar
tar -xpf daemontools-0.76.tar
rm daemontools-0.76.tar
cd admin/daemontools-0.76
touch /etc/inittab
patch -p1 < /usr/local/djb/patches/daemontools-0.76.errno.patch
package/install

Install ucspi-tcp:
Download the ucspi-tcp package to a temporary directory (example: /usr/src)

cd /usr/src
wget http://cr.yp.to/ucspi-tcp/ucspi-tcp-0.88.tar.gz
tar xfvz ucspi-tcp-0.88.tar.gz
cd ucspi-tcp-0.88
patch -p1 < /usr/local/djb/patches/ucspi-tcp-0.88.errno.patch
make
make setup check

Install djbdns:
Download the djbdns package to a temporary directory (example: /usr/src)

cd /usr/src
wget http://cr.yp.to/djbdns/djbdns-1.05.tar.gz
gunzip djbdns-1.05.tar.gz
tar -xf djbdns-1.05.tar
cd djbdns-1.05
echo gcc -O2 -include /usr/include/errno.h > conf-cc
make
make setup check

Configuring name server:
Make sure you replace 1.2.3.4 with the external IP address of your system…

useradd tinydns
useradd dnslog
tinydns-conf tinydns dnslog /etc/tinydns 1.2.3.4
ln -s /etc/tinydns /service 

useradd dnscache
dnscache-conf dnscache dnslog /etc/dnscache 127.0.0.1
ln -s /etc/dnscache /service

To use dnscache, replace the existing name servers in /etc/resolv.conf with 127.0.0.1, the IP address that dnscache is listening on…

cp /etc/resolv.conf /etc/resolv.conf.backup
nano /etc/resolv.conf

Replace content of resolv.conf with:

nameserver 127.0.0.1

For tinydns web based front end you can use vegadns.. For how to set up vegadns go to http://www.djbdnsrocks.org/single/vegadns.htm


DW Alliance / Dalbjerg / TechKey

Post a Comment

Your email is never published nor shared. Required fields are marked *