Tuesday, August 01, 2006

DNS emo fest part 2

After much fighting we've finally built a fully custom build of BIND in a nice little RPM that we can easily patch on top of cpanel w/o issues.

The way it works, though, is confusing in parts.

The way the GeoDNS works is that we split each continental region into what's known as a 'view'. Each view is then told what countries to actually manage for (this views don't know them selves, hense why we need to define them).

Now, views are odd in that if you are defining a zone (a domain), the zone must be mentioned in each view - very annoying :(

Since our hosting is always expanding so much these days (at times we get 5+ accounts a day, a shame none of them pay :P), we can't just do a full switch over - cPanel just doesn't allow for this. The way cpanel works is that it allows no wiggle room for these things so all the customizing we've been doing, we'll have todo again - boo!

To accomidate this, what we've done is have a 'included' file that cpanel updates, which is then included into the real named.conf - hurray!

We've done a test of this and it worked fairly well so far.

The only down side is that with low-end hardware (the new germany server is only a 733 Mhz P3 w/ 256MB ram), booting up of the nameserver isn't a snap like it was originally. With the way 'views' work, is that the zone is loaded once for every zone - we have 1600+ zones & 8 regions = 12800 zones to load - D'oh!

Initial startup of this was a little shy of 1 minute on the old hardware, with loads of 1. Once it was loaded, though, we had 195MB of RAM free and loads at 0.00 :)

Depending on how work goes, i'll be implimenting this sometime tomorrow.

No comments: