FreeBSD tinydns: Sets Up a DNS Publication / Authoritative Name Server

last updated in Categories , ,

How do I setup primary dns name server using tinydns under FreeBSD operating systems?


You need to create a zone file for your domain which will provide the following data:

  1. Your name server IP address.
  2. Your mail server IP address and pointer to mx.
  3. Your AAAA and A records etc.

Step # 1: Create Directory For Your Zone File

Type the following command:
# mkdir /var/

Step # 2: Set Up a DNS Publication Service

You need to use your IP and directory /var/ as follows
# tinydns-conf tinydns dnslog /var/
Above will create all required directories and default zone data file.

Step # 3: Start TinyDNS Server

Type the following command:
# ln -s /var/ /var/service/
Verify that UDP port # 53, opened:
# sockstat -4
# sockstat -4 -p 53

Now, all you’ve to do is create a zone file for your domain


Posted by: Vivek Gite

The author is the creator of nixCraft and a seasoned sysadmin, DevOps engineer, and a trainer for the Linux operating system/Unix shell scripting. Get the latest tutorials on SysAdmin, Linux/Unix and open source topics via RSS/XML feed or weekly email newsletter.

1 comment

  1. I am running FreeBSD 8. When following this guide I noticed a few things:

    Step 1 – Do not create the directory as it will conflict with Step 2.
    Step 2 – Use the directory in the command, if it exists, it won’t work. If it dosen’t exist, it will create it.


    [root@vps ~]# mkdir /var/
    [root@vps ~]# tinydns-conf tinydns dnslog /var/
    tinydns-conf: fatal: unable to create /var/ file already exists

    Still, have a question? Get help on our forum!