This is a reference page. For tutorial information, see the instructions for running a DNS server.
tinydns runs chrooted in the directory specified by the $ROOT environment variable, under the uid and gid specified by the $UID and $GID environment variables.
tinydns listens for incoming UDP packets addressed to port 53 of $IP. It does not listen for TCP queries.
tinydns answers queries as specified by data.cdb, a binary file created by tinydns-data.
tinydns, like BIND, includes NS records with answers to most queries. This increases DNS packet sizes, but it draws queries away from parent servers, and reduces the frequency of long DNS delays. With the default tinydns-data cache times, a client that uses a normal record at least once every day will always have the corresponding NS records cached and will never have to talk to parent servers.