What is this?
BindConfig is a tool to reduce the error prone work of maintaining BIND's zone files.
More precisely, BindConfig is the name of a Python module which can read BIND's zone files and named.conf files, and can modify and save BIND's zone files.
The zone files written by the module will be as concise as possible, since you as an admin are more likely to spot errors in a file which only has the information necessary. The zone files are written to conform to BIND's expectations and with BIND's style guide. There will be an ORIGIN directive and a TTL directive at the top of the zone. All hostnames will be relative to the toplevel ORIGIN, except for absolute hostnames outside of the zone.
How does it work?
BindConfig comes with an interactive shell used to edit your zone files.
Invoke the shell with the name of the zone you want to edit. It will parse your system's named.conf file for the location of the zone, and parse that file in turn. When the shell exits, it will save the zone file.
$ edit-zone dragonsdawn.net edit-zone: Copyright 2001 Gordon Messmer <firstname.lastname@example.org> This is free software with ABSOLUTELY NO WARRANTY. For details type 'warranty'. Parsing file: /etc/named.conf Done Parsing zone: dragonsdawn.net Done >
If all goes well, (no missing files), you'll be in the edit-zone shell. Type 'help' for a list of available commands. You can 'print' the zone, list records using wildcards, delete records using wildcards, add records or read commands from a file. You can also pipe commands to the shell:
$ cat zone-commands | edit-zone dragonsdawn.net $ echo add CNAME for www bind-config | edit-zone dragonsdawn.net
Now how much would you expect to pay?
Act now and you'll receive this package abolutely free of charge! But wait, there's more. If you download BindConfig in the next 10 minutes, I'll throw in a copy of the GPL!
Other interfaces, probably. The BindConfig classes should make it mostly trivial to implement a GUI, but the shell will probably be more functional, with the ability to pipe commands to it. Still, some people just like GUIs.
PTR support. One of my original intentions was to have the shell update the reverse maps when modifications were made to the zones.
If you have any suggestions, feel free to let me know.
Gordon Messmer <email@example.com>
Jabber: <firstname.lastname@example.org> Last modified: Tue Aug 14 20:10:16 PDT 2001
hits since announcement.