<HEAD>
<TITLE>The bind2csv2.py utility</TITLE>
<META HTTP-EQUIV="Content-Type" CONTENT="text/html; charset=utf-8">
</HEAD>
<BODY>

<h1>Using BIND zone files in MaraDNS</h1>

MaraDNS has some 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. <p>

Instead of having direct BIND zone file support, MaraDNS has a script,
called <tt>bind2csv2.py</tt>, that converts BIND zone files in to 
the "csv2" zone file format that MaraDNS uses.   <p>

<tt>bind2csv2.py</tt> is a Python script, written in version 2.2.3
of the Python interpreter.  The script <i>should</i> be compatible
with more recent versions of Python.  The script assumes Python
is the file <tt>/usr/bin/python</tt> on your system; if Python is
located elsewhere on your system, please change the first line
of <tt>bind2csv2.py</tt>.  Naturally, you will need the Python
interpreter installed on your system to use <tt>bind2csv2.py</tt>.  
This is a well-known open source language supported by most modern
Linux and BSD distributions. <p>

To use the script, enter a directory containing BIND
zone files, and invoke the script thusly:<p>

<pre>
bind2csv2.py -c zone1 zone2 zone3
</pre>

Substitute "zone1", "zone2", and "zone3" with a list of one or more 
BIND zone files you wish be converted in to MaraDNS csv2 zone
files.  <p>

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. <p>

Should there already be a "zone1.csv2" file when <tt>bind2csv2.py</tt>
is run, the "zone1.csv2" file will be replaced. <p>

<h2>BUGS</h2>

<tt>bind2csv2.py</tt> is not a perfect zone file converter.  In
particular, <tt>bind2csv2.py</tt> does not act like BIND when NS records
have different TTLs.  Please make sure all NS records in your BIND zone
files have the same TTL.  <p>

In addition, <tt>bind2csv2.py</tt> also does not support
all resource record types that BIND supports.  Only the following RRs
are supported by <tt>bind2csv2.py</tt>:

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

<p>
</BODY>
