Server Fault is a question and answer site for system and network administrators. It's 100% free, no registration required.

Sign up
Here's how it works:
  1. Anybody can ask a question
  2. Anybody can answer
  3. The best answers are voted up and rise to the top

I am looking for a very lightweight DNS daemon to run on my CentOS server. It will only be handling a maximum of 5-10 domains and there won't be many queries to it. I have looked at BIND and TinyDNS and a few others but I am stuck on what to use. I am fairly new to DNS configurations in terms of zones etc, although I know how DNS works as a whole, just not on a server level.

The scenario is I bought a domain name from a registrar and I want to push the domain to my server to handle it. I want to setup a couple sub domains that point to IP addresses, not directories.

Lightweight I am talking about less than 50MB of memory usage, disk space isn't an issue however. I would also prefer to have something easy to setup but if I have to do a lot of work manually without any setup scripts or GUI's so be it, it will just take me longer.

share|improve this question
up vote 2 down vote accepted

You don't seem to need a DNS server for what you have described. Your registrar should provide nameservers - simply point your domain at your at your server's IP address (add an A record). You can then deal with the subdomains on your server without a nameserver (e.g. add virtualhosts in Apache or servers in Nginx). Additionally, if desired you can add CNAMEs on your registrar's nameserver.

If, for some reason you need a nameserver on your server, TinyDNS has a much smaller footprint than Bind and is easy to configure - in this case though, it appears unnecessary.

If you are interested, this article should be applicable in terms of setting up TinyDNS on CentOS:

(Some programs related to TinyDNS (e.g. dnscache) can also aid in DNS caching which will yield a small improvement in performance for things such as email delivery and log analysis as well).

TinyDNS does not have a GUI (there are some control panels that support DNS, but installing those is often harder than just installing the DNS server).

share|improve this answer
Pointing an A record at a server won't magically configure subdomains, and TinyDNS isn't a caching server, dnscache is (which is a part of the same suite as TinyDNS -- djbdns). – womble Jul 5 '11 at 0:59
He said he wanted to 'push the domain to his server to handle it' - an A record would accomplish that (i.e. map the domain to the server). You are absolutely right though, A records will not configure subdomains (I didn't say they would); and I was incorrect in saying TinyDNS is also a caching server (djbdns = TinyDNS and dnscache is the caching server as you said) – cyberx86 Jul 5 '11 at 1:02
I ended up using the guide you posted and it helped a lot, thanks! – qroberts Jul 5 '11 at 1:52
"You don't seem to need a DNS server" - yes he might. If its doing any* nslookups, a caching nameserver will improve performance. While nscached can provide most of the functionality required, there are other tools like dnsmasq which also provide DNS services to other hosts on the network. – symcbean Jul 5 '11 at 9:28

I love tinydns. Uses very little memory, is easy to setup, has a neat (if slightly obtuse) data format, and scales brilliantly -- no matter how many domains you throw at it, it's memory usage is still practically noise. About it's only downside is that it doesn't work like BIND, and so people look at you funny. Just ignore the haters, they're just jealous that their nameservers require memory upgrades.

share|improve this answer
Do you know of any good guides for beginners on how to install and set it up on CentOS? – qroberts Jul 5 '11 at 0:48 or google for "tinydns CentOS" – womble Jul 5 '11 at 0:57
@womble memory isn't an issue. Compliance with current DNS standards is. – Alnitak Jul 5 '11 at 12:17

Your Answer


By posting your answer, you agree to the privacy policy and terms of service.

Not the answer you're looking for? Browse other questions tagged or ask your own question.