Sophie

Sophie

distrib > Mandriva > 9.1 > ppc > by-pkgid > d2aa592c6c7b6afc9e3b7223459e9335 > files > 35

maradns-1.0.16-1mdk.ppc.rpm

<!-- Do *not* edit this file; it was automatically generated by ej2html
     Look for a name.ej file with the same name as this filename -->
<!-- Last updated Thu Jan  9 07:45:52 2003 -->

<HTML><HEAD>



<META HTTP-EQUIV="Content-Type" CONTENT="text/html; CHARSET=utf-8">
</HEAD><BODY >

<h1>NAME</h1>
csv1 - Format of the csv1 zone file that MaraDNS uses
<h1>SPECIAL CHARACTERS</h1>

<dl>
<dt>
| 
<dd>
This delimits fields 
<dt>
# 
<dd>
This signifies a comment.  Lines starting with this are 
ignored, otherwise it has no significance
<dt>
% 
<dd>
This, in domain names, signifies that the rest of the domain 
name should be the name of this zone
<dt>
* 
<dd>
This is translated to mean "any host name that otherwise 
does not resolve".  It must be at the beginning of a 
domain name. 
<dt>
\ 
<dd>
This is used an an escape character, either to escape 
octal values such as '\045' for %, or to escape the '%' 
character so it has no special meaning, or to escape the 
backslash character.
</dl>

<h1>NOTES ON PROCESSING</h1>

All domain-name labels are converted to their lower-case equivalents before
processing is done.  This is because domain-name literals in the database
with one or more upper-case letters in them are case-sensitive.  This is
my way to resolve RFC1035 schizophrenic desire to both allow binary domain
labels, and its desire to be case-insensitive.
<p>

The file must first have a SOA record, followed by one or more NS records,
followed by other records.  The initial NS and SOA records must be RR for
this zone.  NS records after any non-NS record must be part of 
another zone.  The resolution algorithm will not break if non-CNAME records 
share records with a CNAME record, but this is not a good idea to do.
<p>

<h1>RR FORMAT</h1>

A domain name is a one-letter designation of its type, followed by the
domain name separated by dots, ending with either a % or a trailing dot.
If the domain name does not end with a % or trailing dot, an error is 
returned.

<h1>SUPPORTED RR TYPES</h1>

MaraDNS currently supports the following types of resource records (RRs):

<br>
<table> 
<td>Letter<td>Type<td>RFC1035 ยง3.2.2 value<tr>
<td>A<td>A<td>1<tr>
<td>N<td>NS<td>2<tr>
<td>C<td>CNAME<td>5<tr>
<td>S<td>SOA<td>6<tr>
<td>P<td>PTR<td>12<tr>
<td>@<td>MX<td>15<tr>
<td>T<td>TXT<td>16<tr>
<td>U<td>any<td>determined in third field of line<tr>
</table>

<h1>FORMAT OF SUPPORTED RR TYPES</h1>

Here are the formats, shown by letter name:

<pre>
A: Has three fields
field one: the domain name
field two: the ttl for the name in seconds
field three: the ip address, in dotted decimal notation
Example:
Ahost.example.com.|7200|10.1.2.3
</pre>

A records are described with grueling detail in RFC1035.  In short, an
A record is an IP address for a given host name.

<pre>
N: Has three fields
field one: the domain name of the record
field two: the ttl for the name in seconds
field three: the domain name this NS points to.  
Example:
Nexample.com.|86400|ns.example.com.
</pre>

NS (N here) records are described in RFC1035

<pre>
C: Has three fields
field one: the domain name of the record
field two: the ttl for the name in seconds
field three: the domain this CNAME record points to
Example:
Calias.example.org.|3200|realname.example.org.
</pre>

CNAME (which C is short for) records are described in RFC1035

<pre>
S: Has nine fields
field one: the domain name of the record
field two: the TTL of the record
field three: the origin of the domain
field four: the email address for this domain (in the RFC822, not 
            BIND format)
field five: the serial for the domain
field six: the refresh (how often to see updates) for the domain
field seven: the retry (how often to try when down) for the domain
field eight: the expire (how long before the slave gives up) for the 
             domain
