I've always shied away from running DNS for "real" customers, as it's such a critical part of the infrastructure and is easily managed by the domain registrar (usually 123-Reg).
However, after a second DNS outage in 2 yrs at 123-Reg (which should be near impossible, as DNS is the one thing it is easy to make redundant) I've reached the point (again!) of considering running my own.
I've always found configuring Bind to be, er, a bit of a bind, so are there any simpler options out there or should I just bite the bullet and install bind? What is the typical system overhead of running DNS - should I add it to my web/mail servers or should it be separate? It makes sense to use our (separate) web and mail servers, if only because if both of those are down then it doesn't really matter than DNS is down too!
Requirements are to be able to handle domains and subdomains (ideally multi-level subdomains although we don't have that at the moment so I won't miss it), and wildcards, with A,CNAME and MX records. So pretty basic stuff.