<html><head><metahttp-equiv="Content-Type"content="text/html; charset=ISO-8859-1"><title>BIND 10 Guide</title><linkrel="stylesheet"href="./bind10-guide.css"type="text/css"><metaname="generator"content="DocBook XSL Stylesheets V1.75.2"><metaname="description"content="BIND 10 is a Domain Name System (DNS) suite managed by Internet Systems Consortium (ISC). It includes DNS libraries and modular components for controlling authoritative and recursive DNS servers. This is the reference guide for BIND 10 version 20101201. The most up-to-date version of this document, along with other documents for BIND 10, can be found at ."></head><bodybgcolor="white"text="black"link="#0000FF"vlink="#840084"alink="#0000FF"><divclass="book"title="BIND 10 Guide"><divclass="titlepage"><div><div><h1class="title"><aname="id1168230298903"></a>BIND 10 Guide</h1></div><div><h2class="subtitle">Administrator Reference for BIND 10</h2></div><div><pclass="releaseinfo">This is the reference guide for BIND 10 version
20101201.</p></div><div><pclass="copyright">Copyright <20> 2010 Internet Systems Consortium, Inc.</p></div><div><divclass="abstract"title="Abstract"><pclass="title"><b>Abstract</b></p><p>BIND 10 is a Domain Name System (DNS) suite managed by
Internet Systems Consortium (ISC). It includes DNS libraries
and modular components for controlling authoritative and
recursive DNS servers.
</p><p>
This is the reference guide for BIND 10 version 20101201.
The most up-to-date version of this document, along with
other documents for BIND 10, can be found at <aclass="ulink"href="http://bind10.isc.org/docs"target="_top">http://bind10.isc.org/docs</a>. </p></div></div></div><hr></div><divclass="toc"><p><b>Table of Contents</b></p><dl><dt><spanclass="chapter"><ahref="#intro">1. Introduction</a></span></dt><dd><dl><dt><spanclass="section"><ahref="#id1168230299042">Supported Platforms</a></span></dt><dt><spanclass="section"><ahref="#id1168230299068">Required Software</a></span></dt><dt><spanclass="section"><ahref="#starting_stopping">Starting and Stopping the Server</a></span></dt><dt><spanclass="section"><ahref="#managing_once_running">Managing BIND 10</a></span></dt></dl></dd><dt><spanclass="chapter"><ahref="#installation">2. Installation</a></span></dt><dd><dl><dt><spanclass="section"><ahref="#id1168230284820">Building Requirements</a></span></dt><dt><spanclass="section"><ahref="#quickstart">Quick start</a></span></dt><dt><spanclass="section"><ahref="#install">Installation from source</a></span></dt><dd><dl><dt><spanclass="section"><ahref="#id1168230285006">Download Tar File</a></span></dt><dt><spanclass="section"><ahref="#id1168230285026">Retrieve from Git</a></span></dt><dt><spanclass="section"><ahref="#id1168230285086">Configure before the build</a></span></dt><dt><spanclass="section"><ahref="#id1168230285184">Build</a></span></dt><dt><spanclass="section"><ahref="#id1168230285198">Install</a></span></dt><dt><spanclass="section"><ahref="#id1168230285223">Install Hierarchy</a></span></dt></dl></dd></dl></dd><dt><spanclass="chapter"><ahref="#bind10">3. Starting BIND10 with <spanclass="command"><strong>bind10</strong></span></a></span></dt><dd><dl><dt><spanclass="section"><ahref="#start">Starting BIND 10</a></span></dt></dl></dd><dt><spanclass="chapter"><ahref="#msgq">4. Command channel</a></span></dt><dt><spanclass="chapter"><ahref="#cfgmgr">5. Configuration manager</a></span></dt><dt><spanclass="chapter"><ahref="#cmdctl">6. Remote control daemon</a></span></dt><dd><dl><dt><spanclass="section"><ahref="#cmdctl.spec">Configuration specification for b10-cmdctl</a></span></dt></dl></dd><dt><spanclass="chapter"><ahref="#bindctl">7. Control and configure user interface</a></span></dt><dt><spanclass="chapter"><ahref="#authserver">8. Authoritative Server</a></span></dt><dd><dl><dt><spanclass="section"><ahref="#id1168230285793">Server Configurations</a></span></dt><dt><spanclass="section"><ahref="#id1168230285858">Data Source Backends</a></span></dt><dt><spanclass="section"><ahref="#id1168230285888">Loading Master Zones Files</a></span></dt></dl></dd><dt><spanclass="chapter"><ahref="#xfrin">9. Incoming Zone Transfers</a></span></dt><dt><spanclass="chapter"><ahref="#xfrout">10. Outbound Zone Transfers</a></span></dt><dt><spanclass="chapter"><ahref="#zonemgr">11. Secondary Manager</a></span></dt></dl></div><divclass="chapter"title="Chapter<65>1.<2E>Introduction"><divclass="titlepage"><div><div><h2class="title"><aname="intro"></a>Chapter<EFBFBD>1.<2E>Introduction</h2></div></div></div><divclass="toc"><p><b>Table of Contents</b></p><dl><dt><spanclass="section"><ahref="#id1168230299042">Supported Platforms</a></span></dt><dt><spanclass="section"><ahref="#id1168230299068">Required Software</a></span></dt><dt><spanclass="section"><ahref="#starting_stopping">Starting and Stopping the Server</a></span></dt><dt><spanclass="section"><ahref="#managing_once_running">Managing BIND 10</a></span></dt></dl></div><p>
Some operating systems do not provide these dependencies
in their default installation nor standard packages
collections.
You may need to install them separately.
</p></div></div><divclass="section"title="Starting and Stopping the Server"><divclass="titlepage"><div><div><h2class="title"style="clear: both"><aname="starting_stopping"></a>Starting and Stopping the Server</h2></div></div></div><p>
BIND 10 is modular. Part of this modularity is
accomplished using multiple cooperating processes which, together,
</p></div><divclass="chapter"title="Chapter<65>2.<2E>Installation"><divclass="titlepage"><div><div><h2class="title"><aname="installation"></a>Chapter<EFBFBD>2.<2E>Installation</h2></div></div></div><divclass="toc"><p><b>Table of Contents</b></p><dl><dt><spanclass="section"><ahref="#id1168230284820">Building Requirements</a></span></dt><dt><spanclass="section"><ahref="#quickstart">Quick start</a></span></dt><dt><spanclass="section"><ahref="#install">Installation from source</a></span></dt><dd><dl><dt><spanclass="section"><ahref="#id1168230285006">Download Tar File</a></span></dt><dt><spanclass="section"><ahref="#id1168230285026">Retrieve from Git</a></span></dt><dt><spanclass="section"><ahref="#id1168230285086">Configure before the build</a></span></dt><dt><spanclass="section"><ahref="#id1168230285184">Build</a></span></dt><dt><spanclass="section"><ahref="#id1168230285198">Install</a></span></dt><dt><spanclass="section"><ahref="#id1168230285223">Install Hierarchy</a></span></dt></dl></dd></dl></div><divclass="section"title="Building Requirements"><divclass="titlepage"><div><div><h2class="title"style="clear: both"><aname="id1168230284820"></a>Building Requirements</h2></div></div></div><divclass="note"title="Note"style="margin-left: 0.5in; margin-right: 0.5in;"><h3class="title">Note</h3><p>
</li></ol></div></div><divclass="section"title="Installation from source"><divclass="titlepage"><div><div><h2class="title"style="clear: both"><aname="install"></a>Installation from source</h2></div></div></div><p>
BIND 10 is open source software written in C++ and Python.
It is freely available in source code form from ISC via
</p><divclass="section"title="Download Tar File"><divclass="titlepage"><div><div><h3class="title"><aname="id1168230285006"></a>Download Tar File</h3></div></div></div><p>
</p></div><divclass="section"title="Retrieve from Git"><divclass="titlepage"><div><div><h3class="title"><aname="id1168230285026"></a>Retrieve from Git</h3></div></div></div><p>
</p></div><divclass="section"title="Configure before the build"><divclass="titlepage"><div><div><h3class="title"><aname="id1168230285086"></a>Configure before the build</h3></div></div></div><p>
</p></div></div></div><divclass="chapter"title="Chapter<65>3.<2E>Starting BIND10 with bind10"><divclass="titlepage"><div><div><h2class="title"><aname="bind10"></a>Chapter<EFBFBD>3.<2E>Starting BIND10 with <spanclass="command"><strong>bind10</strong></span></h2></div></div></div><divclass="toc"><p><b>Table of Contents</b></p><dl><dt><spanclass="section"><ahref="#start">Starting BIND 10</a></span></dt></dl></div><p>
BIND 10 provides the <spanclass="command"><strong>bind10</strong></span> command which
</p><p>The administrator doesn't connect to it directly, but
uses a user interface to communicate with the configuration
manager via <spanclass="command"><strong>b10-cmdctl</strong></span>'s REST-ful interface.
<spanclass="command"><strong>b10-cmdctl</strong></span> is covered in <aclass="xref"href="#cmdctl"title="Chapter<65>6.<2E>Remote control daemon">Chapter<EFBFBD>6, <i>Remote control daemon</i></a>.
The configuration manager does not have any command line arguments.
Normally it is not started manually, but is automatically
started using the <spanclass="command"><strong>bind10</strong></span> master process
(as covered in <aclass="xref"href="#bind10"title="Chapter<65>3.<2E>Starting BIND10 with bind10">Chapter<EFBFBD>3, <i>Starting BIND10 with <spanclass="command"><strong>bind10</strong></span></i></a>).
</p></div><divclass="chapter"title="Chapter<65>6.<2E>Remote control daemon"><divclass="titlepage"><div><div><h2class="title"><aname="cmdctl"></a>Chapter<EFBFBD>6.<2E>Remote control daemon</h2></div></div></div><divclass="toc"><p><b>Table of Contents</b></p><dl><dt><spanclass="section"><ahref="#cmdctl.spec">Configuration specification for b10-cmdctl</a></span></dt></dl></div><p>
<spanclass="command"><strong>b10-cmdctl</strong></span> is the gateway between
administrators and the BIND 10 system.
It is a HTTPS server that uses standard HTTP Digest
Authentication for username and password validation.
It provides a REST-ful interface for accessing and controlling
BIND 10.
</p><p>
When <spanclass="command"><strong>b10-cmdctl</strong></span> starts, it firsts
asks <spanclass="command"><strong>b10-cfgmgr</strong></span> about what modules are
By default the HTTPS server listens on the localhost port 8080.
The port can be set by using the <codeclass="option">--port</code> command line option.
The address to listen on can be set using the <codeclass="option">--address</code> command
line argument.
Each HTTPS connection is stateless and timesout in 1200 seconds
by default. This can be
redefined by using the <codeclass="option">--idle-timeout</code> command line argument.
</p><divclass="section"title="Configuration specification for b10-cmdctl"><divclass="titlepage"><div><div><h2class="title"style="clear: both"><aname="cmdctl.spec"></a>Configuration specification for b10-cmdctl</h2></div></div></div><p>
The configuration items for <spanclass="command"><strong>b10-cmdctl</strong></span> are:
key_file
cert_file
accounts_file
</p><p>
The control commands are:
print_settings
shutdown
</p></div></div><divclass="chapter"title="Chapter<65>7.<2E>Control and configure user interface"><divclass="titlepage"><div><div><h2class="title"><aname="bindctl"></a>Chapter<EFBFBD>7.<2E>Control and configure user interface</h2></div></div></div><divclass="note"title="Note"style="margin-left: 0.5in; margin-right: 0.5in;"><h3class="title">Note</h3><p>
</p></div><divclass="section"title="Loading Master Zones Files"><divclass="titlepage"><div><div><h2class="title"style="clear: both"><aname="id1168230285888"></a>Loading Master Zones Files</h2></div></div></div><p>
</p></div></div><divclass="chapter"title="Chapter<65>9.<2E>Incoming Zone Transfers"><divclass="titlepage"><div><div><h2class="title"><aname="xfrin"></a>Chapter<EFBFBD>9.<2E>Incoming Zone Transfers</h2></div></div></div><p>
The <spanclass="command"><strong>b10-xfrin</strong></span> process is started by
</p></div><divclass="chapter"title="Chapter<65>10.<2E>Outbound Zone Transfers"><divclass="titlepage"><div><div><h2class="title"><aname="xfrout"></a>Chapter<EFBFBD>10.<2E>Outbound Zone Transfers</h2></div></div></div><p>
The <spanclass="command"><strong>b10-xfrout</strong></span> process is started by