D. J. Bernstein

Internet publication

DNScache

The tinydns program

tinydns is a DNS server. It accepts iterative DNS queries from hosts around the Internet, and responds with locally configured information.

Configuration

Normally tinydns is set up by the tinydns-conf program.

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 discards packets from low ports other than 53. It does not listen for TCP queries.

tinydns rejects inverse queries, non-Internet-class queries, truncated packets, and packets that contain anything other than a single query. It looks up other queries inside data.cdb, a binary file created by tinydns-data.