>Nothing is wrong with MS DNS server.  I am using it too.  One thing I'd 
>love to automate the process of adding/modifying zones and records via web 
>browser or some automated process.  We have around 50-100 new users everyday

You mean user account's in Imail or new domains for your DNS?

>and they'd like to have third-level DNS at our site, i.e., user1.hotbiz.com.

That's called a "host" within the hotbiz.com zone.

>And I can't continue to add them manually everyday like right now.

50 to 100 new hosts and/or domains per day is 10,000 to 20,000 per year, so 
you are definitely out of the "flat file" situation of named.conf and well 
into a database requirement.

While I can' say "go buy this product" to help you, I can say that in BIND 
with its $INCLUDE <file> directive in a sitution where you have 100's of 
virtual http servers on one or several machines and 100's of virtual mail 
servers on one or several machines can save tons of work (and errors).

I maintain my named.conf file in Homesite, where the named.conf file is on 
a FreeBSD box and accessed by Homesite over ftp. I have my zone statements 
kept on one line with the "fields" separated by tabs (acceptable whitespace 
for named) so that copying a zone is "select line, down arrow, paste line", 
and then, change the two occurences of the zone name on the line kept 
deliberately at the front of the line:

on the master ns:

zone "meiway.com" IN {file "db.meiway.com"; type master; etc .....};

on the slave ns:

zone "meiway.com" IN {file "db.meiway.com"; type slave; etc etc .....};

What's nice about this is that when your tab spacing is set up wide enough, 
you have a visually quick and simple of way of validating your work work 
because the vertical columns that appear when so many identical lines are 
stacked up.

And since your paste of a correct line duplicates all those braces and 
semicolons, typo's are absent. Easy to "clone-a-zone" and just change the 
zone name twice and onto the next new zone.

Now, what about $INCLUDE used in the db.zone files?  Well, that can benefit 
from tremendous commonality shared by all your zones (1000 virtual web site 
on machine A and their 1000 virtual mail servers on machine B).

Here's a newdomain.com zone file of arbitrary "zone type A" built with a 
"template" db.zonefile packaging all the commonality.

$ORIGIN newdomain.com
$TTL 86400
@ IN SOA ns1.hotbiz.com. ns-admin.hotbiz.com. (
  2000042701 ;
  86400 ;
  1800 ;
  864000 ;
  86400 ;
)
;
$INCLUDE db.templateA

Zap!! your finished doing the newdomain.com's zone file. Just change the 
serial number you're done.  (It would be great to use $include to build the 
SOA record, but $inlclude can't be used within a named.conf statement or 
db.zone file RR.)

Here's db.templateA:

# db.templateA
;
;nameservers
@ IN NS ns1.hotbiz.com.
@ IN NS ns2.hotbiz.com.
@ IN NS ns3.hotbiz.com.
;
;mailservers (using 3 IMGate mail gateways)
@ IN MX mgw1.hotbiz.com.
@ IN MX mgw2.hotbiz.com.
@ IN MX mgw3.hotbiz.com.
;
; hosts: A RR's
;
;infrastructure hosts: nameservers
ns1 IN A 216.32.239.11
ns2 IN A 216.32.239.12
ns3 IN A 216.32.239.13
;
;infrastructure hosts: mail gateways
mgw1 IN A 216.32.239.21
mgw2 IN A 216.32.239.22
mgw3 IN A 216.32.239.23
;
; customer hosts
@ IN A 216.32.239.178
www IN A 216.32.239.178
ftp IN A 216.32.239.178

The above assumes that all domains have their incoming mail delivered to 
the "mgw" machines (and then forwarded to Imail after anti-spam policies 
are applied (see http://IMGate.MEIWay.com) ) and .178 is big mutha of a 
machine where you have 1000 virtual HTTP servers each with ftp access for 
web site maintenance. These conditions are defined as "A conditons" so the 
template is called  "db.templateA".

=========

Now what about those cusomter who want virtual hosts in the virtual 
domains? easy, just start with their db.newdomain.com forward zone file and 
add the new virtual hosts at the the end:

$ORIGIN newdomain.com
$TTL 86400
@ IN SOA ns1.hotbiz.com. ns-admin.hotbiz.com. (
  2000042702 ;
  86400 ;
  1800 ;
  864000 ;
  86400 ;
)
;
$INCLUDE db.templateA
vhost1 IN A 216.32.239.178
vhost2 IN A 216.32.239.178

Anyway, you get the idea. Note that the s/n is modified also, so that when 
named re-parses the zone files, it will pick up the new serial number only 
for db.newdomain.com
and add vhost1 and vhost2.

Adding hosts to zone files does not require touching named.conf.

oh, by the way, all of this scriptable with batch files or PERL so highly 
scaleable and portable from NT to FreeBSD or Linux, since PERL is portable 
and the BIND8 config files are identical no matter what the OS.

If you want to see what a database front-end looks like for a DNS, try to 
join the beta at UltraDNS.net.  This DNS web admin GUI was done in Cold 
Fusion.  Really a very nice Web GUI, but would be nice for 50 to 100 new 
zones per day??  I don't GUI is a solution for high volume zone creation.

Len

Please visit http://www.ipswitch.com/support/mailing-lists.html 
to be removed from this list.

Reply via email to