bind2csv2.py - convert zone files from BIND to MaraDNS compatible
MaraDNS 1.3 has BIND zone file support. This means it is possible to
use BIND zone files in MaraDNS. This makes it easier for people to use
MaraDNS in mixed DNS server environments.
Instead of having direct BIND zone file support, MaraDNS has a script,
called bind2csv2.py, that converts BIND zone files in to the "csv2"
zone file format that MaraDNS 1.2 and 1.3 use. The zone files generated
by bind2csv2.py are not MaraDNS 1.2 compatible; MaraDNS 1.3 is needed
to read zone files generated by bind2csv2.py.
bind2csv2.py is a Python script, written in version 2.2.3 of the Python
interpreter. The script should be compatible with more recent versions
of Python. The script assumes Python is the file /usr/bin/python on
your system; if Python is located elsewhere on your system, please
change the first line of bind2csv2.py. Naturally, you will need the
Python interpreter installed on your system to use bind2csv2.py. This
is a well-known open source language supported by most modern Linux and
To use the script, enter a directory containing BIND zone files, and
invoke the script thusly:
bind2csv2.py -c zone1 zone2 zone3
Substitute "zone1", "zone2", and "zone3" with a list of one or more
BIND zone files you wish be converted in to MaraDNS 1.3 csv2 zone
Once the script is run, you should have files with names like
"zone1.csv2", "zone2.csv2", and "zone3.csv2". These files are csv2 zone
files that MaraDNS will be able to parse. Copy these csv2 zone files to
a place where MaraDNS can find the zone files.
Should there already be a "zone1.csv2" file when bind2csv2.py is run,
the "zone1.csv2" file will be replaced.
None. Bind2csv2.py can only be used as above.
bind2csv2.py is not a perfect zone file converter. In particular,
bind2csv2.py does not act like BIND when NS records have different
TTLs. Please make sure all NS records in your BIND zone files have the
In addition, bind2csv2.py also does not support all resource record
types that BIND supports. Only the following RRs are supported by
bind2csv2.py: A AAAA AFSDB CNAME GPOS HINFO ISDN LOC MB MD MF MG MINFO
MR MX NS NSAP PTR PX RP RT SOA SPF SRV TXT WKS X25