field nine: the minimum (and default) TTL for the domain
Example:
Sexample.net.|86400|example.net.|hostmaster@example.net.|19771108|7200|3600|604800|1800
</pre>

SOA (S here) records are described in RFC1035

<pre>
P: has three fields
field one: the IP we wish to point to (in in-addr.arpa form)
field two: the ttl for the name in seconds
field three: the FQDN for the IP in question  
Example:
P3.2.1.10.in-addr.arpa.|86400|ns.example.com.
</pre>

PTR (P here) records, which are used for reverse
DNS lookups, are described in RFC1035

<pre>
@: has four fields
field one: The host that people send email to
field two: the ttl for this record
field three: The preference for this MX host
field four: The name of this MX host
Example:
@example.com.|86400|10|mail.example.com.
</pre>

MX (@ here) records are described in RFC1035

<pre>
T: has three fields
field one: The host someone wants to get additional information about
field two: the ttl for this record
field three: The desired text.  Any data becomes the record up until a 
             new line is reached.  The new line is not part of the TXT 
             record
Example:
Texample.com.|86400|Example.com: Buy example products online
</pre>

TXT (T here) records are described in RFC1035

<pre>
U: has four fields
field one: The host someone wants a data type normally unsupported by 
           MaraDNS for
field two: the ttl for this record
field three: The numeric code for this data type (33 for SRV, etc.)
field four: The raw binary data for this data type
Example:
Uexample.com|3600|40|\\010\\001\\002Kitchen sink data
</pre>

The above example is a "Kitchen Sink" RR (see 
draft-ietf-dnsind-kitchen-sink-02.txt) with a "meaning" of 8, a "coding"
of 1, a "subcoding" of 2, and a data string of "Kitchen sink data".
Since this particular data type is not formallized in a RFC at this time,
the most appropriate method of storing this data is by using the catch-all 
"unsupported" syntax.

<h1>EXAMPLE CSV1 ZONE FILE</h1>
<pre>
# Zone file for example.com (example file)

# The SOA record must be first, followed by all authoritative NS 
# records for this zone.
Sexample.com.|86400|example.com.|hostmaster@example.com.|19771108|7200|3600|604800|1800
Nexample.com.|86400|ns1.example.com.
Nexample.com.|86400|ns2.example.com.

# Some 'IN A' records
Aexample.com.|86400|10.1.2.3
Amx.example.com.|86400|10.1.2.4
Ans1.example.com.|86400|10.0.0.1
Ans2.example.com.|86400|192.168.0.1

# An 'IN MX' record
@example.com.|86400|10|mx.example.com.

# An 'IN CNAME' record
Cwww.example.com.|86400|example.com.

# An 'IN TXT' record
Texample.com.|86400|Example.com: Buy examples of products online!

# An 'A' record showing the use of percent as a shortcut for the name
# of this zone (in this case, 'example.com.')
Aftp.%|3600|10.7.8.9

# A 'TXT' record showing the use of the backslash which allows any 
# octal code in the record
Tpercent.%|7200|Get 50\045 off all \%items\% at example.com!
 
# A 'PTR' record which, while marked as unauthoritative, allows this
# program to work with the obsolete tool nslookup when bound on IP 127.0.0.3
# NOTE: This record is not part of the example.com domain, and,
# therefore, can not be transferred with the getzone client
P3.0.0.127.in-addr.arpa.|1234|nslookup.bug.workaround.


</pre>
<h1>LEGAL DISCLAIMER</h1>
THIS SOFTWARE IS PROVIDED BY THE AUTHORS ''AS IS'' AND ANY EXPRESS 
OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED 
WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE 
ARE DISCLAIMED.  IN NO EVENT SHALL THE AUTHORS OR CONTRIBUTORS BE 
LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR 
CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF 
SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR 
BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, 
WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE 
OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, 
EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 

<h1>AUTHOR</h1>
Sam Trenholme 
<A href=http://www.samiam.org/>http://www.samiam.org/</a>
</BODY></HTML>