-<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE book PUBLIC "-//OASIS//DTD DocBook XML V4.2//EN"
-"http://www.oasis-open.org/docbook/xml/4.2/docbookx.dtd" [
-<!ENTITY mdash "—" >
-]>
+<!-- Converted by db4-upgrade version 1.0 -->
+<chapter xmlns="http://docbook.org/ns/docbook" version="5.0" xml:id="admin"><info><title>Kea Database Administration</title></info>
+
-<chapter id="admin">
- <title>Kea Database Administration</title>
-
- <section id="kea-database-version">
- <title>Databases and Database Version Numbers</title>
+ <section xml:id="kea-database-version"><info><title>Databases and Database Version Numbers</title></info>
+
<para>
Kea supports storing leases and host reservations (i.e. static
</para>
</section>
- <section id="kea-admin">
- <title>The kea-admin Tool</title>
+ <section xml:id="kea-admin"><info><title>The kea-admin Tool</title></info>
+
<para>
To manage the databases, Kea provides the
<itemizedlist>
<listitem>
<simpara>
- <command>lease-init</command> —
+ <command>lease-init</command> —
Initializes a new lease database. This is useful during a new
Kea installation. The database is initialized to the
latest version supported by the version of the software being
<listitem>
<simpara>
- <command>lease-version</command> —
+ <command>lease-version</command> —
Reports the lease database version number. This is
not necessarily equal to the Kea version number as
each backend has its own versioning scheme.
<listitem>
<simpara>
- <command>lease-upgrade</command> —
+ <command>lease-upgrade</command> —
Conducts a lease database upgrade. This is useful when
upgrading Kea.
</simpara>
<listitem>
<simpara>
- <command>lease-dump</command> —
+ <command>lease-dump</command> —
Dumps the contents of the lease database (for MySQL, PostgreSQL or
CQL backends) to a CSV (comma separated values) text file. The first
line of the file contains the column names. This is meant to be
<itemizedlist>
<listitem>
<simpara>
- <command>memfile</command> — Lease information is
+ <command>memfile</command> — Lease information is
stored on disk in a text file.
</simpara>
</listitem>
<listitem>
<simpara>
- <command>mysql</command> —
+ <command>mysql</command> —
Lease information is stored in a MySQL relational database.
</simpara>
</listitem>
<listitem>
<simpara>
- <command>pgsql</command> —
+ <command>pgsql</command> —
Lease information is stored in a PostgreSQL relational database.
</simpara>
</listitem>
<listitem>
<simpara>
- <command>cql</command> —
+ <command>cql</command> —
Lease information is stored in a CQL database.
</simpara>
</listitem>
</para>
</section>
- <section id="supported-databases">
- <title>Supported Databases</title>
+ <section xml:id="supported-databases"><info><title>Supported Databases</title></info>
+
<para>The following table presents the capabilities of available
backends. Please refer to the specific sections dedicated to each backend to
backend may be essential for success or failure of your deployment.</para>
<para>
- <table frame="all" id="backends">
- <title>List of available backends</title>
- <tgroup cols='2'>
- <colspec colname='feature'/>
- <colspec colname='memfile'/>
- <colspec colname='mysql'/>
- <colspec colname='pgsql'/>
- <colspec colname='cql'/>
+ <table frame="all" xml:id="backends"><info><title>List of available backends</title></info>
+
+ <tgroup cols="2">
+ <colspec colname="feature"/>
+ <colspec colname="memfile"/>
+ <colspec colname="mysql"/>
+ <colspec colname="pgsql"/>
+ <colspec colname="cql"/>
<thead>
<row>
<entry>Feature</entry>
</table>
</para>
- <section>
- <title>memfile</title>
+ <section><info><title>memfile</title></info>
+
<para>
The memfile backend is able to store lease information, but is not able to
present. Necessary disk write permission is required.
</para>
- <section id="memfile-upgrade">
- <title>Upgrading Memfile Lease Files from an Earlier Version of Kea</title>
+ <section xml:id="memfile-upgrade"><info><title>Upgrading Memfile Lease Files from an Earlier Version of Kea</title></info>
+
<para>
There are no special steps required to upgrade memfile lease files
from an earlier version of Kea to a new version of Kea.
<!-- @todo: document lease file upgrades once they are implemented in kea-admin -->
</section>
- <section>
- <title>MySQL</title>
+ <section><info><title>MySQL</title></info>
+
<para>
MySQL is able to store leases, host reservations and options defined on
if you chose to store the data in other backends.
</para>
- <section id="mysql-database-create">
- <title>First Time Creation of the MySQL Database</title>
+ <section xml:id="mysql-database-create"><info><title>First Time Creation of the MySQL Database</title></info>
+
<para>
If you are setting the MySQL database for the first time,
<para>
To create the database:
- <orderedlist>
+ <orderedlist inheritnum="ignore" continuation="restarts">
<listitem>
<para>
Log into MySQL as "root":
<screen>
$ <userinput>mysql -u root -p</userinput>
Enter password:
-mysql>
+mysql>
</screen>
</para>
</listitem>
<para>
Create the MySQL database:
<screen>
-mysql> <userinput>CREATE DATABASE <replaceable>database-name</replaceable>;</userinput>
+mysql> <userinput>CREATE DATABASE <replaceable>database-name</replaceable>;</userinput>
</screen>
(<replaceable>database-name</replaceable> is the name
you have chosen for the database.)
(and give it a password), then grant it access to the
database tables:
<screen>
-mysql> <userinput>CREATE USER '<replaceable>user-name</replaceable>'@'localhost' IDENTIFIED BY '<replaceable>password</replaceable>';</userinput>
-mysql> <userinput>GRANT ALL ON <replaceable>database-name</replaceable>.* TO '<replaceable>user-name</replaceable>'@'localhost';</userinput>
+mysql> <userinput>CREATE USER '<replaceable>user-name</replaceable>'@'localhost' IDENTIFIED BY '<replaceable>password</replaceable>';</userinput>
+mysql> <userinput>GRANT ALL ON <replaceable>database-name</replaceable>.* TO '<replaceable>user-name</replaceable>'@'localhost';</userinput>
</screen>
(<replaceable>user-name</replaceable> and
<replaceable>password</replaceable> are the user ID
the tables using the <command>kea-admin</command> tool,
as explained below.) To do this:
<screen>
-mysql> <userinput>CONNECT <replaceable>database-name</replaceable>;</userinput>
-mysql> <userinput>SOURCE <replaceable>path-to-kea</replaceable>/share/kea/scripts/mysql/dhcpdb_create.mysql</userinput>
+mysql> <userinput>CONNECT <replaceable>database-name</replaceable>;</userinput>
+mysql> <userinput>SOURCE <replaceable>path-to-kea</replaceable>/share/kea/scripts/mysql/dhcpdb_create.mysql</userinput>
</screen>
(<replaceable>path-to-kea</replaceable> is the
location where you installed Kea.)
<para>
Exit MySQL:
<screen>
-mysql> <userinput>quit</userinput>
+mysql> <userinput>quit</userinput>
Bye
$
</screen>
</para>
</section>
- <section id="mysql-upgrade">
- <title>Upgrading a MySQL Database from an Earlier Version of Kea</title>
+ <section xml:id="mysql-upgrade"><info><title>Upgrading a MySQL Database from an Earlier Version of Kea</title></info>
+
<para>
Sometimes a new Kea version may use newer database schema, so
</section>
</section> <!-- end of MySQL sections -->
- <section>
- <title>PostgreSQL</title>
+ <section><info><title>PostgreSQL</title></info>
+
<para>
A PostgreSQL database must be set up if you want Kea to store
safely ignored if you are using other database backends.
</para>
- <section id="pgsql-database-create">
- <title>First Time Creation of the PostgreSQL Database</title>
+ <section xml:id="pgsql-database-create"><info><title>First Time Creation of the PostgreSQL Database</title></info>
+
<para>
The first task is to create both the lease database and the
user under which the servers will access it. A number of steps
are required:
- <orderedlist>
+ <orderedlist inheritnum="ignore" continuation="restarts">
<listitem>
<para>
Log into PostgreSQL as "root":
</para>
</section>
- <section>
- <title>Initialize the PostgreSQL Database Using kea-admin</title>
+ <section><info><title>Initialize the PostgreSQL Database Using kea-admin</title></info>
+
<para>
If you elected not to create the tables manually, you can do
so now by running the <command>kea-admin</command> tool:
by <command>kea-admin</command>.)
</para>
</section>
- <section id="pgsql-upgrade">
- <title>Upgrading a PostgreSQL Database from an Earlier Version of Kea</title>
+ <section xml:id="pgsql-upgrade"><info><title>Upgrading a PostgreSQL Database from an Earlier Version of Kea</title></info>
+
<para>
The PostgreSQL database schema can be upgraded using the same tool and
commands as described in <xref linkend="mysql-upgrade"/>, with the
</section>
</section> <!-- end of PostgreSQL sections -->
- <section>
- <title>CQL (Cassandra)</title>
+ <section><info><title>CQL (Cassandra)</title></info>
+
<para>
Cassandra, or Cassandra Query Language (CQL), is the newest backend
store the data in other backends.
</para>
- <section id="cql-database-create">
- <title>First Time Creation of the Cassandra Database</title>
+ <section xml:id="cql-database-create"><info><title>First Time Creation of the Cassandra Database</title></info>
+
<para>
If you are setting up the CQL database for the first time, you need to
<para>
To create the database:
- <orderedlist>
+ <orderedlist inheritnum="ignore" continuation="restarts">
<listitem>
<para>
Export CQLSH_HOST environemnt variable:
Log into CQL:
<screen>
$ <userinput>cqlsh</userinput>
-cql>
+cql>
</screen>
</para>
</listitem>
<para>
Create the CQL keyspace:
<screen>
-cql> <userinput>CREATE KEYSPACE keyspace-name WITH replication = {'class' : 'SimpleStrategy','replication_factor' : 1};</userinput>
+cql> <userinput>CREATE KEYSPACE keyspace-name WITH replication = {'class' : 'SimpleStrategy','replication_factor' : 1};</userinput>
</screen>
(<replaceable>keyspace-name</replaceable> is the name you have
chosen for the keyspace)
</para>
</section>
- <section id="cql-upgrade">
- <title>Upgrading a CQL Database from an Earlier Version of Kea</title>
+ <section xml:id="cql-upgrade"><info><title>Upgrading a CQL Database from an Earlier Version of Kea</title></info>
+
<para>
Sometimes a new Kea version may use newer database schema, so
</section>
</section> <!-- end of CQL sections -->
- <section>
- <title>Using Read-Only Databases with Host Reservations</title>
+ <section><info><title>Using Read-Only Databases with Host Reservations</title></info>
+
<para>If a read-only database is used for storing host reservations,
Kea must be explicitly configured to operate on the database in
read-only mode.
</para>
</section>
- <section>
- <title>Limitations Related to the use of SQL Databases</title>
+ <section><info><title>Limitations Related to the use of SQL Databases</title></info>
+
<para>
The lease expiration time is stored in the SQL database for each lease
</section> <!-- End of Database sections -->
-</chapter>
+</chapter>
\ No newline at end of file
-<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE book PUBLIC "-//OASIS//DTD DocBook XML V4.2//EN"
-"http://www.oasis-open.org/docbook/xml/4.2/docbookx.dtd" [
-<!ENTITY mdash "—" >
-]>
+<!-- Converted by db4-upgrade version 1.0 -->
+<chapter xmlns="http://docbook.org/ns/docbook" version="5.0" xml:id="classify"><info><title>Client Classification</title></info>
+
-<chapter id="classify">
- <title>Client Classification</title>
-
- <section>
- <title>Client Classification Overview</title>
+ <section><info><title>Client Classification Overview</title></info>
+
<para>
In certain cases it is useful to differentiate between different
types of clients and treat them accordingly. Common reasons include:
<para>
The process of doing classification is conducted in three steps:
- <orderedlist>
+ <orderedlist inheritnum="ignore" continuation="restarts">
<listitem><para>
Assess an incoming packet and assign it to zero or more classes.
</para></listitem>
</note>
</section>
- <section id="classification-using-host-reservations">
- <title>Using Static Host Reservations In Classification</title>
+ <section xml:id="classification-using-host-reservations"><info><title>Using Static Host Reservations In Classification</title></info>
+
<para>Classes can be statically assigned to the clients using techniques described
in <xref linkend="reservation4-client-classes"/> and
<xref linkend="reservation6-client-classes"/>.
</para>
</section>
- <section id="classification-using-vendor">
- <title>Using Vendor Class Information In Classification</title>
+ <section xml:id="classification-using-vendor"><info><title>Using Vendor Class Information In Classification</title></info>
+
<para>
The server checks whether an incoming DHCPv4 packet includes
the vendor class identifier option (60) or an incoming DHCPv6 packet
includes the vendor class option (16). If it does, the content of that
- option is prepended with "VENDOR_CLASS_" and the result is interpreted
+ option is prepended with "VENDOR_CLASS_" and the result is interpreted
as a class. For example, modern cable modems will send this option with
- value "docsis3.0" and so the packet will belong to
- class "VENDOR_CLASS_docsis3.0".
+ value "docsis3.0" and so the packet will belong to
+ class "VENDOR_CLASS_docsis3.0".
</para>
</section>
- <section id="classification-using-expressions">
- <title>Using Expressions In Classification</title>
+ <section xml:id="classification-using-expressions"><info><title>Using Expressions In Classification</title></info>
+
<para>
The expression portion of classification contains operators and values.
All values are currently strings and operators take a string or strings and
return another string. When all the operations have completed
- the result should be a value of "true" or "false".
+ the result should be a value of "true" or "false".
The packet belongs to
the class (and the class name is added to the list of classes) if the result
- is "true". Expressions are written in standard format and can be nested.
+ is "true". Expressions are written in standard format and can be nested.
</para>
<para>
</para>
<para>
- <table frame="all" id="classification-values-list">
- <title>List of Classification Values</title>
- <tgroup cols='3'>
- <colspec colname='name' />
- <colspec colname='example' />
- <colspec colname='description' />
+ <table frame="all" xml:id="classification-values-list"><info><title>List of Classification Values</title></info>
+
+ <tgroup cols="3">
+ <colspec colname="name"/>
+ <colspec colname="example"/>
+ <colspec colname="description"/>
<thead>
<row>
<entry>Name</entry>
<entry>'123'</entry>
<entry>A 32 bit unsigned integer value</entry>
</row>
- <row></row>
+ <row/>
<row>
<entry>Binary content of the option</entry>
<entry>option[123].hex</entry>
<itemizedlist>
<listitem><para>
- Hexadecimal strings are converted into a string as expected. The starting "0X" or
- "0x" is removed and if the string is an odd number of characters a
- "0" is prepended to it.
+ Hexadecimal strings are converted into a string as expected. The starting "0X" or
+ "0x" is removed and if the string is an odd number of characters a
+ "0" is prepended to it.
</para></listitem>
<listitem><para>
<listitem><para>
Vendor option means Vendor-Identifying Vendor-specific Information
option in DHCPv4 (code 125, see
- <ulink url="http://tools.ietf.org/html/rfc3925#section-4">Section 4 of RFC 3925</ulink>) and
+ <link xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="http://tools.ietf.org/html/rfc3925#section-4">Section 4 of RFC 3925</link>) and
Vendor-specific Information Option in DHCPv6 (code 17, defined in
- <ulink url="https://tools.ietf.org/html/rfc3315#section-22.17">Section 22.17 of
- RFC 3315</ulink>). Vendor class option means Vendor-Identifying Vendor
+ <link xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="https://tools.ietf.org/html/rfc3315#section-22.17">Section 22.17 of
+ RFC 3315</link>). Vendor class option means Vendor-Identifying Vendor
Class Option in DHCPv4 (code 124, see
- <ulink url="http://tools.ietf.org/html/rfc3925#section-3">Section 3 of RFC 3925</ulink>) in DHCPv4 and
+ <link xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="http://tools.ietf.org/html/rfc3925#section-3">Section 3 of RFC 3925</link>) in DHCPv4 and
Class Option in DHCPv6 (code 16, see
- <ulink url="https://tools.ietf.org/html/rfc3315#section-22.16">Section 22.16 of RFC 3315</ulink>).
+ <link xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="https://tools.ietf.org/html/rfc3315#section-22.16">Section 22.16 of RFC 3315</link>).
Vendor options may
have sub-options that are referenced by their codes. Vendor class
options do not have sub-options, but rather data chunks, which are
accessed using option[60] expression.</para></listitem>
<listitem><para>
- <ulink url="http://tools.ietf.org/html/rfc3925">RFC3925</ulink> and
- <ulink url="http://tools.ietf.org/html/rfc3315">RFC3315</ulink>
+ <link xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="http://tools.ietf.org/html/rfc3925">RFC3925</link> and
+ <link xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="http://tools.ietf.org/html/rfc3315">RFC3315</link>
allow for multiple instances of vendor options
to appear in a single message. The client classification code currently
examines the first instance if more than one appear. For vendor.enterprise
</itemizedlist>
<para>
- <table frame="all" id="classification-expressions-list">
- <title>List of Classification Expressions</title>
- <tgroup cols='3'>
- <colspec colname='name' />
- <colspec colname='example' />
- <colspec colname='description' />
+ <table frame="all" xml:id="classification-expressions-list"><info><title>List of Classification Expressions</title></info>
+
+ <tgroup cols="3">
+ <colspec colname="name"/>
+ <colspec colname="example"/>
+ <colspec colname="description"/>
<thead>
<row>
<entry>Name</entry>
</table>
</para>
- <section>
- <title>Logical operators</title>
+ <section><info><title>Logical operators</title></info>
+
The Not, And and Or logical operators are the common operators. Not
has the highest precedence and Or the lowest. And and Or are (left)
associative, parentheses around a logical expression can be used
(without parentheses "A and B or C" means "(A and B) or C").
</section>
- <section>
- <title>Substring</title>
+ <section><info><title>Substring</title></info>
+
The substring operator "substring(value, start, length)" accepts both positive and
negative values for the starting position and the length. For "start", a value of
0 is the first byte in the string while -1 is the last byte. If the starting
substring('foobar', 10, 2) == ''
</screen>
</section>
- <section>
- <title>Concat</title>
+ <section><info><title>Concat</title></info>
+
The concat function "concat(string1, string2)" returns the
concatenation of its two arguments. For instance:
<screen>
The expression for each class is executed on each packet received.
If the expressions are overly complex, the time taken to execute
them may impact the performance of the server. If you need
- complex or time consuming expressions you should write a <link
- linkend='hooks-libraries'>hook</link> to perform the necessary work.
+ complex or time consuming expressions you should write a <link linkend="hooks-libraries">hook</link> to perform the necessary work.
</para> </note>
- <section id="classification-configuring">
- <title>Configuring Classes</title>
+ <section xml:id="classification-configuring"><info><title>Configuring Classes</title></info>
+
<para>
A class contains three items: a name, a test expression and option data.
The name must exist and must be unique amongst all classes. The test
</para>
<para>
- In the following example the class named "Client_foo" is defined.
+ In the following example the class named "Client_foo" is defined.
It is comprised of all clients whose client ids (option 61) start with the
- string "foo". Members of this class will be given 192.0.2.1 and
+ string "foo". Members of this class will be given 192.0.2.1 and
192.0.2.2 as their domain name servers.
<screen>
<para>
This example shows a client class being defined for use by the DHCPv6 server.
- In it the class named "Client_enterprise" is defined. It is comprised
+ In it the class named "Client_enterprise" is defined. It is comprised
of all clients who's client identifiers start with the given hex string (which
would indicate a DUID based on an enterprise id of 0xAABBCCDD). Members of this
class will be given an 2001:db8:0::1 and 2001:db8:2::1 as their domain name servers.
</para>
</section>
- <section id="classification-subnets">
- <title>Configuring Subnets With Class Information</title>
+ <section xml:id="classification-subnets"><info><title>Configuring Subnets With Class Information</title></info>
+
<para>
In certain cases it beneficial to restrict access to certain subnets
only to clients that belong to a given class, using the "client-class"
</para>
</section>
- <section>
- <title>Using Classes</title>
+ <section><info><title>Using Classes</title></info>
+
<para>
Currently classes can be used for two functions. They can supply options
to the members of the class and they can be used to choose a subnet from which an
<para>
When supplying options, options defined as part of the class definition
- are considered "class globals". They will override any global options that
+ are considered "class globals". They will override any global options that
may be defined and in turn will be overridden by any options defined for an
individual subnet.
</para>
</section>
- <section>
- <title>Classes and Hooks</title>
+ <section><info><title>Classes and Hooks</title></info>
+
<para>
You may use a hook to classify your packets. This may be useful if the
expression would either be complex or time consuming and be easier or
</para>
</section>
- <section>
- <title>Debugging Expressions</title>
+ <section><info><title>Debugging Expressions</title></info>
+
<para>
While you are constructing your classification expressions you may
find it useful to enable logging see <xref linkend="logging"/> for
<para>
In order to understand the logging statements one must understand a
bit about how expressions are evaluated, for a more complete description
- refer to the design document at <ulink url="http://kea.isc.org/wiki/KeaDesigns"/>.
+ refer to the design document at <uri xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="http://kea.isc.org/wiki/KeaDesigns">http://kea.isc.org/wiki/KeaDesigns</uri>.
In brief there are two structures used during the evaluation of an expression:
a list of tokens which represent the expressions and a value stack which
represents the values being manipulated.
</para></note>
</section>
-</chapter>
+</chapter>
\ No newline at end of file
-<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE book PUBLIC "-//OASIS//DTD DocBook XML V4.2//EN"
-"http://www.oasis-open.org/docbook/xml/4.2/docbookx.dtd" [
-<!ENTITY mdash "—" >
-]>
-<chapter id="kea-config">
- <title>Kea Configuration</title>
+<!-- Converted by db4-upgrade version 1.0 -->
+<chapter xmlns="http://docbook.org/ns/docbook" version="5.0" xml:id="kea-config"><info><title>Kea Configuration</title></info>
+
<para>Kea is using JSON structures to handle configuration. Previously
we there was a concept of other configuration backends, but that never was
implemented and the idea was abandoned.</para>
- <section id="json">
- <title>JSON Configuration</title>
+ <section xml:id="json"><info><title>JSON Configuration</title></info>
+
<para>JSON is notation used throughout the Kea project. The most obvious
usage is for configuration file, but it is also used for sending commands
over Management API (see <xref linkend="ctrl-channel"/>) and for
The JSON backend uses certain signals to influence Kea. The
configuration file is specified upon startup using the -c parameter.</para>
- <section id="json-format">
- <title>JSON Syntax</title>
+ <section xml:id="json-format"><info><title>JSON Syntax</title></info>
+
<para>Configuration files for DHCPv4, DHCPv6 and DDNS modules are defined
- in an extended JSON format. Basic JSON is defined in <ulink
- url="http://tools.ietf.org/html/rfc7159">RFC 7159</ulink>. Note that Kea
+ in an extended JSON format. Basic JSON is defined in <link xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="http://tools.ietf.org/html/rfc7159">RFC 7159</link>. Note that Kea
1.2 introduces a new parser that is better at following the JSON spec. In
particular, the only values allowed for boolean are true or false (all
lowercase). The capitalized versions (True or False) are not accepted.
where extra parameters may appear are denoted by an ellipsis.</para>
</section>
- <section>
- <title>Simplified Notation</title>
+ <section><info><title>Simplified Notation</title></info>
+
<para>It is sometimes convenient to refer to a specific element in the
configuration hierarchy. Each hierarchy level is separated by a slash.
</section>
-</chapter>
+</chapter>
\ No newline at end of file
-<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE book PUBLIC "-//OASIS//DTD DocBook XML V4.2//EN"
-"http://www.oasis-open.org/docbook/xml/4.2/docbookx.dtd" [
-<!ENTITY mdash "—" >
-<!ENTITY % version SYSTEM "version.ent">
-%version;
-]>
-
- <chapter id="ctrl-channel">
- <title>Management API</title>
+<!-- Converted by db4-upgrade version 1.0 -->
+<chapter xmlns="http://docbook.org/ns/docbook" version="5.0" xml:id="ctrl-channel"><info><title>Management API</title></info>
+
<para>A classic approach to daemon configuration assumes that
the server's configuration is stored in configuration files
<para>Currently the only supported type of control channel
is UNIX stream socket. For details how to configure it, see
- <xref linkend="dhcp4-ctrl-channel" /> and <xref
- linkend="dhcp6-ctrl-channel" />. It is likely that support
+ <xref linkend="dhcp4-ctrl-channel"/> and <xref linkend="dhcp6-ctrl-channel"/>. It is likely that support
for other control channel types will be added in the future.
</para>
- <section id="ctrl-channel-syntax">
- <title>Data Syntax</title>
+ <section xml:id="ctrl-channel-syntax"><info><title>Data Syntax</title></info>
+
<para>Communication over the control channel is conducted using JSON
structures. If configured, Kea will open a socket and listen
for incoming connections. A process connecting to this socket
if it contains no data values.</para>
</section>
- <section id="ctrl-channel-client">
- <title>Using the Control Channel</title>
+ <section xml:id="ctrl-channel-client"><info><title>Using the Control Channel</title></info>
+
<para>Kea does not currently provide a client for using the control channel. The primary
reason for this is the expectation is that the entity using the control channel
how one can take advantage of the API.</para>
<para>The easiest way is to use a tool called <command>socat</command>,
- a tool available from <ulink url="http://www.dest-unreach.org/socat/">socat
- homepage</ulink>, but it is also widely available in Linux and BSD
+ a tool available from <link xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="http://www.dest-unreach.org/socat/">socat
+ homepage</link>, but it is also widely available in Linux and BSD
distributions. Once Kea is started, one could connect to the control
interface using the following command:
<screen>
</section>
- <section id="commands-common">
- <title>Commands Supported by Both the DHCPv4 and DHCPv6 Servers</title>
+ <section xml:id="commands-common"><info><title>Commands Supported by Both the DHCPv4 and DHCPv6 Servers</title></info>
+
- <section id="command-leases-reclaim">
- <title>leases-reclaim</title>
+ <section xml:id="command-leases-reclaim"><info><title>leases-reclaim</title></info>
+
<para>
<emphasis>leases-reclaim</emphasis> command instructs the server to
reclaim all expired leases immediately. The command has the following
about the processing of expired leases (leases reclamation).</para>
</section>
- <section id="command-list-commands">
- <title>list-commands</title>
+ <section xml:id="command-list-commands"><info><title>list-commands</title></info>
+
<para>
The <emphasis>list-commands</emphasis> command retrieves a list of all
</para>
</section> <!-- end of command-list-commands -->
- <section id="command-shutdown">
- <title>shutdown</title>
+ <section xml:id="command-shutdown"><info><title>shutdown</title></info>
+
<para>
The <emphasis>shutdown</emphasis> command instructs the server to initiate
</section> <!-- end of commands supported by both servers -->
- </chapter>
+ </chapter>
\ No newline at end of file
-<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE book PUBLIC "-//OASIS//DTD DocBook XML V4.2//EN"
-"http://www.oasis-open.org/docbook/xml/4.2/docbookx.dtd" [
-<!ENTITY mdash "—" >
-]>
-
- <chapter id="dhcp-ddns-server">
- <title>The DHCP-DDNS Server</title>
+<!-- Converted by db4-upgrade version 1.0 -->
+<chapter xmlns="http://docbook.org/ns/docbook" version="5.0" xml:id="dhcp-ddns-server"><info><title>The DHCP-DDNS Server</title></info>
+
<para>
The DHCP-DDNS Server (kea-dhcp-ddns, known informally as D2) conducts the client side of
- the DDNS protocol (defined in <ulink url="http://tools.ietf.org/html/rfc2136">RFC 2136</ulink>)
+ the DDNS protocol (defined in <link xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="http://tools.ietf.org/html/rfc2136">RFC 2136</link>)
on behalf of the DHCPv4 and DHCPv6
servers (kea-dhcp4 and kea-dhcp6 respectively). The DHCP servers construct
DDNS update requests, known as NameChangeRequests (NCRs), based upon DHCP
rejected. Finally, if there are no reverse DDNS Domains defined, D2 will
simply disregard the reverse update portion of requests.
</para>
- <section id="dhcp-ddns-server-start-stop">
- <title>Starting and Stopping the DHCP-DDNS Server</title>
+ <section xml:id="dhcp-ddns-server-start-stop"><info><title>Starting and Stopping the DHCP-DDNS Server</title></info>
+
<para>
<command>kea-dhcp-ddns</command> is the Kea DHCP-DDNS server
</section> <!-- end start-stop -->
- <section id="d2-configuration">
- <title>Configuring the DHCP-DDNS Server</title>
+ <section xml:id="d2-configuration"><info><title>Configuring the DHCP-DDNS Server</title></info>
+
<para>
Before starting <command>kea-dhcp-ddns</command> module for the
first time, a configuration file needs to be created. The following default
</simpara>
</listitem>
</itemizedlist>
- <section id="d2-server-parameter-config">
- <title>Global Server Parameters</title>
+ <section xml:id="d2-server-parameter-config"><info><title>Global Server Parameters</title></info>
+
<itemizedlist>
<listitem><simpara>
</note>
</section> <!-- "d2-server-parameter-config" -->
- <section id="d2-tsig-key-list-config">
- <title>TSIG Key List</title>
+ <section xml:id="d2-tsig-key-list-config"><info><title>TSIG Key List</title></info>
+
<para>
A DDNS protocol exchange can be conducted with or without TSIG
- (defined in <ulink url="http://tools.ietf/org/html/rfc2845">RFC
- 2845</ulink>). This configuration section allows the administrator
+ (defined in <link xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="http://tools.ietf/org/html/rfc2845">RFC
+ 2845</link>). This configuration section allows the administrator
to define the set of TSIG keys that may be used in such
exchanges.</para>
</section>
<!-- "d2-tsig-key-list-config" -->
- <section id="d2-forward-ddns-config">
- <title>Forward DDNS</title>
+ <section xml:id="d2-forward-ddns-config"><info><title>Forward DDNS</title></info>
+
<para>
The Forward DDNS section is used to configure D2's forward update
behavior. Currently it contains a single parameter, the catalog of
By default, this list is empty, which will cause the server to ignore
the forward update portions of requests.
</para>
- <section id="add-forward-ddns-domain">
- <title>Adding Forward DDNS Domains</title>
+ <section xml:id="add-forward-ddns-domain"><info><title>Adding Forward DDNS Domains</title></info>
+
<para>
A forward DDNS Domain maps a forward DNS zone to a set of
DNS servers which maintain the forward DNS data (i.e. name to
server to it.
</para>
- <section id="add-forward-dns-servers">
- <title>Adding Forward DNS Servers</title>
+ <section xml:id="add-forward-dns-servers"><info><title>Adding Forward DNS Servers</title></info>
+
<para>
This section describes how to add DNS servers to a Forward DDNS Domain.
Repeat them for as many servers as desired for a each domain.
</section> <!-- "d2-forward-ddns-config" -->
- <section id="d2-reverse-ddns-config">
- <title>Reverse DDNS</title>
+ <section xml:id="d2-reverse-ddns-config"><info><title>Reverse DDNS</title></info>
+
<para>
The Reverse DDNS section is used to configure D2's reverse update
behavior, and the concepts are the same as for the forward DDNS
By default, this list is empty, which will cause the server to ignore
the reverse update portions of requests.
</para>
- <section id="add-reverse-ddns-domain">
- <title>Adding Reverse DDNS Domains</title>
+ <section xml:id="add-reverse-ddns-domain"><info><title>Adding Reverse DDNS Domains</title></info>
+
<para>
A reverse DDNS Domain maps a reverse DNS zone to a set of DNS
servers which maintain the reverse DNS data (address to name
server to it.
</para>
- <section id="add-reverse-dns-servers">
- <title>Adding Reverse DNS Servers</title>
+ <section xml:id="add-reverse-dns-servers"><info><title>Adding Reverse DNS Servers</title></info>
+
<para>
This section describes how to add DNS servers to a Reverse DDNS Domain.
Repeat them for as many servers as desired for each domain.
</section> <!-- "d2-reverse-ddns-config" -->
- <section id="d2-exmaple-config">
- <title>Example DHCP-DDNS Server Configuration</title>
+ <section xml:id="d2-exmaple-config"><info><title>Example DHCP-DDNS Server Configuration</title></info>
+
<para>
This section provides an example DHCP-DDNS server configuration based
on a small example network. Let's suppose our example network has
three domains, each with their own subnet.
- <table>
- <title>Our example network</title>
- <tgroup cols='4' align='left'>
- <colspec colname='domain'/>
- <colspec colname='subnet'/>
- <colspec colname='fservers'/>
- <colspec colname='rservers'/>
+ <table><info><title>Our example network</title></info>
+
+ <tgroup cols="4" align="left">
+ <colspec colname="domain"/>
+ <colspec colname="subnet"/>
+ <colspec colname="fservers"/>
+ <colspec colname="rservers"/>
<thead>
<row>
<entry>Domain</entry>
</para>
<para>
We need to construct three forward DDNS Domains:
- <table>
- <title>Forward DDNS Domains Needed</title>
- <tgroup cols='3' align='left'>
- <colspec colname='num'/>
- <colspec colname='name'/>
- <colspec colname='servers'/>
+ <table><info><title>Forward DDNS Domains Needed</title></info>
+
+ <tgroup cols="3" align="left">
+ <colspec colname="num"/>
+ <colspec colname="name"/>
+ <colspec colname="servers"/>
<thead>
<row>
<entry>#</entry>
</para>
<para>
Similarly, we need to construct the three reverse DDNS Domains:
- <table>
- <title>Reverse DDNS Domains Needed</title>
- <tgroup cols='3' align='left'>
- <colspec colname='num'/>
- <colspec colname='DDNS Domain name'/>
- <colspec colname='DDNS Domain DNS Servers'/>
+ <table><info><title>Reverse DDNS Domains Needed</title></info>
+
+ <tgroup cols="3" align="left">
+ <colspec colname="num"/>
+ <colspec colname="DDNS Domain name"/>
+ <colspec colname="DDNS Domain DNS Servers"/>
<thead>
<row>
<entry>#</entry>
</para>
</section> <!-- end of "d2-example" -->
</section> <!-- end of section "d2-configuration" -->
- <section>
- <title>DHCP-DDNS Server Limitations</title>
+ <section><info><title>DHCP-DDNS Server Limitations</title></info>
+
<para>The following are the current limitations of the DHCP-DDNS Server.</para>
<itemizedlist>
<listitem>
</listitem>
</itemizedlist>
</section>
- </chapter> <!-- DHCP-DDNS Server -->
+ </chapter>
\ No newline at end of file
-<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE book PUBLIC "-//OASIS//DTD DocBook XML V4.2//EN"
-"http://www.oasis-open.org/docbook/xml/4.2/docbookx.dtd" [
-<!ENTITY mdash "—" >
-]>
+<!-- Converted by db4-upgrade version 1.0 -->
+<chapter xmlns="http://docbook.org/ns/docbook" version="5.0" xml:id="dhcp4"><info><title>The DHCPv4 Server</title></info>
+
- <chapter id="dhcp4">
- <title>The DHCPv4 Server</title>
-
- <section id="dhcp4-start-stop">
- <title>Starting and Stopping the DHCPv4 Server</title>
+ <section xml:id="dhcp4-start-stop"><info><title>Starting and Stopping the DHCPv4 Server</title></info>
+
<para>
It is recommended that the Kea DHCPv4 server be started and stopped
</para>
</section>
- <section id="dhcp4-configuration">
- <title>DHCPv4 Server Configuration</title>
-<section>
- <title>Introduction</title>
+ <section xml:id="dhcp4-configuration"><info><title>DHCPv4 Server Configuration</title></info>
+
+<section><info><title>Introduction</title></info>
+
<para>
This section explains how to configure the DHCPv4 server using the
Kea configuration backend. (Kea configuration using any other
for any given scope must be separated by a comma and there must not be a comma
after the last parameter. When reordering a configuration file, keep in mind that
moving a parameter to or from the last position in a given scope may also require
-moving the comma. The second caveat is that it is uncommon — although
-legal JSON — to
+moving the comma. The second caveat is that it is uncommon — although
+legal JSON — to
repeat the same parameter multiple times. If that happens, the last occurrence of a
given parameter in a given scope is used while all previous instances are
ignored. This is unlikely to cause any confusion as there are no real life
rebind procedures. Note that <command>renew-timer</command> and
<command>rebind-timer</command> are optional. If they are not specified the
client will select values for T1 and T2 timers according to the
-<ulink url="http://tools.ietf.org/html/rfc2131">RFC 2131</ulink>.</para>
+<link xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="http://tools.ietf.org/html/rfc2131">RFC 2131</link>.</para>
<para>The <command>interfaces-config</command> map specifies the server
configuration concerning the network interfaces, on which the server should
be followed by a comma and another object definition.</para>
</section>
-<section>
- <title>Lease Storage</title>
+<section><info><title>Lease Storage</title></info>
+
<para>All leases issued by the server are stored in the lease database.
Currently there are four database backends available: memfile (which is the
default backend), MySQL, PostgreSQL and Cassandra.</para>
-<section>
- <title>Memfile - Basic Storage for Leases</title>
+<section><info><title>Memfile - Basic Storage for Leases</title></info>
+
<para>The server is able to store lease data in different repositories. Larger
- deployments may elect to store leases in a database. <xref
- linkend="database-configuration4"/> describes this option. In typical
+ deployments may elect to store leases in a database. <xref linkend="database-configuration4"/> describes this option. In typical
smaller deployments though, the server will store lease information in a CSV file rather
than a database. As well as requiring less administration, an
advantage of using a file for storage is that it
file used by the server to record lease updates. There are also other files
being created as a side effect of the lease file cleanup. The detailed
description of the LFC is located on the Kea wiki:
- <ulink url="http://kea.isc.org/wiki/LFCDesign"/>.
+ <uri xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="http://kea.isc.org/wiki/LFCDesign">http://kea.isc.org/wiki/LFCDesign</uri>.
</para>
</section>
-<section id="database-configuration4">
- <title>Lease Database Configuration</title>
+<section xml:id="database-configuration4"><info><title>Lease Database Configuration</title></info>
+
<note>
<para>Lease database access information must be configured for the DHCPv4 server,
</section>
</section>
-<section id="hosts4-storage">
- <title>Hosts Storage</title>
+<section xml:id="hosts4-storage"><info><title>Hosts Storage</title></info>
+
<para>Kea is also able to store information about host reservations in the
database. The hosts database configuration uses the same syntax as the lease
database. In fact, a Kea server opens independent connections for each
from the configuration file are checked first and external storage is checked
later, if necessary.</para>
-<section id="hosts-database-configuration4">
- <title>DHCPv4 Hosts Database Configuration</title>
+<section xml:id="hosts-database-configuration4"><info><title>DHCPv4 Hosts Database Configuration</title></info>
+
<para>Hosts database configuration is controlled through the Dhcp4/hosts-database
parameters. If enabled, the type of the database must be set to "mysql" or
"". (This is also the default.)</para>
</section>
-<section id="read-only-database-configuration4">
-<title>Using Read-Only Databases for Host Reservations</title>
+<section xml:id="read-only-database-configuration4"><info><title>Using Read-Only Databases for Host Reservations</title></info>
+
<para>
In some deployments the database user whose name is specified in the database backend
configuration may not have write privileges to the database. This is often
</section>
-<section id="dhcp4-interface-configuration">
- <title>Interface Configuration</title>
+<section xml:id="dhcp4-interface-configuration"><info><title>Interface Configuration</title></info>
+
<para>The DHCPv4 server has to be configured to listen on specific network
interfaces. The simplest network interface configuration tells the server to
listen on all available interfaces:
</note>
</section>
-<section id="dhcpinform-unicast-issues">
- <title>Issues with Unicast Responses to DHCPINFORM</title>
+<section xml:id="dhcpinform-unicast-issues"><info><title>Issues with Unicast Responses to DHCPINFORM</title></info>
+
<para>The use of UDP sockets has certain benefits in deployments
where the server receives only relayed traffic; these benefits are
mentioned in <xref linkend="dhcp4-interface-configuration"/>. From
<para>In this section we are focusing on the case when the server
receives the DHCPINFORM message from the client via a relay. According
- to <ulink url="http://tools.ietf.org/html/rfc2131">RFC 2131</ulink>,
+ to <link xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="http://tools.ietf.org/html/rfc2131">RFC 2131</link>,
the server should unicast the DHCPACK response to the address carried in
the "ciaddr" field. When the UDP socket is in use, the DHCP server
relies on the low level functions of an operating system to build the
</para>
</section>
-<section id="ipv4-subnet-id">
- <title>IPv4 Subnet Identifier</title>
+<section xml:id="ipv4-subnet-id"><info><title>IPv4 Subnet Identifier</title></info>
+
<para>
The subnet identifier is a unique number associated with a particular subnet.
In principle, it is used to associate clients' leases with their respective subnets.
id -->
</section>
-<section id="dhcp4-address-config">
- <title>Configuration of IPv4 Address Pools</title>
+<section xml:id="dhcp4-address-config"><info><title>Configuration of IPv4 Address Pools</title></info>
+
<para>
The main role of a DHCPv4 server is address assignment. For this, the server has to
be configured with at least one subnet and one pool of dynamic addresses for it to manage.
</para>
</section>
- <section id="dhcp4-std-options">
- <title>Standard DHCPv4 Options</title>
+ <section xml:id="dhcp4-std-options"><info><title>Standard DHCPv4 Options</title></info>
+
<para>
One of the major features of the DHCPv4 server is to provide configuration
options to clients. Most of the options are sent by the server only if the
The <command>code</command> parameter specifies the option code, which must match one of the
values from that list. The next line specifies the option space, which must always
be set to "dhcp4" as these are standard DHCPv4 options. For
- other option spaces, including custom option spaces, see <xref
- linkend="dhcp4-option-spaces"/>. The next line specifies the format in
+ other option spaces, including custom option spaces, see <xref linkend="dhcp4-option-spaces"/>. The next line specifies the format in
which the data will be entered: use of CSV (comma
separated values) is recommended. The sixth line gives the actual value to
be sent to clients. Data is specified as normal text, with
</para>
<para>
- <table frame="all" id="dhcp4-std-options-list">
- <title>List of standard DHCPv4 options</title>
- <tgroup cols='5'>
- <colspec colname='name'/>
- <colspec colname='code' align='center'/>
- <colspec colname='type' align='center'/>
- <colspec colname='array' align='center'/>
- <colspec colname='always-returned' align='center'/>
+ <table frame="all" xml:id="dhcp4-std-options-list"><info><title>List of standard DHCPv4 options</title></info>
+
+ <tgroup cols="5">
+ <colspec colname="name"/>
+ <colspec colname="code" align="center"/>
+ <colspec colname="type" align="center"/>
+ <colspec colname="array" align="center"/>
+ <colspec colname="always-returned" align="center"/>
<thead>
<row>
<entry>Name</entry>
</para>
<para>
- <table frame="all" id="dhcp4-std-options-list-part2">
- <title>List of standard DHCPv4 options (continued)</title>
- <tgroup cols='5'>
- <colspec colname='name'/>
- <colspec colname='code' align='center'/>
- <colspec colname='type' align='center'/>
- <colspec colname='array' align='center'/>
- <colspec colname='always-returned' align='center'/>
+ <table frame="all" xml:id="dhcp4-std-options-list-part2"><info><title>List of standard DHCPv4 options (continued)</title></info>
+
+ <tgroup cols="5">
+ <colspec colname="name"/>
+ <colspec colname="code" align="center"/>
+ <colspec colname="type" align="center"/>
+ <colspec colname="array" align="center"/>
+ <colspec colname="always-returned" align="center"/>
<thead>
<row>
<entry>Name</entry>
</para>
<para>
- <table frame="all" id="dhcp-types">
- <title>List of standard DHCP option types</title>
- <tgroup cols='2'>
- <colspec colname='name'/>
- <colspec colname='meaning'/>
+ <table frame="all" xml:id="dhcp-types"><info><title>List of standard DHCP option types</title></info>
+
+ <tgroup cols="2">
+ <colspec colname="name"/>
+ <colspec colname="meaning"/>
<thead>
<row><entry>Name</entry><entry>Meaning</entry></row>
</thead>
<row><entry>ipv4-address</entry><entry>IPv4 address in the usual dotted-decimal notation (e.g. 192.0.2.1)</entry></row>
<row><entry>ipv6-address</entry><entry>IPv6 address in the usual colon notation (e.g. 2001:db8::1)</entry></row>
<row><entry>ipv6-prefix</entry><entry>IPv6 prefix and prefix length specified using CIDR notation, e.g. 2001:db8:1::/64. This data type is used to represent an 8-bit field conveying a prefix length and the variable length prefix value</entry></row>
- <row><entry>psid</entry><entry>PSID and PSID length separated by a slash, e.g. 3/4 specifies PSID=3 and PSID length=4. In the wire format it is represented by an 8-bit field carrying PSID length (in this case equal to 4) and the 16-bits long PSID value field (in this case equal to "0011000000000000b" using binary notation). Allowed values for a PSID length are 0 to 16. See <ulink url="http://tools.ietf.org/html/rfc7597">RFC 7597</ulink> for the details about the PSID wire representation</entry></row>
+ <row><entry>psid</entry><entry>PSID and PSID length separated by a slash, e.g. 3/4 specifies PSID=3 and PSID length=4. In the wire format it is represented by an 8-bit field carrying PSID length (in this case equal to 4) and the 16-bits long PSID value field (in this case equal to "0011000000000000b" using binary notation). Allowed values for a PSID length are 0 to 16. See <link xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="http://tools.ietf.org/html/rfc7597">RFC 7597</link> for the details about the PSID wire representation</entry></row>
<row><entry>record</entry><entry>Structured data that may comprise any types (except "record" and "empty")</entry></row>
<row><entry>string</entry><entry>Any text</entry></row>
<row><entry>uint8</entry><entry>8 bit unsigned integer with allowed values 0 to 255</entry></row>
</para>
</section>
- <section id="dhcp4-custom-options">
- <title>Custom DHCPv4 options</title>
+ <section xml:id="dhcp4-custom-options"><info><title>Custom DHCPv4 options</title></info>
+
<para>Kea supports custom (non-standard) DHCPv4 options. Assume
that we want to define a new DHCPv4 option called "foo" which
will have a code 222 and will convey a single unsigned 32 bit
</note>
</section>
- <section id="dhcp4-vendor-opts">
- <title>DHCPv4 Vendor Specific Options</title>
+ <section xml:id="dhcp4-vendor-opts"><info><title>DHCPv4 Vendor Specific Options</title></info>
+
<para>
Currently there are two option spaces defined for the DHCPv4 daemon:
"dhcp4" (for the top level DHCPv4 options) and
</para>
</section>
- <section id="dhcp4-option-spaces">
+ <section xml:id="dhcp4-option-spaces"><info><title>Nested DHCPv4 Options (Custom Option Spaces)</title></info>
- <title>Nested DHCPv4 Options (Custom Option Spaces)</title>
+
<para>It is sometimes useful to define a completely new option
space. This is the case when user creates new option in the
standard option space ("dhcp4") and wants this option
value as well as the sub-options, the <command>type</command> value would have to be set to "uint16" in
the option definition. (Such an option would then have the following
data structure: DHCP header, uint16 value, sub-options.) The value specified
- with the <command>data</command> parameter — which should be a valid integer enclosed in quotes,
- e.g. "123" — would then be assigned to the uint16 field in the "container" option.
+ with the <command>data</command> parameter — which should be a valid integer enclosed in quotes,
+ e.g. "123" — would then be assigned to the uint16 field in the "container" option.
</para>
</section>
- <section id="dhcp4-option-data-defaults">
- <title>Unspecified Parameters for DHCPv4 Option Configuration</title>
+ <section xml:id="dhcp4-option-data-defaults"><info><title>Unspecified Parameters for DHCPv4 Option Configuration</title></info>
+
<para>In many cases it is not required to specify all parameters for
an option configuration and the default values may be used. However, it is
important to understand the implications of not specifying some of them
</section>
- <section id="dhcp4-stateless-configuration">
- <title>Stateless Configuration of DHCPv4 Clients</title>
+ <section xml:id="dhcp4-stateless-configuration"><info><title>Stateless Configuration of DHCPv4 Clients</title></info>
+
<para>The DHCPv4 server supports the stateless client configuration whereby the
client has an IP address configured (e.g. using manual configuration) and only
contacts the server to obtain other configuration parameters, e.g. addresses of DNS servers.
</para>
</section>
- <section id="dhcp4-client-classifier">
- <title>Client Classification in DHCPv4</title>
+ <section xml:id="dhcp4-client-classifier"><info><title>Client Classification in DHCPv4</title></info>
+
<para>
The DHCPv4 server includes support for client classification. For a deeper
discussion of the classification process see <xref linkend="classify"/>.
clients that do not meet class criteria to be denied any service altogether.
</para></note>
- <section>
- <title>Setting Fixed Fields in Classification</title>
+ <section><info><title>Setting Fixed Fields in Classification</title></info>
+
<para>
It is possible to specify that clients belonging to a particular class
should receive packets with specific values in certain fixed fields.
make the distinction. The following example checks if the client
identifies itself as PXE device with architecture EFI x86-64, and
sets several fields if it does. See
- <ulink url="https://tools.ietf.org/html/rfc4578#section-2.1">Section 2.1 of RFC 4578</ulink>)
+ <link xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="https://tools.ietf.org/html/rfc4578#section-2.1">Section 2.1 of RFC 4578</link>)
or the documentation of your client for specific values.
</para>
<screen>
</para>
</section>
- <section>
- <title>Using Vendor Class Information in Classification</title>
+ <section><info><title>Using Vendor Class Information in Classification</title></info>
+
<para>
The server checks whether an incoming packet includes the vendor class identifier
option (60). If it does, the content of that option is prepended with
- "VENDOR_CLASS_", it is interpreted as a class. For example,
- modern cable modems will send this option with value "docsis3.0"
- and as a result the packet will belong to class "VENDOR_CLASS_docsis3.0".
+ "VENDOR_CLASS_", it is interpreted as a class. For example,
+ modern cable modems will send this option with value "docsis3.0"
+ and as a result the packet will belong to class "VENDOR_CLASS_docsis3.0".
</para>
<note>
</section>
- <section>
- <title>Defining and Using Custom Classes</title>
+ <section><info><title>Defining and Using Custom Classes</title></info>
+
<para>
The following example shows how to configure a class using an expression
and a subnet that makes use of the class. This configuration defines the
- class named "Client_foo".
+ class named "Client_foo".
It is comprised of all clients who's client ids (option 61) start with the
- string "foo". Members of this class will be given addresses from
+ string "foo". Members of this class will be given addresses from
192.0.2.10 to 192.0.2.20 and the addresses of their DNS servers
set to 192.0.2.1 and 192.0.2.2.
</section>
</section>
- <section id="dhcp4-ddns-config">
- <title>DDNS for DHCPv4</title>
+ <section xml:id="dhcp4-ddns-config"><info><title>DDNS for DHCPv4</title></info>
+
<para>
As mentioned earlier, kea-dhcp4 can be configured to generate requests to the
DHCP-DDNS server (referred to here as "D2" ) to update DNS entries. These requests are known as
NameChangeRequests or NCRs. Each NCR contains the following information:
- <orderedlist>
+ <orderedlist inheritnum="ignore" continuation="restarts">
<listitem><para>
Whether it is a request to add (update) or remove DNS entries
</para></listitem>
</itemizedlist>
</para>
- <section id="dhcpv4-d2-io-config">
- <title>DHCP-DDNS Server Connectivity</title>
+ <section xml:id="dhcpv4-d2-io-config"><info><title>DHCP-DDNS Server Connectivity</title></info>
+
<para>
In order for NCRs to reach the D2 server, kea-dhcp4 must be able
to communicate with it. kea-dhcp4 uses the following configuration
</screen>
</para>
</section>
- <section id="dhcpv4-d2-rules-config">
- <title>When Does the kea-dhcp4 Server Generate DDNS Requests?</title>
+ <section xml:id="dhcpv4-d2-rules-config"><info><title>When Does the kea-dhcp4 Server Generate DDNS Requests?</title></info>
+
<para>kea-dhcp4 follows the behavior prescribed for DHCP servers in
- <ulink url="http://tools.ietf.org/html/rfc4702">RFC 4702</ulink>.
+ <link xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="http://tools.ietf.org/html/rfc4702">RFC 4702</link>.
It is important to keep in mind that kea-dhcp4 provides the initial decision
making of when and what to update and forwards that information to D2 in
the form of NCRs. Carrying out the actual DNS updates and dealing with
</para>
<para>
In general, kea-dhcp4 will generate DDNS update requests when:
- <orderedlist>
+ <orderedlist inheritnum="ignore" continuation="restarts">
<listitem><para>
A new lease is granted in response to a DHCP REQUEST
</para></listitem>
will respect the FQDN N and S flags specified by the client as shown
in the following table:
</para>
- <table id="fqdn-flag-table">
- <title>Default FQDN Flag Behavior</title>
- <tgroup cols='4' align='left'>
- <colspec colname='cflags'/>
- <colspec colname='meaning'/>
- <colspec colname='response'/>
- <colspec colname='sflags'/>
+ <table xml:id="fqdn-flag-table"><info><title>Default FQDN Flag Behavior</title></info>
+
+ <tgroup cols="4" align="left">
+ <colspec colname="cflags"/>
+ <colspec colname="meaning"/>
+ <colspec colname="response"/>
+ <colspec colname="sflags"/>
<thead>
<row>
<entry>Client Flags:N-S</entry>
</para>
<para>
(Note that the flag combination N=1, S=1 is prohibited according to
- <ulink url="http://tools.ietf.org/html/rfc4702">RFC 4702</ulink>. If such a
+ <link xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="http://tools.ietf.org/html/rfc4702">RFC 4702</link>. If such a
combination is received from the client, the packet will be dropped by kea-dhcp4.)
</para>
<para>
</para>
</section>
- <section id="dhcpv4-fqdn-name-generation">
- <title>kea-dhcp4 name generation for DDNS update requests</title>
+ <section xml:id="dhcpv4-fqdn-name-generation"><info><title>kea-dhcp4 name generation for DDNS update requests</title></info>
+
<para>Each NameChangeRequest must of course include the fully qualified domain
name whose DNS entries are to be affected. kea-dhcp4 can be configured to
supply a portion or all of that name based upon what it receives from
<para>
The default rules for constructing the FQDN that will be used for DNS
entries are:
- <orderedlist>
+ <orderedlist inheritnum="ignore" continuation="restarts">
<listitem><para>
If the DHCPREQUEST contains the client FQDN option, the candidate name
is taken from there, otherwise it is taken from the Host Name option.
</para>
</section>
- <section id="dhcp4-next-server">
- <title>Next Server (siaddr)</title>
+ <section xml:id="dhcp4-next-server"><info><title>Next Server (siaddr)</title></info>
+
<para>In some cases, clients want to obtain configuration from a TFTP server.
Although there is a dedicated option for it, some devices may use the siaddr field
in the DHCPv4 packet for that purpose. That specific field can be configured
</screen>
</section>
- <section id="dhcp4-echo-client-id">
- <title>Echoing Client-ID (RFC 6842)</title>
+ <section xml:id="dhcp4-echo-client-id"><info><title>Echoing Client-ID (RFC 6842)</title></info>
+
<para>The original DHCPv4 specification
- (<ulink url="http://tools.ietf.org/html/rfc2131">RFC 2131</ulink>)
+ (<link xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="http://tools.ietf.org/html/rfc2131">RFC 2131</link>)
states that the DHCPv4
server must not send back client-id options when responding to
clients. However, in some cases that confused clients that did
not have MAC address or client-id; see
- <ulink url="http://tools.ietf.org/html/rfc6842">RFC 6842</ulink>.
+ <link xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="http://tools.ietf.org/html/rfc6842">RFC 6842</link>.
for details. That
behavior has changed with the publication of
- <ulink url="http://tools.ietf.org/html/rfc6842">RFC 6842</ulink>
+ <link xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="http://tools.ietf.org/html/rfc6842">RFC 6842</link>
which updated
- <ulink url="http://tools.ietf.org/html/rfc2131">RFC 2131</ulink>.
+ <link xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="http://tools.ietf.org/html/rfc2131">RFC 2131</link>.
That update states that the server must
send client-id if the client sent it. That is Kea's default behavior.
However, in some cases older devices that do not support
- <ulink url="http://tools.ietf.org/html/rfc6842">RFC 6842</ulink>.
+ <link xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="http://tools.ietf.org/html/rfc6842">RFC 6842</link>.
may refuse to accept responses that include the
client-id option. To enable backward compatibility, an optional
configuration parameter has been introduced. To configure it,
</screen>
</section>
- <section id="dhcp4-match-client-id">
- <title>Using Client Identifier and Hardware Address</title>
+ <section xml:id="dhcp4-match-client-id"><info><title>Using Client Identifier and Hardware Address</title></info>
+
<para>The DHCP server must be able to identify the client (and distinguish it from
other clients) from which it receives the message. There are many reasons
why this identification is required and the most important ones are:
used by DHCP to carry the hardware address of the interface used to send
the query to the server (MAC address for the Ethernet). The latter is
carried in the Client-identifier option, introduced in
- <ulink url="http://tools.ietf.org/html/rfc2132">RFC 2132</ulink>.
+ <link xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="http://tools.ietf.org/html/rfc2132">RFC 2132</link>.
</para>
- <para><ulink url="http://tools.ietf.org/html/rfc2131">RFC 2131</ulink>
+ <para><link xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="http://tools.ietf.org/html/rfc2131">RFC 2131</link>
indicates that the server may use both of these identifiers to identify
the client but the "client identifier", if present, takes precedence
over "chaddr". One of the reasons for this is that "client identifier"
network card and then the network card is moved to another host, the
server will wrongly identify this host is the one which has obtained
the lease. Moreover,
- <ulink url="https://tools.ietf.org/html/rfc4361">RFC 4361</ulink> gives
+ <link xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="https://tools.ietf.org/html/rfc4361">RFC 4361</link> gives
the recommendation to use a DUID
- (see <ulink url="https://tools.ietf.org/html/rfc3315">RFC 3315</ulink>,
+ (see <link xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="https://tools.ietf.org/html/rfc3315">RFC 3315</link>,
the DHCPv6 specification)
carried as "client identifier" when dual stack networks are in use
to provide consistent identification information of the client, regardless
</section>
- <section id="dhcp4-dhcp4o6-config">
- <title>DHCPv4-over-DHCPv6: DHCPv4 Side</title>
+ <section xml:id="dhcp4-dhcp4o6-config"><info><title>DHCPv4-over-DHCPv6: DHCPv4 Side</title></info>
+
<para>
The support of DHCPv4-over-DHCPv6 transport is described in
- <ulink url="http://tools.ietf.org/html/rfc7341">RFC 7341</ulink>
+ <link xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="http://tools.ietf.org/html/rfc7341">RFC 7341</link>
and is implemented using cooperating DHCPv4 and DHCPv6 servers.
This section is about the configuration of the DHCPv4 side
(the DHCPv6 side is described in <xref linkend="dhcp6-dhcp4o6-config"/>).
<!-- Host reservation is a large topic. There will be many subsections,
so it should be a section on its own. -->
- <section id="host-reservation-v4">
- <title>Host Reservation in DHCPv4</title>
+ <section xml:id="host-reservation-v4"><info><title>Host Reservation in DHCPv4</title></info>
+
<para>There are many cases where it is useful to provide a configuration on
a per host basis. The most obvious one is to reserve a specific, static
- address for exclusive use by a given client (host) ‐ the returning client will
+ address for exclusive use by a given client (host) ‐ the returning client will
receive the same address from the server every time, and other clients will
generally not receive that address.
Another example when the host reservations are applicable is when a host
could be used by someone else (i.e. there is a reservation for it). That
additional check incurs additional overhead.</para>
- <section id="reservation4-types">
- <title>Address Reservation Types</title>
+ <section xml:id="reservation4-types"><info><title>Address Reservation Types</title></info>
+
<para>In a typical scenario there is an IPv4 subnet defined,
e.g. 192.0.2.0/24, with certain part of it dedicated for dynamic allocation
possible.</para>
</section>
- <section id="reservation4-conflict">
- <title>Conflicts in DHCPv4 Reservations</title>
+ <section xml:id="reservation4-conflict"><info><title>Conflicts in DHCPv4 Reservations</title></info>
+
<para>As the reservations and lease information are stored separately,
conflicts may arise. Consider the following series of events. The server
has configured the dynamic pool of addresses from the range of 192.0.2.10 to
</para>
</section>
- <section id="reservation4-hostname">
- <title>Reserving a Hostname</title>
+ <section xml:id="reservation4-hostname"><info><title>Reserving a Hostname</title></info>
+
<para>When the reservation for a client includes the <command>hostname</command>,
the server will return this hostname to the client in
the Client FQDN or Hostname options. The server responds with the Client
</para>
</section>
- <section id="reservation4-options">
- <title>Including Specific DHCPv4 Options in Reservations</title>
+ <section xml:id="reservation4-options"><info><title>Including Specific DHCPv4 Options in Reservations</title></info>
+
<para>Kea 1.1.0 introduced the ability to specify options on a
per host basis. The options follow the same rules as any other
- options. These can be standard options (see <xref
- linkend="dhcp4-std-options" />), custom options (see <xref
- linkend="dhcp4-custom-options"/>) or vendor specific options
- (see <xref linkend="dhcp4-vendor-opts" />). The following
+ options. These can be standard options (see <xref linkend="dhcp4-std-options"/>), custom options (see <xref linkend="dhcp4-custom-options"/>) or vendor specific options
+ (see <xref linkend="dhcp4-vendor-opts"/>). The following
example demonstrates how standard options can be defined.</para>
<screen>
</section>
- <section id="reservation4-message-fields">
- <title>Reserving Next Server, Server Hostname and Boot File Name</title>
+ <section xml:id="reservation4-message-fields"><info><title>Reserving Next Server, Server Hostname and Boot File Name</title></info>
+
<para>BOOTP/DHCPv4 messages include "siaddr", "sname" and "file" fields.
Even though, DHCPv4 includes corresponding options, such as option 66 and
option 67, some clients may not support these options. For this reason, server
them can be omitted.</para>
</section>
- <section id="reservation4-client-classes">
- <title>Reserving Client Classes in DHCPv4</title>
+ <section xml:id="reservation4-client-classes"><info><title>Reserving Client Classes in DHCPv4</title></info>
+
<para><xref linkend="classification-using-expressions"/> explains how
to configure the server to assign classes to a client based on the content
of the options that this client sends to the server. Host reservations
with classification using expressions.</para>
</section>
- <section id="reservations4-mysql-pgsql">
- <title>Storing Host Reservations in MySQL or PostgreSQL</title>
+ <section xml:id="reservations4-mysql-pgsql"><info><title>Storing Host Reservations in MySQL or PostgreSQL</title></info>
+
<para>
It is possible to store host reservations in MySQL or PostgreSQL database. See
<xref linkend="hosts4-storage"/> for information on how to configure Kea to use
reservations stored in MySQL or PostgreSQL. Kea does not provide any dedicated
- tools for managing reservations in a database. The Kea wiki <ulink
- url="http://kea.isc.org/wiki/HostReservationsHowTo" /> provides detailed
+ tools for managing reservations in a database. The Kea wiki <uri xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="http://kea.isc.org/wiki/HostReservationsHowTo">http://kea.isc.org/wiki/HostReservationsHowTo</uri> provides detailed
information and examples of how reservations can be inserted into the
database.
</para>
arbitrarily set to 4096 bytes.</simpara></note>
</section>
- <section id="reservations4-cql">
- <title>Storing host reservations in CQL (Cassandra)</title>
+ <section xml:id="reservations4-cql"><info><title>Storing host reservations in CQL (Cassandra)</title></info>
+
<para>Kea currently does not support storing reservations in
Cassandra (CQL).</para>
</section>
- <section id="reservations4-tuning">
- <title>Fine Tuning DHCPv4 Host Reservation</title>
+ <section xml:id="reservations4-tuning"><info><title>Fine Tuning DHCPv4 Host Reservation</title></info>
+
<para>The host reservation capability introduces additional restrictions for the
allocation engine (the component of Kea that selects an address for a client)
</section>
<!-- end of host reservations section -->
- <section id="dhcp4-serverid">
- <title>Server Identifier in DHCPv4</title>
+ <section xml:id="dhcp4-serverid"><info><title>Server Identifier in DHCPv4</title></info>
+
<para>
The DHCPv4 protocol uses a "server identifier" to allow clients
to discriminate between several servers present on the same link: this
</para>
</section>
- <section id="dhcp4-subnet-selection">
- <title>How the DHCPv4 Server Selects a Subnet for the Client</title>
+ <section xml:id="dhcp4-subnet-selection"><info><title>How the DHCPv4 Server Selects a Subnet for the Client</title></info>
+
<para>
The DHCPv4 server differentiates between the directly connected clients,
clients trying to renew leases and clients sending their messages through
depending on the classes to which the client belongs.</para>
</note>
- <section id="dhcp4-relay-override">
- <title>Using a Specific Relay Agent for a Subnet</title>
+ <section xml:id="dhcp4-relay-override"><info><title>Using a Specific Relay Agent for a Subnet</title></info>
+
<para>
A relay has to have an interface connected to the link on which
the clients are being configured. Typically the relay has an IPv4
field of the DHCPv4 packet) to select the appropriate subnet.
</para>
<para>
- However, that is not always the case. In certain uncommon —
- but valid — deployments, the relay address may not match the subnet. This
+ However, that is not always the case. In certain uncommon —
+ but valid — deployments, the relay address may not match the subnet. This
usually means that there is more than one subnet allocated for a given
link. The two most common examples where this is the case are long lasting
network renumbering (where both old and new address space is still being
</section>
- <section id="dhcp4-srv-example-client-class-relay">
- <title>Segregating IPv4 Clients in a Cable Network</title>
+ <section xml:id="dhcp4-srv-example-client-class-relay"><info><title>Segregating IPv4 Clients in a Cable Network</title></info>
+
<para>
In certain cases, it is useful to mix relay address information,
introduced in <xref linkend="dhcp4-relay-override"/> with client
</section>
- <section id="dhcp4-decline">
- <title>Duplicate Addresses (DHCPDECLINE Support)</title>
+ <section xml:id="dhcp4-decline"><info><title>Duplicate Addresses (DHCPDECLINE Support)</title></info>
+
<para>The DHCPv4 server is configured with a certain pool of addresses
that it is expected to hand out to the DHCPv4 clients. It is
</section>
- <section id="dhcp4-stats">
- <title>Statistics in the DHCPv4 Server</title>
+ <section xml:id="dhcp4-stats"><info><title>Statistics in the DHCPv4 Server</title></info>
+
<note>
<para>This section describes DHCPv4-specific statistics. For a general
- overview and usage of statistics, see <xref linkend="stats" />.</para>
+ overview and usage of statistics, see <xref linkend="stats"/>.</para>
</note>
<para>
The DHCPv4 server supports the following statistics:
</para>
- <table frame="all" id="dhcp4-statistics">
- <title>DHCPv4 Statistics</title>
- <tgroup cols='3'>
- <colspec colname='statistic' align='center'/>
- <colspec colname='type' align='center'/>
- <colspec colname='description' align='left'/>
+ <table frame="all" xml:id="dhcp4-statistics"><info><title>DHCPv4 Statistics</title></info>
+
+ <tgroup cols="3">
+ <colspec colname="statistic" align="center"/>
+ <colspec colname="type" align="center"/>
+ <colspec colname="description" align="left"/>
<thead>
<row>
<entry>Statistic</entry>
</table>
</section>
- <section id="dhcp4-ctrl-channel">
- <title>Management API for the DHCPv4 Server</title>
+ <section xml:id="dhcp4-ctrl-channel"><info><title>Management API for the DHCPv4 Server</title></info>
+
<para>
The management API allows the issuing of specific
management commands, such as statistics retrieval, reconfiguration or shutdown.
- For more details, see <xref linkend="ctrl-channel" />. Currently the only
+ For more details, see <xref linkend="ctrl-channel"/>. Currently the only
supported communication channel type is UNIX stream socket. By default there
are no sockets open. To instruct Kea to open a socket, the following entry
in the configuration file can be used:
and <command>statistic-remove-all</command>, specified in
<xref linkend="command-stats"/>. It also supports
<command>list-commands</command> and <command>shutdown</command>,
- specified in <xref linkend="command-list-commands" /> and
- <xref linkend="command-shutdown" />, respectively.</para>
+ specified in <xref linkend="command-list-commands"/> and
+ <xref linkend="command-shutdown"/>, respectively.</para>
</section>
- <section id="dhcp4-std">
- <title>Supported DHCP Standards</title>
+ <section xml:id="dhcp4-std"><info><title>Supported DHCP Standards</title></info>
+
<para>The following standards are currently supported:</para>
<itemizedlist>
<listitem>
<simpara><emphasis>Dynamic Host Configuration Protocol</emphasis>,
- <ulink url="http://tools.ietf.org/html/rfc2131">RFC 2131</ulink>:
+ <link xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="http://tools.ietf.org/html/rfc2131">RFC 2131</link>:
Supported messages are DHCPDISCOVER (1), DHCPOFFER (2),
DHCPREQUEST (3), DHCPRELEASE (7), DHCPINFORM (8), DHCPACK (5), and
DHCPNAK(6).</simpara>
</listitem>
<listitem>
<simpara><emphasis>DHCP Options and BOOTP Vendor Extensions</emphasis>,
- <ulink url="http://tools.ietf.org/html/rfc2132">RFC 2132</ulink>:
+ <link xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="http://tools.ietf.org/html/rfc2132">RFC 2132</link>:
Supported options are: PAD (0),
END(255), Message Type(53), DHCP Server Identifier (54),
Domain Name (15), DNS Servers (6), IP Address Lease Time
</listitem>
<listitem>
<simpara><emphasis>DHCP Relay Agent Information Option</emphasis>,
- <ulink url="http://tools.ietf.org/html/rfc3046">RFC 3046</ulink>:
+ <link xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="http://tools.ietf.org/html/rfc3046">RFC 3046</link>:
Relay Agent Information option is supported.</simpara>
</listitem>
<listitem>
<simpara><emphasis>Vendor-Identifying Vendor Options for
Dynamic Host Configuration Protocol version 4</emphasis>,
- <ulink url="http://tools.ietf.org/html/rfc3925">RFC 3925</ulink>:
+ <link xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="http://tools.ietf.org/html/rfc3925">RFC 3925</link>:
Vendor-Identifying Vendor Class and Vendor-Identifying Vendor-Specific
Information options are supported.</simpara>
</listitem>
<listitem>
<simpara><emphasis>Client Identifier Option in DHCP Server Replies</emphasis>,
- <ulink url="http://tools.ietf.org/html/rfc6842">RFC 6842</ulink>:
+ <link xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="http://tools.ietf.org/html/rfc6842">RFC 6842</link>:
Server by default sends back client-id option. That capability may be
disabled. See <xref linkend="dhcp4-echo-client-id"/> for details.
</simpara>
</itemizedlist>
</section>
- <section>
- <title>User context in IPv4 pools</title>
+ <section><info><title>User context in IPv4 pools</title></info>
+
<para>
Kea allows loading hook libraries that sometimes could benefit from
additional parameters. If such a parameter is specific to the whole
</para>
</section>
- <section id="dhcp4-limit">
- <title>DHCPv4 Server Limitations</title>
+ <section xml:id="dhcp4-limit"><info><title>DHCPv4 Server Limitations</title></info>
+
<para>These are the current limitations of the DHCPv4 server
software. Most of them are reflections of the current stage of
development and should be treated as <quote>not implemented
<itemizedlist>
<listitem>
<simpara>
- BOOTP (<ulink url="http://tools.ietf.org/html/rfc951">RFC 951</ulink>)
+ BOOTP (<link xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="http://tools.ietf.org/html/rfc951">RFC 951</link>)
is not supported. This is a design choice: BOOTP support is not planned.
</simpara>
</listitem>
</listitem>
<listitem>
<simpara>The DHCPv4 server does not verify that
- assigned address is unused. According to <ulink url="http://tools.ietf.org/html/rfc2131">RFC 2131</ulink>, the
+ assigned address is unused. According to <link xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="http://tools.ietf.org/html/rfc2131">RFC 2131</link>, the
allocating server should verify that address is not used by
sending ICMP echo request.</simpara>
</listitem>
</section> -->
- </chapter>
+ </chapter>
\ No newline at end of file
-<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE book PUBLIC "-//OASIS//DTD DocBook XML V4.2//EN"
-"http://www.oasis-open.org/docbook/xml/4.2/docbookx.dtd" [
-<!ENTITY mdash "—" >
-]>
+<!-- Converted by db4-upgrade version 1.0 -->
+<chapter xmlns="http://docbook.org/ns/docbook" version="5.0" xml:id="dhcp6"><info><title>The DHCPv6 Server</title></info>
+
- <chapter id="dhcp6">
- <title>The DHCPv6 Server</title>
-
- <section id="dhcp6-start-stop">
- <title>Starting and Stopping the DHCPv6 Server</title>
+ <section xml:id="dhcp6-start-stop"><info><title>Starting and Stopping the DHCPv6 Server</title></info>
+
<para>
It is recommended that the Kea DHCPv6 server be started and stopped
</para>
</section>
- <section id="dhcp6-configuration">
- <title>DHCPv6 Server Configuration</title>
-<section>
- <title>Introduction</title>
+ <section xml:id="dhcp6-configuration"><info><title>DHCPv6 Server Configuration</title></info>
+
+<section><info><title>Introduction</title></info>
+
<para>
This section explains how to configure the DHCPv6 server using the
Kea configuration backend. (Kea configuration using any other
for any given scope must be separated by a comma and there must not be a comma
after the last parameter. When reordering a configuration file, keep in mind that
moving a parameter to or from the last position in a given scope may also require
-moving the comma. The second caveat is that it is uncommon — although
-legal JSON — to
+moving the comma. The second caveat is that it is uncommon — although
+legal JSON — to
repeat the same parameter multiple times. If that happens, the last occurrence of a
given parameter in a given scope is used while all previous instances are
ignored. This is unlikely to cause any confusion as there are no real life
be followed by a comma and another object definition.</para>
</section>
-<section>
- <title>Lease Storage</title>
+<section><info><title>Lease Storage</title></info>
+
<para>All leases issued by the server are stored in the lease database.
Currently there are four database backends available: memfile (which is the
default backend), MySQL, PostgreSQL and Cassandra.</para>
-<section>
- <title>Memfile - Basic Storage for Leases</title>
+<section><info><title>Memfile - Basic Storage for Leases</title></info>
+
<para>The server is able to store lease data in different repositories. Larger
- deployments may elect to store leases in a database. <xref
- linkend="database-configuration6"/> describes this option. In typical
+ deployments may elect to store leases in a database. <xref linkend="database-configuration6"/> describes this option. In typical
smaller deployments though, the server will store lease information in a CSV file rather
than a database. As well as requiring less administration, an
advantage of using a file for storage is that it
file used by the server to record lease updates. There are also other files
being created as a side effect of the lease file cleanup. The detailed
description of the LFC is located on the Kea wiki:
- <ulink url="http://kea.isc.org/wiki/LFCDesign"/>.
+ <uri xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="http://kea.isc.org/wiki/LFCDesign">http://kea.isc.org/wiki/LFCDesign</uri>.
</para>
</section>
-<section id="database-configuration6">
- <title>Lease Database Configuration</title>
+<section xml:id="database-configuration6"><info><title>Lease Database Configuration</title></info>
+
<note>
<para>Lease database access information must be configured for the DHCPv6 server,
</section>
</section>
-<section id="hosts6-storage">
- <title>Hosts Storage</title>
+<section xml:id="hosts6-storage"><info><title>Hosts Storage</title></info>
+
<para>Kea is also able to store information about host reservations in the
database. The hosts database configuration uses the same syntax as the lease
database. In fact, a Kea server opens independent connections for each
from the configuration file are checked first and external storage is checked
later, if necessary.</para>
-<section id="hosts-database-configuration6">
- <title>DHCPv6 Hosts Database Configuration</title>
+<section xml:id="hosts-database-configuration6"><info><title>DHCPv6 Hosts Database Configuration</title></info>
+
<para>Hosts database configuration is controlled through the Dhcp6/hosts-database
parameters. If enabled, the type of the database must be set to "mysql" or
"". (This is also the default.)</para>
</section>
-<section id="read-only-database-configuration6">
-<title>Using Read-Only Databases for Host Reservations</title>
+<section xml:id="read-only-database-configuration6"><info><title>Using Read-Only Databases for Host Reservations</title></info>
+
<para>
In some deployments the database user whose name is specified in the database backend
configuration may not have write privileges to the database. This is often
</section>
-<section id="dhcp6-interface-selection">
- <title>Interface Selection</title>
+<section xml:id="dhcp6-interface-selection"><info><title>Interface Selection</title></info>
+
<para>The DHCPv6 server has to be configured to listen on specific network
interfaces. The simplest network interface configuration instructs the server to
listen on all available interfaces:
</para>
</section>
- <section id="ipv6-subnet-id">
- <title>IPv6 Subnet Identifier</title>
+ <section xml:id="ipv6-subnet-id"><info><title>IPv6 Subnet Identifier</title></info>
+
<para>
The subnet identifier is a unique number associated with a particular subnet.
In principle, it is used to associate clients' leases with their respective subnets.
id -->
</section>
- <section id="dhcp6-unicast">
- <title>Unicast Traffic Support</title>
+ <section xml:id="dhcp6-unicast"><info><title>Unicast Traffic Support</title></info>
+
<para>
When the DHCPv6 server starts, by default it listens to the DHCP traffic
sent to multicast address ff02::1:2 on each interface that it is
</para>
</section>
- <section id="dhcp6-address-config">
- <title>Subnet and Address Pool</title>
+ <section xml:id="dhcp6-address-config"><info><title>Subnet and Address Pool</title></info>
+
<para>
The main role of a DHCPv6 server is address assignment. For this,
the server has to be configured with at least one subnet and one pool of dynamic
</para>
</section>
- <section>
- <title>Subnet and Prefix Delegation Pools</title>
+ <section><info><title>Subnet and Prefix Delegation Pools</title></info>
+
<para>
Subnets may also be configured to delegate prefixes, as defined in
- <ulink url="http://tools.ietf.org/html/rfc3633">RFC 3633</ulink>. A
+ <link xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="http://tools.ietf.org/html/rfc3633">RFC 3633</link>. A
subnet may have one or more prefix delegation pools. Each pool has a
prefixed address, which is specified as a prefix
(<command>prefix</command>) and a prefix length
</section>
- <section id="pd-exclude-option">
- <title>Prefix Exclude Option</title>
+ <section xml:id="pd-exclude-option"><info><title>Prefix Exclude Option</title></info>
+
<para>
For each delegated prefix the delegating router may choose to exclude
a single prefix out of the delegated prefix as specified in the
- <ulink url="http://tools.ietf.org/html/rfc6603"> RFC 6603</ulink>.
+ <link xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="http://tools.ietf.org/html/rfc6603"> RFC 6603</link>.
The requesting router must not assign the excluded prefix to any
of its downstream interfaces and it is intended to be used on a
link through which the delegating router exchanges DHCPv6 messages with
</screen>
</section>
- <section id="dhcp6-std-options">
- <title>Standard DHCPv6 Options</title>
+ <section xml:id="dhcp6-std-options"><info><title>Standard DHCPv6 Options</title></info>
+
<para>
One of the major features of a DHCPv6 server is to provide configuration
options to clients. Although there are several options that require
information on all global options that the server is supposed to configure
in all subnets. The <command>name</command> line specifies the option name.
(For a complete list
- of currently supported names, see <xref
- linkend="dhcp6-std-options-list"/>.) The next line specifies the option code,
+ of currently supported names, see <xref linkend="dhcp6-std-options-list"/>.) The next line specifies the option code,
which must match one of the values from that list. The line beginning with
<command>space</command> specifies the option space, which must always be set
to "dhcp6" as these are standard DHCPv6 options. For other name spaces,
- including custom option spaces, see <xref
- linkend="dhcp6-option-spaces"/>. The following line specifies the format in
+ including custom option spaces, see <xref linkend="dhcp6-option-spaces"/>. The following line specifies the format in
which the data will be entered: use of CSV (comma separated values) is
recommended. Finally, the <command>data</command> line gives the actual value to be sent to
clients. Data is specified as normal text, with values separated by
<para>
- <table frame="all" id="dhcp6-std-options-list">
- <title>List of Standard DHCPv6 Options</title>
- <tgroup cols='4'>
- <colspec colname='name'/>
- <colspec colname='code' align='center'/>
- <colspec colname='type' align='center'/>
- <colspec colname='array' align='center'/>
+ <table frame="all" xml:id="dhcp6-std-options-list"><info><title>List of Standard DHCPv6 Options</title></info>
+
+ <tgroup cols="4">
+ <colspec colname="name"/>
+ <colspec colname="code" align="center"/>
+ <colspec colname="type" align="center"/>
+ <colspec colname="array" align="center"/>
<thead>
<row><entry>Name</entry><entry>Code</entry><entry>Type</entry><entry>Array?</entry></row>
</thead>
<row><entry>interface-id</entry><entry>18</entry><entry>binary</entry><entry>false</entry></row>
<row><entry>reconf-msg</entry><entry>19</entry><entry>uint8</entry><entry>false</entry></row>
<row><entry>reconf-accept</entry><entry>20</entry><entry>empty</entry><entry>false</entry></row> -->
--->
+-->
<row><entry>sip-server-dns</entry><entry>21</entry><entry>fqdn</entry><entry>true</entry></row>
<row><entry>sip-server-addr</entry><entry>22</entry><entry>ipv6-address</entry><entry>true</entry></row>
<row><entry>dns-servers</entry><entry>23</entry><entry>ipv6-address</entry><entry>true</entry></row>
</para>
<para>
- <table frame="all" id="dhcp6-exp-options-list">
- <title>List of Experimental DHCPv6 Options</title>
- <tgroup cols='4'>
- <colspec colname='name'/>
- <colspec colname='code' align='center'/>
- <colspec colname='type' align='center'/>
- <colspec colname='array' align='center'/>
+ <table frame="all" xml:id="dhcp6-exp-options-list"><info><title>List of Experimental DHCPv6 Options</title></info>
+
+ <tgroup cols="4">
+ <colspec colname="name"/>
+ <colspec colname="code" align="center"/>
+ <colspec colname="type" align="center"/>
+ <colspec colname="array" align="center"/>
<thead>
<row><entry>Name</entry><entry>Code</entry><entry>Type</entry><entry>Array?</entry></row>
</thead>
</para>
</section>
- <section id="s46-options">
- <title>Common Softwire46 Options</title>
+ <section xml:id="s46-options"><info><title>Common Softwire46 Options</title></info>
+
<para>
Softwire46 options are involved in IPv4 over IPv6 provisioning by
means of tunneling or translation as specified in the
- <ulink url="http://tools.ietf.org/html/rfc7598">RFC 7598</ulink>.
+ <link xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="http://tools.ietf.org/html/rfc7598">RFC 7598</link>.
The following sections provide configuration examples of these
options.
</para>
- <section id="s46-containers">
- <title>Softwire46 Container Options</title>
+ <section xml:id="s46-containers"><info><title>Softwire46 Container Options</title></info>
+
<para>
S46 container options group rules and optional port parameters
for a specified domain. There are three container options specified
</para>
</section>
- <section>
- <title>S46 Rule Option</title>
+ <section><info><title>S46 Rule Option</title></info>
+
<para>
The S46 Rule option is used for conveying the Basic Mapping Rule (BMR)
and Forwarding Mapping Rule (FMR).
</itemizedlist>
</para>
</section>
- <section>
- <title>S46 BR Option</title>
+ <section><info><title>S46 BR Option</title></info>
+
<para>
The S46 BR option is used to convey the IPv6 address of the
Border Relay. This option is mandatory in the MAP-E
</para>
</section>
- <section>
- <title>S46 DMR Option</title>
+ <section><info><title>S46 DMR Option</title></info>
+
<para>
The S46 DMR option is used to convey values for the Default
Mapping Rule (DMR). This option is mandatory in the MAP-T
</para>
</section>
- <section>
- <title>S46 IPv4/IPv6 Address Binding option.</title>
+ <section><info><title>S46 IPv4/IPv6 Address Binding option.</title></info>
+
<para>
The S46 IPv4/IPv6 Address Binding option may be used to specify
the full or shared IPv4 address of the Customer Edge (CE).
This option must not be included in other containers.
</para>
</section>
- <section>
- <title>S46 Port Parameters</title>
+ <section><info><title>S46 Port Parameters</title></info>
+
<para>
The S46 Port Parameters option specifies optional port set
information that MAY be provided to CEs
</section>
</section>
- <section id="dhcp6-custom-options">
- <title>Custom DHCPv6 Options</title>
+ <section xml:id="dhcp6-custom-options"><info><title>Custom DHCPv6 Options</title></info>
+
<para>It is possible to define options in addition to the standard ones.
Assume that we want to define a new DHCPv6 option called "foo" which will have
code 100 and which will convey a single unsigned 32 bit integer value. We can define
</section>
- <section id="dhcp6-vendor-opts">
- <title>DHCPv6 Vendor-Specific Options</title>
+ <section xml:id="dhcp6-vendor-opts"><info><title>DHCPv6 Vendor-Specific Options</title></info>
+
<para>
Currently there are two option spaces defined for the DHCPv6
daemon: "dhcp6" (for top level DHCPv6 options) and "vendor-opts-space",
</para>
</section>
- <section id="dhcp6-option-spaces">
- <title>Nested DHCPv6 Options (Custom Option Spaces)</title>
+ <section xml:id="dhcp6-option-spaces"><info><title>Nested DHCPv6 Options (Custom Option Spaces)</title></info>
+
<para>It is sometimes useful to define completely new option
spaces. This is useful if the user wants their new option to
convey sub-options that use a separate numbering scheme, for
required to carry an uint16 value as well as the sub-options, the "type"
value would have to be set to "uint16" in the option definition. (Such an
option would then have the following data structure: DHCP header, uint16
- value, sub-options.) The value specified with the "data" parameter — which
- should be a valid integer enclosed in quotes, e.g. "123" — would then be
+ value, sub-options.) The value specified with the "data" parameter — which
+ should be a valid integer enclosed in quotes, e.g. "123" — would then be
assigned to the uint16 field in the "container" option.
</para>
</section>
- <section id="dhcp6-option-data-defaults">
- <title>Unspecified Parameters for DHCPv6 Option Configuration</title>
+ <section xml:id="dhcp6-option-data-defaults"><info><title>Unspecified Parameters for DHCPv6 Option Configuration</title></info>
+
<para>In many cases it is not required to specify all parameters for
an option configuration and the default values can be used. However, it is
important to understand the implications of not specifying some of them
</section>
- <section id="dhcp6-config-subnets">
- <title>IPv6 Subnet Selection</title>
+ <section xml:id="dhcp6-config-subnets"><info><title>IPv6 Subnet Selection</title></info>
+
<para>
The DHCPv6 server may receive requests from local (connected to the
same subnet as the server) and remote (connecting via relays) clients.
</para>
</section>
- <section id="dhcp6-rapid-commit">
- <title>Rapid Commit</title>
+ <section xml:id="dhcp6-rapid-commit"><info><title>Rapid Commit</title></info>
+
<para>The Rapid Commit option, described in
- <ulink url="http://tools.ietf.org/html/rfc3315">RFC 3315</ulink>, is supported
+ <link xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="http://tools.ietf.org/html/rfc3315">RFC 3315</link>, is supported
by the Kea DHCPv6 server. However, support is disabled by default for
all subnets. It can be enabled for a particular subnet using the
<command>rapid-commit</command> parameter as shown below:
</para>
</section>
- <section id="dhcp6-relays">
- <title>DHCPv6 Relays</title>
+ <section xml:id="dhcp6-relays"><info><title>DHCPv6 Relays</title></info>
+
<para>
A DHCPv6 server with multiple subnets defined must select the
appropriate subnet when it receives a request from a client. For clients
</para>
</section>
- <section id="dhcp6-rsoo">
- <title>Relay-Supplied Options</title>
- <para><ulink url="http://tools.ietf.org/html/rfc6422">RFC 6422</ulink>
+ <section xml:id="dhcp6-rsoo"><info><title>Relay-Supplied Options</title></info>
+
+ <para><link xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="http://tools.ietf.org/html/rfc6422">RFC 6422</link>
defines a mechanism called Relay-Supplied DHCP Options. In certain cases relay
agents are the only entities that may have specific information. They can
insert options when relaying messages from the client to the server. The
included. First, the server must not provide the option itself. In
other words, if both relay and server provide an option, the server always
takes precedence. Second, the option must be RSOO-enabled. IANA maintains a
- list of RSOO-enabled options <ulink url="http://www.iana.org/assignments/dhcpv6-parameters/dhcpv6-parameters.xhtml#options-relay-supplied">here</ulink>.
+ list of RSOO-enabled options <link xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="http://www.iana.org/assignments/dhcpv6-parameters/dhcpv6-parameters.xhtml#options-relay-supplied">here</link>.
However, there may be cases when system administrators want to echo other
options. Kea can be instructed to treat other options as RSOO-enabled.
For example, to mark options 110, 120 and 130 as RSOO-enabled, the following
mark it. Also, when enabling standard options, it is possible to use their
names, rather than option code, e.g. (e.g. use
<command>dns-servers</command> instead of <command>23</command>). See
- <xref linkend="dhcp6-std-options-list" /> for the names. In certain cases
+ <xref linkend="dhcp6-std-options-list"/> for the names. In certain cases
it could also work for custom options, but due to the nature of the parser
code this may be unreliable and should be avoided.
</para>
</section>
- <section id="dhcp6-client-classifier">
- <title>Client Classification in DHCPv6</title>
+ <section xml:id="dhcp6-client-classifier"><info><title>Client Classification in DHCPv6</title></info>
+
<para>
The DHCPv6 server includes support for client classification. For a deeper
clients that do not meet class criteria to be denied any service altogether.
</para></note>
- <section>
- <title>Defining and Using Custom Classes</title>
+ <section><info><title>Defining and Using Custom Classes</title></info>
+
<para>
The following example shows how to configure a class using an expression
and a subnet making use of that class. This configuration defines the
- class named "Client_enterprise". It is comprised
+ class named "Client_enterprise". It is comprised
of all clients whose client identifiers start with the given hex string (which
would indicate a DUID based on an enterprise id of 0xAABBCCDD).
They will be given an address from 2001:db8:1::0 to 2001:db8:1::FFFF and
</section>
</section>
- <section id="dhcp6-ddns-config">
- <title>DDNS for DHCPv6</title>
+ <section xml:id="dhcp6-ddns-config"><info><title>DDNS for DHCPv6</title></info>
+
<para>
As mentioned earlier, kea-dhcp6 can be configured to generate requests to
the DHCP-DDNS server (referred to here as "D2") to update
DNS entries. These requests are known as NameChangeRequests or NCRs.
Each NCR contains the following information:
- <orderedlist>
+ <orderedlist inheritnum="ignore" continuation="restarts">
<listitem><para>
Whether it is a request to add (update) or remove DNS entries
</para></listitem>
</para>
- <section id="dhcpv6-d2-io-config">
- <title>DHCP-DDNS Server Connectivity</title>
+ <section xml:id="dhcpv6-d2-io-config"><info><title>DHCP-DDNS Server Connectivity</title></info>
+
<para>
In order for NCRs to reach the D2 server, kea-dhcp6 must be able
to communicate with it. kea-dhcp6 uses the following configuration
</screen>
</para>
</section>
- <section id="dhcpv6-d2-rules-config">
- <title>When Does kea-dhcp6 Generate a DDNS Request?</title>
+ <section xml:id="dhcpv6-d2-rules-config"><info><title>When Does kea-dhcp6 Generate a DDNS Request?</title></info>
+
<para>kea-dhcp6 follows the behavior prescribed for DHCP servers in
- <ulink url="http://tools.ietf.org/html/rfc4704">RFC 4704</ulink>.
+ <link xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="http://tools.ietf.org/html/rfc4704">RFC 4704</link>.
It is important to keep in mind that kea-dhcp6 provides the initial
decision making of when and what to update and forwards that
information to D2 in the form of NCRs. Carrying out the actual
</note>
<para>
In general, kea-dhcp6 will generate DDNS update requests when:
- <orderedlist>
+ <orderedlist inheritnum="ignore" continuation="restarts">
<listitem><para>
A new lease is granted in response to a REQUEST
</para></listitem>
By default kea-dhcp6 will respect the FQDN N and S flags specified by the client
as shown in the following table:
</para>
- <table id="dhcp6-fqdn-flag-table">
- <title>Default FQDN Flag Behavior</title>
- <tgroup cols='4' align='left'>
- <colspec colname='cflags'/>
- <colspec colname='meaning'/>
- <colspec colname='response'/>
- <colspec colname='sflags'/>
+ <table xml:id="dhcp6-fqdn-flag-table"><info><title>Default FQDN Flag Behavior</title></info>
+
+ <tgroup cols="4" align="left">
+ <colspec colname="cflags"/>
+ <colspec colname="meaning"/>
+ <colspec colname="response"/>
+ <colspec colname="sflags"/>
<thead>
<row>
<entry>Client Flags:N-S</entry>
</para>
<para>
(Note that the flag combination N=1, S=1 is prohibited according to
- <ulink url="http://tools.ietf.org/html/rfc4702">RFC 4702</ulink>. If such a
+ <link xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="http://tools.ietf.org/html/rfc4702">RFC 4702</link>. If such a
combination is received from the client, the packet will be dropped by kea-dhcp6.)
</para>
<para>
}
</screen>
</section>
- <section id="dhcpv6-fqdn-name-generation">
- <title>kea-dhcp6 Name Generation for DDNS Update Requests</title>
+ <section xml:id="dhcpv6-fqdn-name-generation"><info><title>kea-dhcp6 Name Generation for DDNS Update Requests</title></info>
+
<para>Each NameChangeRequest must of course include the fully qualified
domain name whose DNS entries are to be affected. kea-dhcp6 can be
configured to supply a portion or all of that name based upon what it
<para>
The default rules for constructing the FQDN that will be used for DNS
entries are:
- <orderedlist>
+ <orderedlist inheritnum="ignore" continuation="restarts">
<listitem><para>
If the DHCPREQUEST contains the client FQDN option, the candidate name
is taken from there.
</para>
</section>
- <section id="dhcp6-dhcp4o6-config">
- <title>DHCPv4-over-DHCPv6: DHCPv6 Side</title>
+ <section xml:id="dhcp6-dhcp4o6-config"><info><title>DHCPv4-over-DHCPv6: DHCPv6 Side</title></info>
+
<para>
The support of DHCPv4-over-DHCPv6 transport is described in
- <ulink url="http://tools.ietf.org/html/rfc7341">RFC 7341</ulink>
+ <link xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="http://tools.ietf.org/html/rfc7341">RFC 7341</link>
and is implemented using cooperating DHCPv4 and DHCPv6 servers.
This section is about the configuration of the DHCPv6 side
(the DHCPv4 side is described in <xref linkend="dhcp4-dhcp4o6-config"/>).
<!-- Host reservation is a large topic. There will be many subsections,
so it should be a section on its own. -->
- <section id="host-reservation-v6">
- <title>Host Reservation in DHCPv6</title>
+ <section xml:id="host-reservation-v6"><info><title>Host Reservation in DHCPv6</title></info>
+
<para>There are many cases where it is useful to provide a configuration on
a per host basis. The most obvious one is to reserve specific, static IPv6
- address or/and prefix for exclusive use by a given client (host) ‐ returning
+ address or/and prefix for exclusive use by a given client (host) ‐ returning
client will get the same address or/and prefix every time and other clients will
never get that address. Note that there may be cases when the
new reservation has been made for the client for the address or prefix being
could be used by someone else (i.e. if there is a reservation for it). That
additional check incurs additional overhead.</para>
- <section id="reservation6-types">
- <title>Address/Prefix Reservation Types</title>
+ <section xml:id="reservation6-types"><info><title>Address/Prefix Reservation Types</title></info>
+
<para>In a typical scenario there is an IPv6 subnet defined with a certain
part of it dedicated for dynamic address allocation by the DHCPv6
possible.</para>
</section>
- <section id="reservation6-conflict">
- <title>Conflicts in DHCPv6 Reservations</title>
+ <section xml:id="reservation6-conflict"><info><title>Conflicts in DHCPv6 Reservations</title></info>
+
<para>As reservations and lease information are stored separately,
conflicts may arise. Consider the following series of events. The server
has configured the dynamic pool of addresses from the range of 2001:db8::10
</para>
</section>
- <section id="reservation6-hostname">
- <title>Reserving a Hostname</title>
+ <section xml:id="reservation6-hostname"><info><title>Reserving a Hostname</title></info>
+
<para>When the reservation for the client includes the <command>hostname</command>,
the server will assign this hostname to the client and send
it back in the Client FQDN, if the client sent the FQDN option to the
</para>
</section>
- <section id="reservation6-options">
- <title>Including Specific DHCPv6 Options in Reservations</title>
+ <section xml:id="reservation6-options"><info><title>Including Specific DHCPv6 Options in Reservations</title></info>
+
<para>Kea 1.1.0 introduced the ability to specify options on a
per host basis. The options follow the same rules as any other
- options. These can be standard options (see <xref
- linkend="dhcp6-std-options" />), custom options (see <xref
- linkend="dhcp6-custom-options"/>) or vendor specific options
- (see <xref linkend="dhcp6-vendor-opts" />). The following
+ options. These can be standard options (see <xref linkend="dhcp6-std-options"/>), custom options (see <xref linkend="dhcp6-custom-options"/>) or vendor specific options
+ (see <xref linkend="dhcp6-vendor-opts"/>). The following
example demonstrates how standard options can be defined.</para>
<screen>
</section>
- <section id="reservation6-client-classes">
- <title>Reserving Client Classes in DHCPv6</title>
+ <section xml:id="reservation6-client-classes"><info><title>Reserving Client Classes in DHCPv6</title></info>
+
<para>The <xref linkend="classification-using-expressions"/> explains how
to configure the server to assign classes to a client based on the content
of the options that this client sends to the server. Host reservations
with classification using expressions.</para>
</section>
- <section id="reservations6-mysql-pgsql">
- <title>Storing Host Reservations in MySQL or PostgreSQL</title>
+ <section xml:id="reservations6-mysql-pgsql"><info><title>Storing Host Reservations in MySQL or PostgreSQL</title></info>
+
<para>
- It is possible to store host reservations in MySQL or PostgreSQL. See <xref
- linkend="hosts6-storage" /> for information on how to configure Kea to use
+ It is possible to store host reservations in MySQL or PostgreSQL. See <xref linkend="hosts6-storage"/> for information on how to configure Kea to use
reservations stored in MySQL or PostgreSQL. Kea does not provide any dedicated
- tools for managing reservations in a database. The Kea wiki <ulink
- url="http://kea.isc.org/wiki/HostReservationsHowTo" /> provides detailed
+ tools for managing reservations in a database. The Kea wiki <uri xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="http://kea.isc.org/wiki/HostReservationsHowTo">http://kea.isc.org/wiki/HostReservationsHowTo</uri> provides detailed
information and examples of how reservations can be inserted into the
database.
</para>
arbitrarily set to 4096 bytes.</simpara></note>
</section>
- <section id="reservations6-cql">
- <title>Storing Host Reservations in CQL (Cassandra)</title>
+ <section xml:id="reservations6-cql"><info><title>Storing Host Reservations in CQL (Cassandra)</title></info>
+
<para>Kea currently does not support storing reservations in
Cassandra (CQL).</para>
</section>
- <section id="reservations6-tuning">
- <title>Fine Tuning DHCPv6 Host Reservation</title>
+ <section xml:id="reservations6-tuning"><info><title>Fine Tuning DHCPv6 Host Reservation</title></info>
+
<para>The host reservation capability introduces additional restrictions for the
allocation engine (the component of Kea that selects an address for a client)
</section>
<!-- end of host reservations section -->
- <section id="dhcp6-serverid">
- <title>Server Identifier in DHCPv6</title>
+ <section xml:id="dhcp6-serverid"><info><title>Server Identifier in DHCPv6</title></info>
+
<para>The DHCPv6 protocol uses a "server identifier" (also known
as a DUID) for clients to be able to discriminate between several
servers present on the same link.
- <ulink url="http://tools.ietf.org/html/rfc3315">RFC 3315</ulink>
+ <link xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="http://tools.ietf.org/html/rfc3315">RFC 3315</link>
defines three DUID types: DUID-LLT, DUID-EN and DUID-LL.
- <ulink url="http://tools.ietf.org/html/rfc6355">RFC 6355</ulink>
+ <link xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="http://tools.ietf.org/html/rfc6355">RFC 6355</link>
also defines DUID-UUID. Future specifications may introduce new
DUID types.</para>
modified across restarts of the server and so is a stable identifier.</para>
<para>Kea follows recommendation from
- <ulink url="http://tools.ietf.org/html/rfc3315">RFC 3315</ulink>
+ <link xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="http://tools.ietf.org/html/rfc3315">RFC 3315</link>
to use DUID-LLT as the default server identifier. However, we have
received reports that some deployments require different DUID
types, and there is a need to administratively select both DUID
identifier is explicitly specified in the configuration.</para>
</section>
- <section id="stateless-dhcp6">
- <title>Stateless DHCPv6 (Information-Request Message)</title>
+ <section xml:id="stateless-dhcp6"><info><title>Stateless DHCPv6 (Information-Request Message)</title></info>
+
<para>Typically DHCPv6 is used to assign both addresses and options. These
assignments (leases) have state that changes over time, hence
their name, stateful. DHCPv6 also supports a stateless mode,
even if it is not used.</para>
</section>
- <section id="dhcp6-rfc7550">
- <title>Support for RFC 7550</title>
- <para>The <ulink url="http://tools.ietf.org/html/rfc7550">RFC 7550</ulink>
+ <section xml:id="dhcp6-rfc7550"><info><title>Support for RFC 7550</title></info>
+
+ <para>The <link xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="http://tools.ietf.org/html/rfc7550">RFC 7550</link>
introduced some changes to the DHCPv6 protocol to resolve a few issues
with the coexistence of multiple stateful options in the messages sent
between the clients and servers.</para>
NoPrefixAvail status code. However, if the server can now allocate
the prefixes it will do so, and send them in the IA_PD(s) to the client.
Allocation of leases during the Renew/Rebind was not supported in the
- <ulink url="http://tools.ietf.org/html/rfc3315">RFC 3315</ulink>
- and <ulink url="http://tools.ietf.org/html/rfc3633">RFC 3633</ulink>,
+ <link xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="http://tools.ietf.org/html/rfc3315">RFC 3315</link>
+ and <link xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="http://tools.ietf.org/html/rfc3633">RFC 3633</link>,
and has been introduced in
- <ulink url="http://tools.ietf.org/html/rfc7550">RFC 7550</ulink>.
+ <link xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="http://tools.ietf.org/html/rfc7550">RFC 7550</link>.
Kea supports this new behavior and it doesn't provide any configuration
mechanisms to disable it.
</para>
<para>
The following are the other behaviors specified in the
- <ulink url="http://tools.ietf.org/html/rfc7550">RFC 7550</ulink>
+ <link xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="http://tools.ietf.org/html/rfc7550">RFC 7550</link>
supported by the Kea DHCPv6 server:
<itemizedlist>
<listitem><simpara>Set T1/T2 timers to the same value for all
</para>
</section>
- <section id="dhcp6-relay-override">
- <title>Using Specific Relay Agent for a Subnet</title>
+ <section xml:id="dhcp6-relay-override"><info><title>Using Specific Relay Agent for a Subnet</title></info>
+
<para>
The relay has to have an interface connected to the link on which
the clients are being configured. Typically the relay has a global IPv6
</section>
- <section id="dhcp6-client-class-relay">
- <title>Segregating IPv6 Clients in a Cable Network</title>
+ <section xml:id="dhcp6-client-class-relay"><info><title>Segregating IPv6 Clients in a Cable Network</title></info>
+
<para>
In certain cases, it is useful to mix relay address information,
introduced in <xref linkend="dhcp6-relay-override"/> with client
</para>
</section>
- <section id="mac-in-dhcpv6">
- <title>MAC/Hardware Addresses in DHCPv6</title>
+ <section xml:id="mac-in-dhcpv6"><info><title>MAC/Hardware Addresses in DHCPv6</title></info>
+
<para>MAC/hardware addresses are available in DHCPv4 messages
from the clients and administrators
frequently use that information to perform certain tasks, like per host
<simpara><command>duid</command> - DHCPv6 uses DUID identifiers instead of
MAC addresses. There are currently four DUID types defined, with two of them
(DUID-LLT, which is the default one and DUID-LL) convey MAC address information.
- Although <ulink utl="http://tools.ietf.org/html/rfc3315">RFC 3315</ulink> forbids
+ Although <link xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="" utl="http://tools.ietf.org/html/rfc3315">RFC 3315</link> forbids
it, it is possible to parse those DUIDs and extract
necessary information from them. This method is not completely reliable, as
clients may use other DUID types, namely DUID-EN or DUID-UUID.
that those addresses are based on EUI-64, which contains MAC address. This
method is not completely reliable, as clients may use other link-local address
types. In particular, privacy extensions, defined in
- <ulink url="http://tools.ietf.org/html/rfc4941">RFC 4941</ulink>, do not use
+ <link xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="http://tools.ietf.org/html/rfc4941">RFC 4941</link>, do not use
MAC addresses. Also note that successful extraction requires that the
address's u-bit must be set to 1 and its g-bit set to 0, indicating that it
is an interface identifier as per
- <ulink url="http://tools.ietf.org/html/rfc2373#section-2.5.1">
- RFC 2373, section 2.5.1</ulink>.
+ <link xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="http://tools.ietf.org/html/rfc2373#section-2.5.1">
+ RFC 2373, section 2.5.1</link>.
</simpara>
</listitem>
<listitem>
<simpara><command>client-link-addr-option</command> - One extension defined
to alleviate missing MAC issues is client link-layer address option, defined
- in <ulink url="http://tools.ietf.org/html/rfc6939">RFC 6939</ulink>. This is
+ in <link xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="http://tools.ietf.org/html/rfc6939">RFC 6939</link>. This is
an option that is inserted by a relay and contains information about client's
MAC address. This method requires a relay agent that supports the option and
is configured to insert it. This method is useless for directly connected
</listitem>
<listitem>
<simpara><command>remote-id</command> -
- <ulink url="http://tools.ietf.org/html/rfc4649">RFC 4649</ulink>
+ <link xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="http://tools.ietf.org/html/rfc4649">RFC 4649</link>
defines a remote-id option that is inserted by a relay agent. Depending
on the relay agent configuration, the inserted option may convey the client's
MAC address information. This parameter can also be specified as
<listitem>
<simpara><command>subscriber-id</command> - Another option
that is somewhat similar to the previous one is subscriber-id,
- defined in <ulink url="http://tools.ietf.org/html/rfc4580">RFC
- 4580</ulink>. It is, too, inserted by a relay agent that is
+ defined in <link xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="http://tools.ietf.org/html/rfc4580">RFC
+ 4580</link>. It is, too, inserted by a relay agent that is
configured to insert it. This parameter can also be specified
as <command>rfc4580</command>, which is an alias for
<command>subscriber-id</command>. This method is currently not
which is the default.</para>
</section>
- <section id="dhcp6-decline">
- <title>Duplicate Addresses (DECLINE Support)</title>
+ <section xml:id="dhcp6-decline"><info><title>Duplicate Addresses (DECLINE Support)</title></info>
+
<para>The DHCPv6 server is configured with a certain pool of
addresses that it is expected to hand out to the DHCPv6 clients.
the available pool.</para>
</section>
- <section id="dhcp6-stats">
- <title>Statistics in the DHCPv6 Server</title>
+ <section xml:id="dhcp6-stats"><info><title>Statistics in the DHCPv6 Server</title></info>
+
<note>
<para>This section describes DHCPv6-specific statistics. For a general
- overview and usage of statistics, see <xref linkend="stats" />.</para>
+ overview and usage of statistics, see <xref linkend="stats"/>.</para>
</note>
<para>
The DHCPv6 server supports the following statistics:
</para>
- <table frame="all" id="dhcp6-statistics">
- <title>DHCPv6 Statistics</title>
- <tgroup cols='3'>
- <colspec colname='statistic' align='center'/>
- <colspec colname='type' align='center'/>
- <colspec colname='description' align='left'/>
+ <table frame="all" xml:id="dhcp6-statistics"><info><title>DHCPv6 Statistics</title></info>
+
+ <tgroup cols="3">
+ <colspec colname="statistic" align="center"/>
+ <colspec colname="type" align="center"/>
+ <colspec colname="description" align="left"/>
<thead>
<row>
<entry>Statistic</entry>
</table>
</section>
- <section id="dhcp6-ctrl-channel">
- <title>Management API for the DHCPv6 Server</title>
+ <section xml:id="dhcp6-ctrl-channel"><info><title>Management API for the DHCPv6 Server</title></info>
+
<para>
The management API allows the issuing of specific
management commands, such as statistics retrieval, reconfiguration or shutdown.
- For more details, see <xref linkend="ctrl-channel" />. Currently the only
+ For more details, see <xref linkend="ctrl-channel"/>. Currently the only
supported communication channel type is UNIX stream socket. By default there
are no sockets open. To instruct Kea to open a socket, the following entry
in the configuration file can be used:
and <command>statistic-remove-all</command>, specified in
<xref linkend="command-stats"/>. It also supports
<command>list-commands</command> and <command>shutdown</command>,
- specified in <xref linkend="command-list-commands" /> and
- <xref linkend="command-shutdown" />, respectively.</para>
+ specified in <xref linkend="command-list-commands"/> and
+ <xref linkend="command-shutdown"/>, respectively.</para>
</section>
- <section>
- <title>User context in IPv6 pools</title>
+ <section><info><title>User context in IPv6 pools</title></info>
+
<para>
Kea allows loading hook libraries that sometimes could benefit from
additional parameters. If such a parameter is specific to the whole
<para>
Currently only address and prefix pools allow definition of user
contexts, but this concept is expected to be enhanced to other
- structures in the future. For more background information, see <xref
- linkend="user-context"/>
+ structures in the future. For more background information, see <xref linkend="user-context"/>
</para>
</section>
- <section id="dhcp6-std">
- <title>Supported DHCPv6 Standards</title>
+ <section xml:id="dhcp6-std"><info><title>Supported DHCPv6 Standards</title></info>
+
<para>The following standards are currently
supported:</para>
<itemizedlist>
<listitem>
<simpara><emphasis>Dynamic Host Configuration Protocol for IPv6</emphasis>,
- <ulink url="http://tools.ietf.org/html/rfc3315">RFC 3315</ulink>:
+ <link xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="http://tools.ietf.org/html/rfc3315">RFC 3315</link>:
Supported messages are SOLICIT,
ADVERTISE, REQUEST, RELEASE, RENEW, REBIND, INFORMATION-REQUEST,
CONFIRM and REPLY.</simpara>
<listitem>
<simpara><emphasis>IPv6 Prefix Options for
Dynamic Host Configuration Protocol (DHCP) version 6</emphasis>,
- <ulink url="http://tools.ietf.org/html/rfc3633">RFC 3633</ulink>:
+ <link xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="http://tools.ietf.org/html/rfc3633">RFC 3633</link>:
Supported options are IA_PD and
IA_PREFIX. Also supported is the status code NoPrefixAvail.</simpara>
</listitem>
<listitem>
<simpara><emphasis>DNS Configuration options for Dynamic Host
Configuration Protocol for IPv6 (DHCPv6)</emphasis>,
- <ulink url="http://tools.ietf.org/html/rfc3646">RFC 3646</ulink>:
+ <link xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="http://tools.ietf.org/html/rfc3646">RFC 3646</link>:
Supported option is DNS_SERVERS.</simpara>
</listitem>
<listitem>
<simpara><emphasis>The Dynamic Host Configuration Protocol for IPv6 (DHCPv6)
Relay Agent Remote-ID Option</emphasis>,
- <ulink url="http://tools.ietf.org/html/rfc4649">RFC 4649</ulink>:
+ <link xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="http://tools.ietf.org/html/rfc4649">RFC 4649</link>:
REMOTE-ID option is supported.</simpara>
</listitem>
<listitem>
<simpara><emphasis>The Dynamic Host Configuration Protocol for IPv6 (DHCPv6) Client
Fully Qualified Domain Name (FQDN) Option</emphasis>,
- <ulink url="http://tools.ietf.org/html/rfc4704">RFC 4704</ulink>:
+ <link xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="http://tools.ietf.org/html/rfc4704">RFC 4704</link>:
Supported option is CLIENT_FQDN.</simpara>
</listitem>
<listitem>
<simpara><emphasis>Dynamic Host Configuration Protocol for IPv6 (DHCPv6)
Option for Dual-Stack Lite</emphasis>,
- <ulink url="http://tools.ietf.org/html/rfc6334">RFC 6334</ulink>:
+ <link xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="http://tools.ietf.org/html/rfc6334">RFC 6334</link>:
the AFTR-Name DHCPv6 Option is supported.</simpara>
</listitem>
<listitem>
<simpara><emphasis>Relay-Supplied DHCP Options</emphasis>,
- <ulink url="http://tools.ietf.org/html/rfc6422">RFC 6422</ulink>:
+ <link xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="http://tools.ietf.org/html/rfc6422">RFC 6422</link>:
Full functionality is supported: OPTION_RSOO, ability of the server
to echo back the options, checks whether an option is RSOO-enabled,
ability to mark additional options as RSOO-enabled.</simpara>
<listitem>
<simpara><emphasis>Prefix Exclude Option for DHCPv6-based Prefix
Delegation</emphasis>,
- <ulink url="http://tools.ietf.org/html/rfc6603">RFC
- 6603</ulink>: Prefix Exclude option is supported.</simpara>
+ <link xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="http://tools.ietf.org/html/rfc6603">RFC
+ 6603</link>: Prefix Exclude option is supported.</simpara>
</listitem>
<listitem>
<simpara><emphasis>Client Link-Layer Address Option in
DHCPv6</emphasis>,
- <ulink url="http://tools.ietf.org/html/rfc6939">RFC
- 6939</ulink>: Supported option is client link-layer
+ <link xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="http://tools.ietf.org/html/rfc6939">RFC
+ 6939</link>: Supported option is client link-layer
address option.</simpara>
</listitem>
<listitem>
<simpara><emphasis>Issues and Recommendations with Multiple
Stateful DHCPv6 Options</emphasis>,
- <ulink url="http://tools.ietf.org/html/rfc7550">RFC
- 7550</ulink>: All recommendations related to the DHCPv6 server
+ <link xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="http://tools.ietf.org/html/rfc7550">RFC
+ 7550</link>: All recommendations related to the DHCPv6 server
operation are supported.</simpara>
</listitem>
<listitem>
<simpara><emphasis>DHCPv6 Options for Configuration of Softwire
Address and Port-Mapped Clients</emphasis>,
- <ulink url="http://tools.ietf.org/html/rfc7598">RFC
- 7598</ulink>: All options specified in this specification are
+ <link xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="http://tools.ietf.org/html/rfc7598">RFC
+ 7598</link>: All options specified in this specification are
supported by the DHCPv6 server.</simpara>
</listitem>
</itemizedlist>
</section>
- <section id="dhcp6-limit">
- <title>DHCPv6 Server Limitations</title>
+ <section xml:id="dhcp6-limit"><info><title>DHCPv6 Server Limitations</title></info>
+
<para> These are the current limitations of the DHCPv6 server
software. Most of them are reflections of the early stage of
development and should be treated as <quote>not implemented
<simpara>
The server will allocate, renew or rebind a maximum of one lease
for a particular IA option (IA_NA or IA_PD) sent by a client.
- <ulink url="http://tools.ietf.org/html/rfc3315">RFC 3315</ulink> and
- <ulink url="http://tools.ietf.org/html/rfc3633">RFC 3633</ulink> allow
+ <link xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="http://tools.ietf.org/html/rfc3315">RFC 3315</link> and
+ <link xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="http://tools.ietf.org/html/rfc3633">RFC 3633</link> allow
for multiple addresses or prefixes to be allocated for a single IA.
</simpara>
</listitem>
</section> -->
- </chapter>
+ </chapter>
\ No newline at end of file
-<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE book PUBLIC "-//OASIS//DTD DocBook XML V4.2//EN"
-"http://www.oasis-open.org/docbook/xml/4.2/docbookx.dtd" [
-<!ENTITY mdash "—" >
-]>
-
-<chapter id="faq">
- <title>Frequently Asked Questions</title>
+<!-- Converted by db4-upgrade version 1.0 -->
+<chapter xmlns="http://docbook.org/ns/docbook" version="5.0" xml:id="faq"><info><title>Frequently Asked Questions</title></info>
+
<para>This chapter contains a number of frequently asked questions and
troubleshooting tips. It currently lacks content, but it is expected to grow
at least 2 years. If you have something short term, please consider putting
it in the known issues list. -->
- <section id="faq-generic">
- <title>General Frequently Asked Questions</title>
+ <section xml:id="faq-generic"><info><title>General Frequently Asked Questions</title></info>
+
- <section id="q1-generic">
- <title>Where did the Kea name came from?</title>
+ <section xml:id="q1-generic"><info><title>Where did the Kea name came from?</title></info>
+
<para>Kea is the name of a high mountain parrot living in New Zealand.
- See this <ulink url="https://lists.isc.org/pipermail/kea-users/2014-October/000032.html" />
+ See this <uri xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="https://lists.isc.org/pipermail/kea-users/2014-October/000032.html">https://lists.isc.org/pipermail/kea-users/2014-October/000032.html</uri>
for an extended answer.</para>
</section>
- <section id="q2-generic">
- <title>Feature X is not supported yet. When/if will it be available?</title>
+ <section xml:id="q2-generic"><info><title>Feature X is not supported yet. When/if will it be available?</title></info>
+
<para>Kea is developed by a small team of engineers. Our resources are
limited, so we need to prioritize requests. The complexity of a new
significant new features, like support for a new database type. Before
considering writing and submitting a patch, make sure you read
the Contributor's Guide in the
- <ulink url="http://git.kea.isc.org/~tester/kea/doxygen/">Kea Developer's Guide</ulink>.
+ <link xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="http://git.kea.isc.org/~tester/kea/doxygen/">Kea Developer's Guide</link>.
</para>
<para>Kea is developed by ISC, which is a non-profit organization.
violates a RFC, we may have a problem with that. Nevertheless, please
talk to us and we may be able to find a solution.</para>
- <para>Finally, Kea has a <ulink url="http://kea.isc.org/roadmap">public
- roadmap</ulink>, with releases happening several times each year. We tend
+ <para>Finally, Kea has a <link xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="http://kea.isc.org/roadmap">public
+ roadmap</link>, with releases happening several times each year. We tend
to not modify plans for the current milestone, unless there are very good
reasons to do so. Therefore "I'd like a feature X in 6 months" is much
better received than "I'd like a feature X now".</para>
</section>
- <section id="faq-dhcp4">
- <title>Frequently Asked Questions about DHCPv4</title>
+ <section xml:id="faq-dhcp4"><info><title>Frequently Asked Questions about DHCPv4</title></info>
+
- <section iq="q1-dhcp4">
- <title>I set up a firewall, but the Kea server still receives the traffic. Why?</title>
+ <section iq="q1-dhcp4"><info><title>I set up a firewall, but the Kea server still receives the traffic. Why?</title></info>
+
<para>Any DHCPv4 server must be able to receive from and send traffic to
hosts that don't have an IPv4 address assigned yet. That is typically not
<para>If you do not want the server to use raw sockets, it is possible to
configure the Kea DHCPv4 server to use UDP sockets instead. See <command>dhcp-socket-type</command>
- described in <xref linkend="dhcp4-interface-configuration" />. However,
+ described in <xref linkend="dhcp4-interface-configuration"/>. However,
using UDP sockets has certain limitations. In particular, they may not allow
for sending responses directly to clients without IPv4 addresses assigned.
That's ok, if all your traffic is coming through relay agents.</para>
</section> <!-- end of DHCPv4 FAQ section -->
- <section id="faq-dhcp6">
- <title>Frequently Asked Questions about DHCPv6</title>
+ <section xml:id="faq-dhcp6"><info><title>Frequently Asked Questions about DHCPv6</title></info>
+
- <section iq="q1-dhcp6">
- <title>Kea DHCPv6 doesn't seem to get incoming traffic. I checked with tcpdump (or other traffic
- capture software) that the incoming traffic is reaching the box. What's wrong?</title>
+ <section iq="q1-dhcp6"><info><title>Kea DHCPv6 doesn't seem to get incoming traffic. I checked with tcpdump (or other traffic
+ capture software) that the incoming traffic is reaching the box. What's wrong?</title></info>
+
<para>Please check whether your OS has any IPv6 filtering rules. Many
operating systems are shipped with firewalls that discard incoming IPv6
</section> <!-- end of DHCPv6 FAQ section -->
- </chapter>
+ </chapter>
\ No newline at end of file
-<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE book PUBLIC "-//OASIS//DTD DocBook XML V4.2//EN"
-"http://www.oasis-open.org/docbook/xml/4.2/docbookx.dtd" [
-<!ENTITY mdash "—" >
-]>
-
- <chapter id="hooks-libraries">
- <title>Hooks Libraries</title>
- <section id="hooks-libraries-introduction">
- <title>Introduction</title>
+<!-- Converted by db4-upgrade version 1.0 -->
+<chapter xmlns="http://docbook.org/ns/docbook" version="5.0" xml:id="hooks-libraries"><info><title>Hooks Libraries</title></info>
+
+ <section xml:id="hooks-libraries-introduction"><info><title>Introduction</title></info>
+
<para>
Although Kea offers a lot of flexibility, there may be cases where
its behavior needs customisation. To accommodate this possibility,
<para>
The next section describes how to configure hooks libraries. If you
are interested in writing your own hooks library, information can be
- found in the <ulink url="https://jenkins.isc.org/job/Fedora20_32_doxygen_doc/doxygen/">Kea
- Developer's Guide</ulink>.
+ found in the <link xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="https://jenkins.isc.org/job/Fedora20_32_doxygen_doc/doxygen/">Kea
+ Developer's Guide</link>.
</para>
</section> <!-- end Introduction -->
- <section>
- <title>Configuring Hooks Libraries</title>
+ <section><info><title>Configuring Hooks Libraries</title></info>
+
<para>
The hooks libraries for a given process are configured using the
<command>hooks-libraries</command> keyword in the
<para>
Notes:
- <itemizedlist mark='bullet'>
+ <itemizedlist mark="bullet">
<listitem><para>
The full path to each library should be given.
</para></listitem>
</para>
</section>
- <section>
- <title>Available Hooks Libraries</title>
+ <section><info><title>Available Hooks Libraries</title></info>
+
<para>
As described above, the hooks functionality provides a way to customize
a Kea server without modifying the core code. ISC has chosen to take
<para>Currently the following libraries are available or planned from ISC:
- <table frame="all" id="hook-libs">
- <title>List of available hooks libraries</title>
- <tgroup cols='3'>
- <colspec colname='name' />
- <colspec colname='avail' />
- <colspec colname='description' />
+ <table frame="all" xml:id="hook-libs"><info><title>List of available hooks libraries</title></info>
+
+ <tgroup cols="3">
+ <colspec colname="name"/>
+ <colspec colname="avail"/>
+ <colspec colname="description"/>
<thead>
<row>
<entry>Name</entry>
<entry>Support customers</entry>
<entry>Autumn 2016</entry>
<entry>Lightweight 4over6
- (<ulink url="http://tools.ietf.org/html/rfc7596">RFC 7596</ulink>)
+ (<link xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="http://tools.ietf.org/html/rfc7596">RFC 7596</link>)
is a new IPv6 transition
technology that provides IPv4 as a service in IPv6-only
network. It assumes that dual-stack clients will get a regular IPv6
expensive Carrier Grade NATs within the operator's network. The
problem on the DHCP side is the non-trivial logic behind it: each
client needs to receive an unique set of lightweight 4over6 options
- (<ulink url="http://tools.ietf.org/html/rfc7598">RFC 7598</ulink>),
+ (<link xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="http://tools.ietf.org/html/rfc7598">RFC 7598</link>),
that include the IPv4 address (shared among several
clients), port-set (which is unique among clients sharing the same
IPv4 address) and a number of additional parameters. This hooks
ISC hopes to see more hooks libraries become available as time
progresses, both developed internally and externally. Since
this list may evolve dynamically, we decided to keep it on a
- wiki page, available at this link: <ulink
- url="http://kea.isc.org/wiki/Hooks">http://kea.isc.org/wiki/Hooks</ulink>.
+ wiki page, available at this link: <link xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="http://kea.isc.org/wiki/Hooks">http://kea.isc.org/wiki/Hooks</link>.
If you are a developer or are aware of any hooks libraries not
listed there, please send a note to the kea-users or kea-dev
mailing lists and someone will update it.
</para>
- <section>
- <title>user_chk: Checking User Access</title>
+ <section><info><title>user_chk: Checking User Access</title></info>
+
<para>
The user_chk library is the first hooks library published by ISC. It
attempts to serve several purposes:
</para>
<para>As with any other hooks libraries provided by ISC, internals of the
- user_chk code are well documented. You can take a look at the <ulink
- url="https://jenkins.isc.org/job/Fedora20_32_doxygen_doc/doxygen/d8/db2/libdhcp_user_chk.html">Kea Developer's Guide section dedicated to the user_chk library</ulink>
+ user_chk code are well documented. You can take a look at the <link xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="https://jenkins.isc.org/job/Fedora20_32_doxygen_doc/doxygen/d8/db2/libdhcp_user_chk.html">Kea Developer's Guide section dedicated to the user_chk library</link>
that discusses how the code works internally. That, together with
- our general entries in <ulink
- url="https://jenkins.isc.org/job/Fedora20_32_doxygen_doc/doxygen/">Hooks
- Framework section</ulink> should give you some pointers how to extend
+ our general entries in <link xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="https://jenkins.isc.org/job/Fedora20_32_doxygen_doc/doxygen/">Hooks
+ Framework section</link> should give you some pointers how to extend
this library and perhaps even write your own from scratch.</para>
</section>
- <section>
- <title>Forensic Logging Hooks</title>
+ <section><info><title>Forensic Logging Hooks</title></info>
+
<para>
This section describes the forensic log hooks library. This library
povides hooks that record a detailed log of lease assignments
features those users who don't need to log this information can
leave it out and avoid any performance penalties.
</para>
- <section>
- <title>Log File Naming</title>
+ <section><info><title>Log File Naming</title></info>
+
<para>
The names for the log files have the following form:
</para>
path/base-name.CCYYMMDD.txt
</screen>
<para>
- The "path" and "base-name" are supplied in the
+ The "path" and "base-name" are supplied in the
configuration as described below see
<xref linkend="forensic-log-configuration"/>. The next part of the name is
the date the log file was started, with four digits for year, two digits
be distinct. See the examples in <xref linkend="forensic-log-configuration"/>.
</para></note>
</section>
- <section>
- <title>DHCPv4 Log Entries</title>
+ <section><info><title>DHCPv4 Log Entries</title></info>
+
<para>
For DHCPv4 the library creates entries based on DHCPREQUEST messages
and corresponding DHCPv4 leases intercepted by lease4_select
<listitem><para>
duration - the lease lifetime expressed in days (if present),
hours, minutes and seconds. A lease lifetime of 0xFFFFFFFF will be
- denoted with the text "infinite duration".
+ denoted with the text "infinite duration".
</para></listitem>
<listitem><para>
device-id - the client's hardware address shown as numerical type
</screen>
</para>
</section>
- <section>
- <title>DHCPv6 Log Entries</title>
+ <section><info><title>DHCPv6 Log Entries</title></info>
+
<para>
For DHCPv6 the library creates entries based on lease management
actions intercepted by the lease6_select (for new leases), lease6_renew
</screen>
</para>
</section>
- <section id="forensic-log-configuration">
- <title>Configuring the Forensic Log Hooks</title>
+ <section xml:id="forensic-log-configuration"><info><title>Configuring the Forensic Log Hooks</title></info>
+
<para>
To use this functionality the hook library must be included in the
configuration of the desired DHCP server modules. The legal_log
library is installed alongside the Kea libraries in
<filename>[kea-install-dir]/lib</filename> where
<filename>kea-install-dir</filename> is determined by the
- "--prefix" option of the configure script. It defaults to
+ "--prefix" option of the configure script. It defaults to
<filename>/usr/local</filename>. Assuming the
default value then, configuring kea-dhcp4 to load the legal_log
library could be done with the following Kea4 configuration:
</section>
</section>
</section>
- <section id="user-context">
- <title>User contexts</title>
+ <section xml:id="user-context"><info><title>User contexts</title></info>
+
<para>Hook libraries can have their own configuration parameters. That is
convenient if the parameter applies to the whole library. However,
sometimes it is very useful if certain configuration entities are extended
user context capability.
</para>
</section>
- </chapter> <!-- hooks-libraries -->
+ </chapter>
\ No newline at end of file
-<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE book PUBLIC "-//OASIS//DTD DocBook XML V4.2//EN"
-"http://www.oasis-open.org/docbook/xml/4.2/docbookx.dtd" [
-<!ENTITY mdash "—" >
-]>
+<!-- Converted by db4-upgrade version 1.0 -->
+<chapter xmlns="http://docbook.org/ns/docbook" version="5.0" xml:id="installation"><info><title>Installation</title></info>
+
- <chapter id="installation">
- <title>Installation</title>
-
- <section id="packages">
- <title>Packages</title>
+ <section xml:id="packages"><info><title>Packages</title></info>
+
<para>
Some operating systems or software package vendors may provide
</para>
</section>
- <section id="install-hierarchy">
- <title>Installation Hierarchy</title>
+ <section xml:id="install-hierarchy"><info><title>Installation Hierarchy</title></info>
+
<para>
The following is the directory layout of the complete Kea installation.
(All directory paths are relative to the installation directory):
<itemizedlist>
<listitem>
<simpara>
- <filename>bin/</filename> —
+ <filename>bin/</filename> —
utility programs.
</simpara>
</listitem>
<listitem>
<simpara>
- <filename>etc/kea/</filename> —
+ <filename>etc/kea/</filename> —
configuration files.
</simpara>
</listitem>
<listitem>
<simpara>
- <filename>include/</filename> —
+ <filename>include/</filename> —
C++ development header files.
</simpara>
</listitem>
<listitem>
<simpara>
- <filename>lib/</filename> —
+ <filename>lib/</filename> —
libraries.
</simpara>
</listitem>
<listitem>
<simpara>
- <filename>sbin/</filename> —
+ <filename>sbin/</filename> —
server software and commands used by the system administrator.
</simpara>
</listitem>
<listitem>
<simpara>
- <filename>share/kea/</filename> —
+ <filename>share/kea/</filename> —
configuration specifications and examples.
</simpara>
</listitem>
<listitem>
<simpara>
- <filename>share/doc/kea/</filename> —
+ <filename>share/doc/kea/</filename> —
this guide, other supplementary documentation, and examples.
</simpara>
</listitem>
<listitem>
<simpara>
- <filename>share/man/</filename> —
+ <filename>share/man/</filename> —
manual pages (online documentation).
</simpara>
</listitem>
<listitem>
<simpara>
- <filename>var/kea/</filename> —
+ <filename>var/kea/</filename> —
server identification, lease databases, and log files.
</simpara>
</listitem>
</para>
</section>
- <section id="build-requirements">
- <title>Building Requirements</title>
+ <section xml:id="build-requirements"><info><title>Building Requirements</title></info>
+
<para>
- In addition to the run-time requirements (listed in <xref
- linkend="required-software"/>), building Kea from source code requires
+ In addition to the run-time requirements (listed in <xref linkend="required-software"/>), building Kea from source code requires
various development include headers and program development tools.
</para>
<itemizedlist>
<listitem>
<para>Boost build-time headers
- (<ulink url="http://www.boost.org/"/>).
+ (<uri xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="http://www.boost.org/">http://www.boost.org/</uri>).
At least Boost version 1.41 is required.
When header-only Boost error code is not available or wanted, the
Boost system library is required too.
<para>
Visit the user-contributed wiki at
- <ulink url="http://kea.isc.org/wiki/SystemSpecificNotes" />
+ <uri xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="http://kea.isc.org/wiki/SystemSpecificNotes">http://kea.isc.org/wiki/SystemSpecificNotes</uri>
for system-specific installation tips.
</para>
</section>
- <section id="install">
- <title>Installation from Source</title>
+ <section xml:id="install"><info><title>Installation from Source</title></info>
+
<para>
Kea is open source software written in C++. It is freely available in
source code form from ISC as a downloadable tar file. A copy of the Kea
- source code repository is accessible from Github (<ulink
- url="https://github.com/isc-projects/kea"/>). Kea may also be available
+ source code repository is accessible from Github (<uri xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="https://github.com/isc-projects/kea">https://github.com/isc-projects/kea</uri>). Kea may also be available
in pre-compiled ready-to-use packages from operating system vendors.
</para>
- <section>
+ <section><info><title>Download Tar File</title></info>
- <title>Download Tar File</title>
+
<para>
The Kea release tarballs may be downloaded from:
- <ulink url="http://ftp.isc.org/isc/kea/"/> (using FTP or HTTP).
+ <uri xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="http://ftp.isc.org/isc/kea/">http://ftp.isc.org/isc/kea/</uri> (using FTP or HTTP).
</para>
</section>
- <section>
- <title>Retrieve from Git</title>
+ <section><info><title>Retrieve from Git</title></info>
+
<para>
Downloading this "bleeding edge" code is recommended only for
developers or advanced users. Using development code in a production
<para>
The latest development code is available on Github (see
- <ulink url="https://github.com/isc-projects/kea"/>). The Kea source
+ <uri xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="https://github.com/isc-projects/kea">https://github.com/isc-projects/kea</uri>). The Kea source
is public and development is done in the <quote>master</quote>
branch.
</para>
are a developer planning to contribute to Kea, please fork our Github
repository and use the "pull request" mechanism to request integration of
your code. Please consult
- <ulink url="https://help.github.com/articles/fork-a-repo/"/> for help on
+ <uri xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="https://help.github.com/articles/fork-a-repo/">https://help.github.com/articles/fork-a-repo/</uri> for help on
how to fork a Github repository.
- The <ulink url="http://git.kea.isc.org/~tester/kea/doxygen/">Kea
- Developer's Guide</ulink> contains more information about the process, as
+ The <link xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="http://git.kea.isc.org/~tester/kea/doxygen/">Kea
+ Developer's Guide</link> contains more information about the process, as
well as describing the requirements for contributed code to be accepted by ISC.
</para>
</section>
- <section id="configure">
- <title>Configure Before the Build</title>
+ <section xml:id="configure"><info><title>Configure Before the Build</title></info>
+
<para>
Kea uses the GNU Build System to discover build environment
details.
Google Test framework. This option specifies the path to the
gtest source. (If the framework
is not installed on your system, it can be downloaded
- from <ulink url="https://code.google.com/p/googletest"/>.)
+ from <uri xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="https://code.google.com/p/googletest">https://code.google.com/p/googletest</uri>.)
</simpara>
</listitem>
</varlistentry>
For instructions concerning the installation and configuration
of database backends for Kea, see <xref linkend="dhcp-install-configure"/>.
For information concerning the configuration backends, see
- <xref linkend="dhcp-config-backend" />.
+ <xref linkend="dhcp-config-backend"/>.
</para>
</note>
</para>
</section>
- <section>
- <title>Build</title>
+ <section><info><title>Build</title></info>
+
<para>
After the configure step is complete, build the executables
from the C++ code and prepare the Python scripts by running the command:
</para>
</section>
- <section>
- <title>Install</title>
+ <section><info><title>Install</title></info>
+
<para>
To install the Kea executables, support files,
and documentation, issue the command:
</section>
- <section id="dhcp-config-backend">
- <title>Selecting the Configuration Backend</title>
+ <section xml:id="dhcp-config-backend"><info><title>Selecting the Configuration Backend</title></info>
+
<para>Kea 0.9 introduced configuration backends that are
switchable during the compilation phase. Only one backend, JSON,
is currently supported.
</section>
- <section id="dhcp-install-configure">
- <title>DHCP Database Installation and Configuration</title>
+ <section xml:id="dhcp-install-configure"><info><title>DHCP Database Installation and Configuration</title></info>
+
<para>
Kea stores its leases in a lease database. The software has been
written in a way that makes it possible to choose which database product
When unit tests are built with Kea (the --with-gtest configuration option is specified),
the databases must be manually pre-configured for the unit tests to run.
The details of this configuration can be found in the
- <ulink url="http://git.kea.isc.org/~tester/kea/doxygen">Kea Developer's
- Guide</ulink>.
+ <link xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="http://git.kea.isc.org/~tester/kea/doxygen">Kea Developer's
+ Guide</link>.
</simpara>
</note>
- <section>
- <title>Building with MySQL Support</title>
+ <section><info><title>Building with MySQL Support</title></info>
+
<para>
Install MySQL according to the instructions for your system. The client development
libraries must be installed.
</para>
</section>
- <section>
- <title>Building with PostgreSQL support</title>
+ <section><info><title>Building with PostgreSQL support</title></info>
+
<para>
Install PostgreSQL according to the instructions for your system. The client development
- libraries must be installed. Client development libraries are often packaged as "libpq".
+ libraries must be installed. Client development libraries are often packaged as "libpq".
</para>
<para>
Build and install Kea as described in <xref linkend="installation"/>, with
</para>
</section>
- <section>
- <title>Building with CQL (Cassandra) support</title>
+ <section><info><title>Building with CQL (Cassandra) support</title></info>
+
<para>
Install Cassandra according to the instructions for your system. The
- Cassandra project website contains useful pointers: <ulink
- url="http://cassandra.apache.org" />.
+ Cassandra project website contains useful pointers: <uri xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="http://cassandra.apache.org">http://cassandra.apache.org</uri>.
</para>
<para>
Download and compile cpp-driver from DataStax. For details regarding
dependencies for building cpp-driver, see the project homepage
- <ulink url="https://github.com/datastax/cpp-driver" />. In June
+ <uri xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="https://github.com/datastax/cpp-driver">https://github.com/datastax/cpp-driver</uri>. In June
2016, the following commands were used:
<screen>
$ <userinput>git clone https://github.com/datastax/cpp-driver</userinput>
</section>
</section>
- </chapter>
+ </chapter>
\ No newline at end of file
-<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE book PUBLIC "-//OASIS//DTD DocBook XML V4.2//EN"
-"http://www.oasis-open.org/docbook/xml/4.2/docbookx.dtd" [
-<!ENTITY mdash "—" >
-<!ENTITY % version SYSTEM "version.ent">
-%version;
-]>
-
- <chapter id="intro">
- <title>Introduction</title>
+<!-- Converted by db4-upgrade version 1.0 -->
+<chapter xmlns="http://docbook.org/ns/docbook" version="5.0" xml:id="intro"><info><title>Introduction</title></info>
+
<para>
Kea is the next generation of DHCP software developed by ISC.
It supports both DHCPv4 and DHCPv6 protocols along with their
</para>
<para>
- This guide covers Kea version &__VERSION__;.
+ This guide covers Kea version .
</para>
- <section>
- <title>Supported Platforms</title>
+ <section><info><title>Supported Platforms</title></info>
+
<para>
Kea is officially supported on Red Hat Enterprise Linux,
CentOS, Fedora and FreeBSD systems. It is also likely to work on many
<para>There are currently no plans to port Kea to Windows platforms.</para>
</section>
- <section id="required-software">
- <title>Required Software at Run-time</title>
+ <section xml:id="required-software"><info><title>Required Software at Run-time</title></info>
+
<para>
Running Kea uses various extra software which may
<simpara>
Kea supports two crypto libraries: Botan and OpenSSL. Only one of them
is required to be installed during compilation. Kea uses the Botan
- crypto library for C++ (<ulink url="http://botan.randombit.net/"/>),
+ crypto library for C++ (<uri xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="http://botan.randombit.net/">http://botan.randombit.net/</uri>),
version 1.8 or later. As an alternative to Botan, Kea can use the
- OpenSSL crypto library (<ulink url="http://www.openssl.org/"/>),
+ OpenSSL crypto library (<uri xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="http://www.openssl.org/">http://www.openssl.org/</uri>),
version 1.0.1 or later.
</simpara>
</listitem>
<listitem>
<simpara>
Kea uses the log4cplus C++ logging library
- (<ulink url="http://log4cplus.sourceforge.net/"/>).
+ (<uri xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="http://log4cplus.sourceforge.net/">http://log4cplus.sourceforge.net/</uri>).
It requires log4cplus version 1.0.3 or later.
</simpara>
</listitem>
</itemizedlist>
</section>
- <section id="kea_software">
- <title>Kea Software</title>
+ <section xml:id="kea_software"><info><title>Kea Software</title></info>
+
<para>
Kea is modular. Part of this modularity is
accomplished using multiple cooperating processes which, together,
<listitem>
<simpara>
- <command>keactrl</command> —
+ <command>keactrl</command> —
Tool to start, stop, reconfigure, and report status
for the Kea servers.
</simpara>
<listitem>
<simpara>
- <command>kea-dhcp4</command> —
+ <command>kea-dhcp4</command> —
The DHCPv4 server process.
This process responds to DHCPv4 queries from clients.
</simpara>
<listitem>
<simpara>
- <command>kea-dhcp6</command> —
+ <command>kea-dhcp6</command> —
The DHCPv6 server process.
This process responds to DHCPv6 queries from clients.
</simpara>
<listitem>
<simpara>
- <command>kea-dhcp-ddns</command> —
+ <command>kea-dhcp-ddns</command> —
The DHCP Dynamic DNS process.
This process acts as an intermediary between the DHCP servers
and DNS servers. It receives name update requests from the DHCP
<listitem>
<simpara>
- <command>kea-admin</command> —
+ <command>kea-admin</command> —
A useful tool for database backend maintenance (creating a new
database, checking versions, upgrading etc.)
</simpara>
<listitem>
<simpara>
- <command>kea-lfc</command> —
+ <command>kea-lfc</command> —
This process removes redundant information from the files used
to provide persistent storage for the memfile data base backend.
While it can be run standalone, it is normally run as and when
<listitem>
<simpara>
- <command>perfdhcp</command> —
+ <command>perfdhcp</command> —
A DHCP benchmarking tool which simulates multiple clients to
test both DHCPv4 and DHCPv6 server performance.
</simpara>
<!-- TODO point to this -->
</para>
- </chapter>
+ </chapter>
\ No newline at end of file
-<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE book PUBLIC "-//OASIS//DTD DocBook XML V4.2//EN"
-"http://www.oasis-open.org/docbook/xml/4.2/docbookx.dtd" [
-<!ENTITY mdash "—" >
-<!ENTITY % version SYSTEM "version.ent">
-%version;
-]>
-
-<!--
- - Copyright (C) 2010-2016 Internet Systems Consortium, Inc. ("ISC")
- -
- - This Source Code Form is subject to the terms of the Mozilla Public
- - License, v. 2.0. If a copy of the MPL was not distributed with this
- - file, You can obtain one at http://mozilla.org/MPL/2.0/.
--->
-
-<book>
+<!-- Converted by db4-upgrade version 1.0 -->
+<book xmlns="http://docbook.org/ns/docbook" version="5.0">
<?xml-stylesheet href="kea-guide.css" type="text/css"?>
- <bookinfo>
-
- <title>
+ <info><title>
<inlinemediaobject>
<imageobject>
<imagedata fileref="kea-logo-100x70.png" align="left"/>
Kea Administrator Reference Manual
</title>
+
+
<releaseinfo>This is the reference guide for Kea version
- &__VERSION__;.</releaseinfo>
+ .</releaseinfo>
<copyright>
<year>2010-2016</year><holder>Internet Systems Consortium, Inc.</holder>
</copyright>
- <abstract>
-
- <para>
- Kea is an open source implementation of the Dynamic Host Configuration
- Protocol (DHCP) servers, developed and maintained by Internet Systems
- Consortium (ISC).
- </para>
-
- <para>
- This is the reference guide for Kea version &__VERSION__;.
- The most up-to-date version of this document (in PDF, HTML,
- and plain text formats), along with other documents for
- Kea, can be found at <ulink url="http://kea.isc.org/docs"/>.
- </para> </abstract>
+
- </bookinfo>
+ </info>
- <xi:include xmlns:xi="http://www.w3.org/2001/XInclude" href="intro.xml" />
+ <xi:include xmlns:xi="http://www.w3.org/2001/XInclude" href="intro.xml"/>
- <xi:include xmlns:xi="http://www.w3.org/2001/XInclude" href="quickstart.xml" />
+ <xi:include xmlns:xi="http://www.w3.org/2001/XInclude" href="quickstart.xml"/>
- <xi:include xmlns:xi="http://www.w3.org/2001/XInclude" href="install.xml" />
+ <xi:include xmlns:xi="http://www.w3.org/2001/XInclude" href="install.xml"/>
- <xi:include xmlns:xi="http://www.w3.org/2001/XInclude" href="admin.xml" />
+ <xi:include xmlns:xi="http://www.w3.org/2001/XInclude" href="admin.xml"/>
- <xi:include xmlns:xi="http://www.w3.org/2001/XInclude" href="config.xml" />
+ <xi:include xmlns:xi="http://www.w3.org/2001/XInclude" href="config.xml"/>
- <xi:include xmlns:xi="http://www.w3.org/2001/XInclude" href="keactrl.xml" />
+ <xi:include xmlns:xi="http://www.w3.org/2001/XInclude" href="keactrl.xml"/>
- <xi:include xmlns:xi="http://www.w3.org/2001/XInclude" href="dhcp4-srv.xml" />
+ <xi:include xmlns:xi="http://www.w3.org/2001/XInclude" href="dhcp4-srv.xml"/>
- <xi:include xmlns:xi="http://www.w3.org/2001/XInclude" href="dhcp6-srv.xml" />
+ <xi:include xmlns:xi="http://www.w3.org/2001/XInclude" href="dhcp6-srv.xml"/>
- <xi:include xmlns:xi="http://www.w3.org/2001/XInclude" href="lease-expiration.xml" />
+ <xi:include xmlns:xi="http://www.w3.org/2001/XInclude" href="lease-expiration.xml"/>
- <xi:include xmlns:xi="http://www.w3.org/2001/XInclude" href="ddns.xml" />
+ <xi:include xmlns:xi="http://www.w3.org/2001/XInclude" href="ddns.xml"/>
- <xi:include xmlns:xi="http://www.w3.org/2001/XInclude" href="lfc.xml" />
+ <xi:include xmlns:xi="http://www.w3.org/2001/XInclude" href="lfc.xml"/>
- <xi:include xmlns:xi="http://www.w3.org/2001/XInclude" href="classify.xml" />
+ <xi:include xmlns:xi="http://www.w3.org/2001/XInclude" href="classify.xml"/>
- <xi:include xmlns:xi="http://www.w3.org/2001/XInclude" href="hooks.xml" />
+ <xi:include xmlns:xi="http://www.w3.org/2001/XInclude" href="hooks.xml"/>
- <xi:include xmlns:xi="http://www.w3.org/2001/XInclude" href="stats.xml" />
+ <xi:include xmlns:xi="http://www.w3.org/2001/XInclude" href="stats.xml"/>
- <xi:include xmlns:xi="http://www.w3.org/2001/XInclude" href="ctrl-channel.xml" />
+ <xi:include xmlns:xi="http://www.w3.org/2001/XInclude" href="ctrl-channel.xml"/>
- <xi:include xmlns:xi="http://www.w3.org/2001/XInclude" href="libdhcp.xml" />
+ <xi:include xmlns:xi="http://www.w3.org/2001/XInclude" href="libdhcp.xml"/>
- <xi:include xmlns:xi="http://www.w3.org/2001/XInclude" href="logging.xml" />
+ <xi:include xmlns:xi="http://www.w3.org/2001/XInclude" href="logging.xml"/>
- <xi:include xmlns:xi="http://www.w3.org/2001/XInclude" href="faq.xml" />
+ <xi:include xmlns:xi="http://www.w3.org/2001/XInclude" href="faq.xml"/>
- <chapter id="acknowledgments">
- <title>Acknowledgments</title>
+ <chapter xml:id="acknowledgments"><info><title>Acknowledgments</title></info>
+
<para>Kea is primarily designed, developed, and maintained by
Internet Systems Consortium, Inc. It is an open source project
<para>Support for the development of the DHCPv4, DHCPv6 and
DHCP-DDNS components was provided by
- <ulink url="http://www.comcast.com/">Comcast</ulink>.</para>
+ <link xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="http://www.comcast.com/">Comcast</link>.</para>
<para>Kea was initially implemented as a collection of applications
within the BIND 10 framework. Hence, Kea development would not be
possible without the generous support of past BIND 10 project sponsors.</para>
- <para><ulink url="http://jprs.co.jp/">JPRS</ulink> and
- <ulink url="http://cira.ca/">CIRA</ulink> were Patron Level
+ <para><link xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="http://jprs.co.jp/">JPRS</link> and
+ <link xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="http://cira.ca/">CIRA</link> were Patron Level
BIND 10 sponsors.</para>
- <para><ulink url="https://www.afnic.fr/">AFNIC</ulink>,
- <ulink url="https://www.cnnic.net.cn/">CNNIC</ulink>,
- <ulink url="https://www.nic.cz/">CZ.NIC</ulink>,
- <ulink url="http://www.denic.de/">DENIC eG</ulink>,
- <ulink url="https://www.google.com/">Google</ulink>,
- <ulink url="https://www.ripe.net/">RIPE NCC</ulink>,
- <ulink url="https://registro.br/">Registro.br</ulink>,
- <ulink url="https://nzrs.net.nz/">.nz Registry Services</ulink>, and
- <ulink url="https://www.tcinet.ru/">Technical Center of Internet</ulink>
+ <para><link xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="https://www.afnic.fr/">AFNIC</link>,
+ <link xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="https://www.cnnic.net.cn/">CNNIC</link>,
+ <link xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="https://www.nic.cz/">CZ.NIC</link>,
+ <link xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="http://www.denic.de/">DENIC eG</link>,
+ <link xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="https://www.google.com/">Google</link>,
+ <link xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="https://www.ripe.net/">RIPE NCC</link>,
+ <link xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="https://registro.br/">Registro.br</link>,
+ <link xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="https://nzrs.net.nz/">.nz Registry Services</link>, and
+ <link xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="https://www.tcinet.ru/">Technical Center of Internet</link>
were past BIND 10 sponsors.</para>
- <para><ulink url="https://www.afilias.info/">Afilias</ulink>,
- <ulink url="https://www.iis.se/">IIS.SE</ulink>,
- <ulink url="http://www.nominet.org.uk/">Nominet</ulink>, and
- <ulink url="https://www.sidn.nl/">SIDN</ulink> were founding
+ <para><link xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="https://www.afilias.info/">Afilias</link>,
+ <link xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="https://www.iis.se/">IIS.SE</link>,
+ <link xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="http://www.nominet.org.uk/">Nominet</link>, and
+ <link xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="https://www.sidn.nl/">SIDN</link> were founding
sponsors of the BIND 10 project.</para>
</chapter>
<!-- <index> <title>Index</title> </index> -->
-</book>
+</book>
\ No newline at end of file
-<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE book PUBLIC "-//OASIS//DTD DocBook XML V4.2//EN"
-"http://www.oasis-open.org/docbook/xml/4.2/docbookx.dtd" [
-<!ENTITY mdash "—" >
-]>
+<!-- Converted by db4-upgrade version 1.0 -->
+<chapter xmlns="http://docbook.org/ns/docbook" version="5.0" xml:id="keactrl"><info><title>Managing Kea with keactrl</title></info>
+
- <chapter id="keactrl">
- <title>Managing Kea with keactrl</title>
-
- <section id="keactrl-overview">
- <title>Overview</title>
+ <section xml:id="keactrl-overview"><info><title>Overview</title></info>
+
<para>keactrl is a shell script which controls the startup, shutdown
and reconfiguration of the Kea servers (<command>kea-dhcp4</command>,
<command>kea-dhcp6</command> and <command>kea-dhcp-ddns</command>). It
</para>
</section>
- <section id="keactrl-usage">
- <title>Command Line Options</title>
+ <section xml:id="keactrl-usage"><info><title>Command Line Options</title></info>
+
<para><command>keactrl</command> is run as follows:
<screen>
keactrl <command> [-c keactrl-config-file] [-s server[,server,..]]
</para>
</section>
- <section id="keactrl-config-file">
- <title>The keactrl Configuration File</title>
+ <section xml:id="keactrl-config-file"><info><title>The keactrl Configuration File</title></info>
+
<para>
Depending on requirements, not all of the available servers need
be run. The keactrl configuration file sets which servers are
</note>
</section>
- <section id="keactrl-commands">
- <title>Commands</title>
+ <section xml:id="keactrl-commands"><info><title>Commands</title></info>
+
<para>The following commands are supported by <command>keactrl</command>:
<itemizedlist>
<listitem><simpara>
</para>
</section>
- <section id="keactrl-overriding-servers">
- <title>Overriding the Server Selection</title>
+ <section xml:id="keactrl-overriding-servers"><info><title>Overriding the Server Selection</title></info>
+
<para>
The optional <command>-s</command> switch allows
the selection of the servers to which <command>keactrl</command>
</itemizedlist>
</para>
</section>
- </chapter>
+ </chapter>
\ No newline at end of file
-<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE book PUBLIC "-//OASIS//DTD DocBook XML V4.2//EN"
-"http://www.oasis-open.org/docbook/xml/4.2/docbookx.dtd" [
-<!ENTITY mdash "—" >
-]>
-<chapter id="lease-expiration">
- <title>Lease Expiration in DHCPv4 and DHCPv6</title>
+<!-- Converted by db4-upgrade version 1.0 -->
+<chapter xmlns="http://docbook.org/ns/docbook" version="5.0" xml:id="lease-expiration"><info><title>Lease Expiration in DHCPv4 and DHCPv6</title></info>
+
<para>The primary role of the DHCP server is to assign addresses and/or
delegate prefixes to DHCP clients. These addresses and prefixes are
DHCPv6 server configuration.
</para>
- <section id="lease-reclamation">
- <title>Lease Reclamation</title>
+ <section xml:id="lease-reclamation"><info><title>Lease Reclamation</title></info>
+
<para>Lease reclamation is the process through which an expired lease
becomes available for assignment to the same or different client.
This process involves the following steps for each reclaimed lease:
hooks libraries.</para>
</section>
- <section id="lease-reclaim-config">
- <title>Configuring Lease Reclamation</title>
+ <section xml:id="lease-reclaim-config"><info><title>Configuring Lease Reclamation</title></info>
+
<para>Kea can be configured to periodically detect and reclaim expired
leases. During this process the lease entries in the database are
modified or removed. While this is happening the server will not process incoming DHCP
<screen>
| c1 | | c2 | |c3| | c4 |
-|<---->|<---------->|<-->|<---------->|<>|<---------->|<-->|
----------------------------------------------------------------->
+|<---->|<---------->|<-->|<---------->|<>|<---------->|<-->|
+---------------------------------------------------------------->
| | 5s | | 5s | | 5s | | time
</screen>
<screen>
| c1 | | c2 | | c3 | | c4 |
-|<-->|<-------------->|<-->|<-------------->|<-->|<-------------->|<-->|<--
------------------------------------------------------------------------------->
+|<-->|<-------------->|<-->|<-------------->|<-->|<-------------->|<-->|<--
+------------------------------------------------------------------------------>
|50ms| 3s |50ms| 3s |50ms| 3s |50ms| time
</screen>
periodic reclamation of the expired leases.</para>
</section>
- <section id="lease-affinity">
- <title>Configuring Lease Affinity</title>
+ <section xml:id="lease-affinity"><info><title>Configuring Lease Affinity</title></info>
+
<para>Suppose that a laptop goes to a sleep mode after a period of user
inactivity. While the laptop is in sleep mode, its DHCP client will not
renew leases obtained from the server and these leases will eventually
process may impact server responsiveness.</para>
</section>
- <section id="lease-reclamation-defaults">
- <title>Default Configuration Values for Leases Reclamation</title>
+ <section xml:id="lease-reclamation-defaults"><info><title>Default Configuration Values for Leases Reclamation</title></info>
+
<para>The following list presents all configuration parameters
pertaining to processing expired leases with their default values:</para>
</section>
- <section id="leases-reclamation-using-command">
- <title>Reclaiming Expired Leases with Command</title>
+ <section xml:id="leases-reclamation-using-command"><info><title>Reclaiming Expired Leases with Command</title></info>
+
<para>The <emphasis>leases-reclaim</emphasis> command can be used to trigger
leases reclamation at any time. Please consult the
<xref linkend="command-leases-reclaim"/> for the details about using this
command.</para>
</section>
-</chapter>
+</chapter>
\ No newline at end of file
-<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE book PUBLIC "-//OASIS//DTD DocBook XML V4.2//EN"
-"http://www.oasis-open.org/docbook/xml/4.2/docbookx.dtd" [
-<!ENTITY mdash "—" >
-]>
+<!-- Converted by db4-upgrade version 1.0 -->
+<chapter xmlns="http://docbook.org/ns/docbook" version="5.0" xml:id="kea-lfc"><info><title>The LFC process</title></info>
+
- <chapter id="kea-lfc">
- <title>The LFC process</title>
-
- <section id="kea-lfc-overview">
- <title>Overview</title>
+ <section xml:id="kea-lfc-overview"><info><title>Overview</title></info>
+
<para><command>kea-lfc</command> is a service process that removes
redundant information from the files used to provide persistent storage
for the memfile data base backend. This service is written to run as a
</para>
</section>
- <section id="kea-lfc-usage">
- <title>Command Line Options</title>
+ <section xml:id="kea-lfc-usage"><info><title>Command Line Options</title></info>
+
<para><command>kea-lfc</command> is run as follows:
<screen>
kea-lfc [-4 | -6] -c config-file -p pid-file -x previous-file -i copy-file -o output-file -f finish-file
<itemizedlist>
<listitem><simpara>
- <command>previous</command> —
+ <command>previous</command> —
When <command>kea-lfc</command> starts this
is the result of any previous run of <command>kea-lfc</command>.
When <command>kea-lfc</command> finishes it is the result of this run.
</simpara></listitem>
<listitem><simpara>
- <command>input</command> —
+ <command>input</command> —
Before the DHCP server invokes <command>kea-lfc</command> it will
move the current lease file here and then call <command>kea-lfc</command>
with this file.
</simpara></listitem>
<listitem><simpara>
- <command>output</command> —
+ <command>output</command> —
The temporary file <command>kea-lfc</command> should use to write the leases.
Upon completion of writing this file, it will be moved to the finish file
(see below).
</simpara></listitem>
<listitem><simpara>
- <command>finish</command> —
+ <command>finish</command> —
Another temporary file <command>kea-lfc</command> uses for bookkeeping. When
<command>kea-lfc</command> completes writing the outputfile it moves it to this
file name. After <command>kea-lfc</command> finishes deleting the other files
</para>
</section>
- </chapter>
+ </chapter>
\ No newline at end of file
-<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE book PUBLIC "-//OASIS//DTD DocBook XML V4.2//EN"
-"http://www.oasis-open.org/docbook/xml/4.2/docbookx.dtd" [
-<!ENTITY mdash "—" >
-]>
-
- <chapter id="libdhcp">
- <title>The libdhcp++ Library</title>
+<!-- Converted by db4-upgrade version 1.0 -->
+<chapter xmlns="http://docbook.org/ns/docbook" version="5.0" xml:id="libdhcp"><info><title>The libdhcp++ Library</title></info>
+
<para>
libdhcp++ is a library written in C++ that handles
many DHCP-related tasks, including:
<!-- TODO: point to doxygen docs -->
- <section id="iface-detect">
- <title>Interface detection and Socket handling</title>
+ <section xml:id="iface-detect"><info><title>Interface detection and Socket handling</title></info>
+
<para>Both the DHCPv4 and DHCPv6 components share network
interface detection routines. Interface detection is
currently supported on Linux, all BSD family (FreeBSD, NetBSD,
</section>
-->
- </chapter>
+ </chapter>
\ No newline at end of file
-<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE book PUBLIC "-//OASIS//DTD DocBook XML V4.2//EN"
-"http://www.oasis-open.org/docbook/xml/4.2/docbookx.dtd" [
-<!ENTITY mdash "—" >
-]>
-
- <!-- Note: Please use the following terminology:
- - daemon - one process (e.g. kea-dhcp4)
- - component - one piece of code within a daemon (e.g. libdhcp or hooks)
- - server - currently equal to daemon, but the difference will be more
- prominent once we add client or relay support
- - logger - one instance of isc::log::Logger
- - structure - an element in config file (e.g. "Dhcp4")
-
- Do not use:
- - module => daemon
- -->
-
-<chapter id="logging">
- <title>Logging</title>
-
- <section>
- <title>Logging Configuration</title>
+<!-- Converted by db4-upgrade version 1.0 -->
+<chapter xmlns="http://docbook.org/ns/docbook" version="5.0" xml:id="logging"><info><title>Logging</title></info>
+
+
+ <section><info><title>Logging Configuration</title></info>
+
<para>
During its operation Kea may produce many messages. They differ in
severity (some are more important than others) and source (some are
logging configuration between daemons.
</para>
- <section>
- <title>Loggers</title>
+ <section><info><title>Loggers</title></info>
+
<para>
Within Kea, a message is logged through an entity called a
"logger". Different components log messages through different
severity or greater to standard output. There is also a small
time window after Kea has been started, but has not yet read its
configuration. Logging in this short period can be controlled
- using environment variables. For details, see <xref linkend="logging-during-startup"></xref>.
+ using environment variables. For details, see <xref linkend="logging-during-startup"/>.
</para>
<para>
debug-level logging has been selected.
</para>
- <section>
- <title>name (string)</title>
+ <section><info><title>name (string)</title></info>
+
<para>
Each logger in the system has a name, the name being that of the
component binary file using it to log messages. For instance, if you
that might match a particular logger, the specification with the
more specific logger name takes precedence. For example, if there
are entries for both <quote>kea-dhcp4</quote> and
- <quote>kea-dhcp4.dhcpsrv</quote>, the DHCPv4 server — and all
- libraries it uses that are not dhcpsrv — will log messages
+ <quote>kea-dhcp4.dhcpsrv</quote>, the DHCPv4 server — and all
+ libraries it uses that are not dhcpsrv — will log messages
according to the configuration in the first entry
(<quote>kea-dhcp4</quote>).
</para>
</para>
</section>
- <section>
- <title>severity (string)</title>
+ <section><info><title>severity (string)</title></info>
+
<para>
This specifies the category of messages logged. Each message is
logged with an associated severity which may be one of the following
</note>
</section>
- <section>
- <title>debuglevel (integer)</title>
+ <section><info><title>debuglevel (integer)</title></info>
+
<para>
When a logger's severity is set to DEBUG, this value specifies what
level of debug messages should be printed. It ranges from 0 (least
</para>
</section>
- <section>
- <title>output_options (list)</title>
+ <section><info><title>output_options (list)</title></info>
+
<para>
Each logger can have zero or more <option>output_options</option>.
These specify where log messages are sent. These are explained in
detail below.
</para>
- <section>
- <title>output (string)</title>
+ <section><info><title>output (string)</title></info>
+
<para>
This value determines the type of output. There are several special
values allowed here: <command>stdout</command> (messages are printed
</para>
</section>
- <section>
- <title>flush (true of false)</title>
+ <section><info><title>flush (true of false)</title></info>
+
<para>
Flush buffers after each log message. Doing this will reduce
performance but will ensure that if the program terminates
</para>
</section>
- <section>
- <title>maxsize (integer)</title>
+ <section><info><title>maxsize (integer)</title></info>
+
<para>
Only relevant when destination is file, this is maximum file size of
output files in bytes. When the maximum size is reached, the file is
renamed and a new file opened. (For example, a ".1" is appended to
- the name — if a ".1" file exists, it is renamed ".2", etc.)
+ the name — if a ".1" file exists, it is renamed ".2", etc.)
</para>
<para>
If this is set to 0 or omitted, no maximum file size is used.
</note>
</section>
- <section>
- <title>maxver (integer)</title>
+ <section><info><title>maxver (integer)</title></info>
+
<para>
Maximum number of old log files to keep around when rolling the
output file. Only relevant when <option>output</option> is
</section>
</section>
- <section>
- <title>Example Logger Configurations</title>
+ <section><info><title>Example Logger Configurations</title></info>
+
<para>
In this example we want to set the global logging to write to the
console using standard output.
</section>
- <section id="logging-message-format">
- <title>Logging Message Format</title>
+ <section xml:id="logging-message-format"><info><title>Logging Message Format</title></info>
+
<para>
Each message written to the configured logging destinations comprises a
number of components that identify the origin of the message and, if the
<para>
The message identification. Every message in Kea has a unique
identification, which can be used as an index into the
- <ulink url="kea-messages.html"><citetitle>Kea Messages
- Manual</citetitle></ulink>
- (<ulink url="http://kea.isc.org/docs/kea-messages.html" />)
+ <link xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="kea-messages.html"><citetitle>Kea Messages
+ Manual</citetitle></link>
+ (<uri xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="http://kea.isc.org/docs/kea-messages.html">http://kea.isc.org/docs/kea-messages.html</uri>)
from which more information can be obtained.
</para>
</listitem>
</para>
</section>
- <section id="logging-during-startup">
- <title>Logging During Kea Startup</title>
+ <section xml:id="logging-during-startup"><info><title>Logging During Kea Startup</title></info>
+
<para>
The logging configuration is specified in the configuration file.
However, when Kea starts, the file is not read until some way into the
</variablelist>
</section>
</section>
-</chapter>
+</chapter>
\ No newline at end of file
-<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE book PUBLIC "-//OASIS//DTD DocBook XML V4.2//EN"
-"http://www.oasis-open.org/docbook/xml/4.2/docbookx.dtd" [
-<!ENTITY mdash "—" >
-<!ENTITY % version SYSTEM "version.ent">
-%version;
-]>
-
- <chapter id="quickstart">
- <title>Quick Start</title>
+<!-- Converted by db4-upgrade version 1.0 -->
+<chapter xmlns="http://docbook.org/ns/docbook" version="5.0" xml:id="quickstart"><info><title>Quick Start</title></info>
+
<para>
This section describes the basic steps needed to get Kea up and running.
respective chapters in the Kea guide.
</para>
- <section id="quick-start">
- <title>Quick Start Guide for DHCPv4 and DHCPv6 Services</title>
+ <section xml:id="quick-start"><info><title>Quick Start Guide for DHCPv4 and DHCPv6 Services</title></info>
+
- <orderedlist>
+ <orderedlist inheritnum="ignore" continuation="restarts">
<listitem>
<simpara>
- Install required run-time and build dependencies. See <xref
- linkend="build-requirements"/> for details.
+ Install required run-time and build dependencies. See <xref linkend="build-requirements"/> for details.
</simpara>
</listitem>
<listitem>
<para>
- Download Kea source tarball from <ulink url="https://www.isc.org/downloads/">ISC.org downloads page</ulink> or <ulink url="http://ftp.isc.org/isc/kea/">ISC ftp server</ulink>.
+ Download Kea source tarball from <link xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="https://www.isc.org/downloads/">ISC.org downloads page</link> or <link xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="http://ftp.isc.org/isc/kea/">ISC ftp server</link>.
</para>
</listitem>
<listitem>
<para>
Extract the tarball. For example:
- <screen>$ <userinput>tar xvzf kea-&__VERSION__;.tar.gz</userinput></screen>
+ <screen>$ <userinput>tar xvzf kea-.tar.gz</userinput></screen>
</para>
</listitem>
<listitem>
<para>Go into the source directory and run the configure script:
- <screen>$ <userinput>cd kea-&__VERSION__;</userinput>
+ <screen>$ <userinput>cd kea-</userinput>
$ <userinput>./configure [your extra parameters]</userinput></screen>
</para>
</listitem>
If the server has been started successfully, test that it is
responding to DHCP queries and that the client
receives a configuration from the server; for example, use
- the <ulink url="http://www.isc.org/downloads/DHCP/">ISC DHCP client</ulink>.
+ the <link xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="http://www.isc.org/downloads/DHCP/">ISC DHCP client</link>.
</para>
</listitem>
</orderedlist>
<para>
For instructions specific to your system, please read the
- <ulink url="http://kea.isc.org/wiki/SystemSpecificNotes">system specific notes</ulink>,
- available on the <ulink url="http://kea.isc.org/">Kea web site</ulink>.
+ <link xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="http://kea.isc.org/wiki/SystemSpecificNotes">system specific notes</link>,
+ available on the <link xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="http://kea.isc.org/">Kea web site</link>.
</para>
<para>The details of <command>keactrl</command> script usage can be found
in <xref linkend="keactrl"/>.</para>
</section>
- <section id="quick-start-direct-run">
- <title>Running the Kea Servers Directly</title>
+ <section xml:id="quick-start-direct-run"><info><title>Running the Kea Servers Directly</title></info>
+
<para>The Kea servers can be started directly, without the need to use the
<command>keactrl</command>. To start the DHCPv4 server run the following
command:
</para>
</section>
- </chapter>
+ </chapter>
\ No newline at end of file
-<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE book PUBLIC "-//OASIS//DTD DocBook XML V4.2//EN"
-"http://www.oasis-open.org/docbook/xml/4.2/docbookx.dtd" [
-<!ENTITY mdash "—" >
-]>
+<!-- Converted by db4-upgrade version 1.0 -->
+<chapter xmlns="http://docbook.org/ns/docbook" version="5.0" xml:id="stats"><info><title>Statistics</title></info>
+
-<chapter id="stats">
- <title>Statistics</title>
-
- <section>
- <title>Statistics Overview</title>
+ <section><info><title>Statistics Overview</title></info>
+
<para>Both Kea DHCP servers support statistics gathering.
A working DHCP server encounters various events
<para>
During normal operation, DHCPv4 and DHCPv6 servers gather statistics.
- For a list of DHCPv4 and DHCPv6 statistics, see <xref
- linkend="dhcp4-stats"/> and <xref linkend="dhcp6-stats"/>, respectively.
+ For a list of DHCPv4 and DHCPv6 statistics, see <xref linkend="dhcp4-stats"/> and <xref linkend="dhcp6-stats"/>, respectively.
</para>
<para>
To extract data from the statistics module, the control channel can be
- used. See <xref linkend="ctrl-channel" /> for details. It is possible to
+ used. See <xref linkend="ctrl-channel"/> for details. It is possible to
retrieve a single or all statistics, reset statistics (i.e. set to neutral
value, typically zero) or even remove completely a single or all
statistics. See section <xref linkend="command-stats"/> for a list of
</para>
</section>
- <section id="stats-lifecycle">
- <title>Statistics Lifecycle</title>
+ <section xml:id="stats-lifecycle"><info><title>Statistics Lifecycle</title></info>
+
<para>
It is useful to understand how the Statistics Manager module works. When
the server starts operation, the manager is empty and does not have any
</para>
</section>
- <section id="command-stats">
- <title>Commands for Manipulating Statistics</title>
+ <section xml:id="command-stats"><info><title>Commands for Manipulating Statistics</title></info>
+
<para>
There are several commands defined that can be used for accessing (-get),
resetting to zero or neutral value (-reset) or even removing a statistic
sending commands to Kea, see <xref linkend="ctrl-channel"/>.
</para></note>
- <section id="command-statistic-get">
- <title>statistic-get command</title>
+ <section xml:id="command-statistic-get"><info><title>statistic-get command</title></info>
+
<para>
<emphasis>statistic-get</emphasis> command retrieves a single
</para>
</section> <!-- end of command-statistic-get -->
- <section id="command-statistic-reset">
- <title>statistic-reset command</title>
+ <section xml:id="command-statistic-reset"><info><title>statistic-reset command</title></info>
+
<para>
<emphasis>statistic-reset</emphasis> command sets the specified statistic
</para>
</section> <!-- end of command-statistic-reset -->
- <section id="command-statistic-remove">
- <title>statistic-remove command</title>
+ <section xml:id="command-statistic-remove"><info><title>statistic-remove command</title></info>
+
<para>
<emphasis>statistic-remove</emphasis> command attempts to delete a single
</para>
</section> <!-- end of command-statistic-reset -->
- <section id="command-statistic-get-all">
- <title>statistic-get-all command</title>
+ <section xml:id="command-statistic-get-all"><info><title>statistic-get-all command</title></info>
+
<para>
<emphasis>statistic-get-all</emphasis> command retrieves all statistics
</para>
</section> <!-- end of command-statistic-get-all -->
- <section id="command-statistic-reset-all">
- <title>statistic-reset-all command</title>
+ <section xml:id="command-statistic-reset-all"><info><title>statistic-reset-all command</title></info>
+
<para>
<emphasis>statistic-reset</emphasis> command sets all statistics to
</para>
</section> <!-- end of command-statistic-reset-all -->
- <section id="command-statistic-remove-all">
- <title>statistic-remove-all command</title>
+ <section xml:id="command-statistic-remove-all"><info><title>statistic-remove-all command</title></info>
+
<para>
<emphasis>statistic-remove-all</emphasis> command attempts to delete all
</section>
-</chapter>
+</chapter>
\ No newline at end of file
-<!DOCTYPE book PUBLIC "-//OASIS//DTD DocBook XML V4.2//EN"
- "http://www.oasis-open.org/docbook/xml/4.2/docbookx.dtd"
- [<!ENTITY mdash "—">]>
-<!--
- - Copyright (C) 2014-2016 Internet Systems Consortium, Inc. ("ISC")
- -
- - This Source Code Form is subject to the terms of the Mozilla Public
- - License, v. 2.0. If a copy of the MPL was not distributed with this
- - file, You can obtain one at http://mozilla.org/MPL/2.0/.
--->
-
-<refentry>
- <refentryinfo>
+<!-- Converted by db4-upgrade version 1.0 -->
+<refentry xmlns="http://docbook.org/ns/docbook" version="5.0">
+ <info>
<productname>ISC Kea</productname>
<date>Sep. 28, 2016</date>
<edition>1.1.0</edition>
- <author>
- <contrib>The Kea software has been written by a number of
+ <author><personname/><contrib>The Kea software has been written by a number of
engineers working for ISC: Tomek Mrugalski, Stephen Morris, Marcin
Siodelski, Thomas Markwalder, Francis Dupont, Jeremy C. Reed,
Wlodek Wencel and Shawn Routhier. That list is roughly in the
chronological order in which the authors made their first
contribution. For a complete list of authors and
- contributors, see AUTHORS file.</contrib>
- <orgname>Internet Systems Consortium, Inc.</orgname>
- </author>
- </refentryinfo>
+ contributors, see AUTHORS file.</contrib><orgname>Internet Systems Consortium, Inc.</orgname></author>
+ </info>
<refmeta>
<refentrytitle>kea-admin</refentrytitle>
</docinfo>
<refsynopsisdiv>
- <cmdsynopsis>
+ <cmdsynopsis sepchar=" ">
<command>kea-admin</command>
- <arg>command</arg>
- <arg>backend</arg>
- <arg><option>-u <replaceable class="parameter">database username</replaceable></option></arg>
- <arg><option>-p <replaceable class="parameter">database password</replaceable></option></arg>
- <arg><option>-n <replaceable class="parameter">database name</replaceable></option></arg>
- <arg><option>-d <replaceable class="parameter">scripts directory</replaceable></option></arg>
- <arg><option>-4 | -6</option></arg>
- <arg><option>-o <replaceable class="parameter">output file</replaceable></option></arg>
+ <arg choice="opt" rep="norepeat">command</arg>
+ <arg choice="opt" rep="norepeat">backend</arg>
+ <arg choice="opt" rep="norepeat"><option>-u <replaceable class="parameter">database username</replaceable></option></arg>
+ <arg choice="opt" rep="norepeat"><option>-p <replaceable class="parameter">database password</replaceable></option></arg>
+ <arg choice="opt" rep="norepeat"><option>-n <replaceable class="parameter">database name</replaceable></option></arg>
+ <arg choice="opt" rep="norepeat"><option>-d <replaceable class="parameter">scripts directory</replaceable></option></arg>
+ <arg choice="opt" rep="norepeat"><option>-4 | -6</option></arg>
+ <arg choice="opt" rep="norepeat"><option>-o <replaceable class="parameter">output file</replaceable></option></arg>
</cmdsynopsis>
</refsynopsisdiv>
- <refsect1>
- <title>DESCRIPTION</title>
+ <refsection><info><title>DESCRIPTION</title></info>
+
<para>
kea-admin is a shell script which offers database maintenance. In particular,
it features database initialization, database version checking and
database schema upgrade.
</para>
- </refsect1>
+ </refsection>
- <refsect1>
- <title>OPTIONS</title>
+ <refsection><info><title>OPTIONS</title></info>
+
<variablelist>
<varlistentry>
<term><option><replaceable class="parameter">command</replaceable></option></term>
</variablelist>
- </refsect1>
+ </refsection>
- <refsect1>
- <title>SEE ALSO</title>
+ <refsection><info><title>SEE ALSO</title></info>
+
<para>
<citerefentry>
<refentrytitle>keactrl</refentrytitle>
<citetitle>Kea Administrator Guide</citetitle>.
</para>
- </refsect1>
+ </refsection>
-</refentry>
+</refentry>
\ No newline at end of file
-<!DOCTYPE book PUBLIC "-//OASIS//DTD DocBook XML V4.2//EN"
- "http://www.oasis-open.org/docbook/xml/4.2/docbookx.dtd"
- [<!ENTITY mdash "—">]>
-<!--
- - Copyright (C) 2013-2015 Internet Systems Consortium, Inc. ("ISC")
- -
- - This Source Code Form is subject to the terms of the Mozilla Public
- - License, v. 2.0. If a copy of the MPL was not distributed with this
- - file, You can obtain one at http://mozilla.org/MPL/2.0/.
--->
-
-<refentry>
-
- <refentryinfo>
+<!-- Converted by db4-upgrade version 1.0 -->
+<refentry xmlns="http://docbook.org/ns/docbook" version="5.0">
+
+ <info>
<productname>ISC Kea</productname>
<date>Sep. 28, 2016</date>
<edition>1.1.0</edition>
- <author>
- <contrib>The Kea software has been written by a number of
+ <author><personname/><contrib>The Kea software has been written by a number of
engineers working for ISC: Tomek Mrugalski, Stephen Morris, Marcin
Siodelski, Thomas Markwalder, Francis Dupont, Jeremy C. Reed,
Wlodek Wencel and Shawn Routhier. That list is roughly in the
chronological order in which the authors made their first
contribution. For a complete list of authors and
- contributors, see AUTHORS file.</contrib>
- <orgname>Internet Systems Consortium, Inc.</orgname>
- </author>
- </refentryinfo>
+ contributors, see AUTHORS file.</contrib><orgname>Internet Systems Consortium, Inc.</orgname></author>
+ </info>
<refmeta>
<refentrytitle>kea-dhcp-ddns</refentrytitle>
</docinfo>
<refsynopsisdiv>
- <cmdsynopsis>
+ <cmdsynopsis sepchar=" ">
<command>kea-dhcp-ddns</command>
- <arg><option>-v</option></arg>
- <arg><option>-V</option></arg>
- <arg><option>-W</option></arg>
- <arg><option>-d</option></arg>
- <arg><option>-s</option></arg>
+ <arg choice="opt" rep="norepeat"><option>-v</option></arg>
+ <arg choice="opt" rep="norepeat"><option>-V</option></arg>
+ <arg choice="opt" rep="norepeat"><option>-W</option></arg>
+ <arg choice="opt" rep="norepeat"><option>-d</option></arg>
+ <arg choice="opt" rep="norepeat"><option>-s</option></arg>
</cmdsynopsis>
</refsynopsisdiv>
- <refsect1>
- <title>DESCRIPTION</title>
+ <refsection><info><title>DESCRIPTION</title></info>
+
<para>
The <command>kea-dhcp-ddns</command> service process requests to
update DNS mapping based on DHCP lease change events. It runs as
from Kea DHCP servers.
</para>
- </refsect1>
+ </refsection>
- <refsect1>
- <title>ARGUMENTS</title>
+ <refsection><info><title>ARGUMENTS</title></info>
+
<para>The arguments are as follows:</para>
</varlistentry>
</variablelist>
- </refsect1>
+ </refsection>
- <refsect1>
- <title>DOCUMENTATION</title>
+ <refsection><info><title>DOCUMENTATION</title></info>
+
<para>Kea comes with an extensive Kea User's Guide documentation
that covers all aspects of running the Kea software -
compilation, installation, configuration, configuration examples
<para>
Kea project website is available at: http://kea.isc.org.
</para>
- </refsect1>
+ </refsection>
- <refsect1>
- <title>MAILING LISTS AND SUPPORT</title>
+ <refsection><info><title>MAILING LISTS AND SUPPORT</title></info>
+
<para>
There are two mailing lists available for Kea project. kea-users
(kea-users at lists.isc.org) is intended for Kea users, while kea-dev
ISC provides professional support for Kea services. See
https://www.isc.org/kea/ for details.
</para>
- </refsect1>
+ </refsection>
- <refsect1>
- <title>HISTORY</title>
+ <refsection><info><title>HISTORY</title></info>
+
<para>
The <command>b10-dhcp-ddns</command> process was first coded in
May 2013 by Thomas Markwalder.
removed. The DHCP-DDNS server binary was renamed to kea-dhcp-ddns
in July 2014. Kea 1.0.0 was released in December 2015.
</para>
- </refsect1>
+ </refsection>
- <refsect1>
- <title>SEE ALSO</title>
+ <refsection><info><title>SEE ALSO</title></info>
+
<para>
<citerefentry>
<refentrytitle>kea-dhcp4</refentrytitle>
<citetitle>Kea Administrator's Guide</citetitle>.
</para>
- </refsect1>
+ </refsection>
-</refentry><!--
- - Local variables:
- - mode: sgml
- - End:
--->
+</refentry>
\ No newline at end of file
-<!DOCTYPE book PUBLIC "-//OASIS//DTD DocBook XML V4.2//EN"
- "http://www.oasis-open.org/docbook/xml/4.2/docbookx.dtd"
- [<!ENTITY mdash "—">]>
-<!--
- - Copyright (C) 2011-2015 Internet Systems Consortium, Inc. ("ISC")
- -
- - This Source Code Form is subject to the terms of the Mozilla Public
- - License, v. 2.0. If a copy of the MPL was not distributed with this
- - file, You can obtain one at http://mozilla.org/MPL/2.0/.
--->
-
-<refentry>
-
- <refentryinfo>
+<!-- Converted by db4-upgrade version 1.0 -->
+<refentry xmlns="http://docbook.org/ns/docbook" version="5.0">
+
+ <info>
<productname>ISC Kea</productname>
<date>Sep. 28, 2016</date>
<edition>1.1.0</edition>
- <author>
- <contrib>The Kea software has been written by a number of
+ <author><personname/><contrib>The Kea software has been written by a number of
engineers working for ISC: Tomek Mrugalski, Stephen Morris, Marcin
Siodelski, Thomas Markwalder, Francis Dupont, Jeremy C. Reed,
Wlodek Wencel and Shawn Routhier. That list is roughly in the
chronological order in which the authors made their first
contribution. For a complete list of authors and
- contributors, see AUTHORS file.</contrib>
- <orgname>Internet Systems Consortium, Inc.</orgname>
- </author>
- </refentryinfo>
+ contributors, see AUTHORS file.</contrib><orgname>Internet Systems Consortium, Inc.</orgname></author>
+ </info>
<refmeta>
<refentrytitle>kea-dhcp4</refentrytitle>
</docinfo>
<refsynopsisdiv>
- <cmdsynopsis>
+ <cmdsynopsis sepchar=" ">
<command>kea-dhcp4</command>
- <arg><option>-v</option></arg>
- <arg><option>-V</option></arg>
- <arg><option>-W</option></arg>
- <arg><option>-d</option></arg>
- <arg><option>-c<replaceable class="parameter">config-file</replaceable></option></arg>
- <arg><option>-p<replaceable class="parameter">port-number</replaceable></option></arg>
+ <arg choice="opt" rep="norepeat"><option>-v</option></arg>
+ <arg choice="opt" rep="norepeat"><option>-V</option></arg>
+ <arg choice="opt" rep="norepeat"><option>-W</option></arg>
+ <arg choice="opt" rep="norepeat"><option>-d</option></arg>
+ <arg choice="opt" rep="norepeat"><option>-c<replaceable class="parameter">config-file</replaceable></option></arg>
+ <arg choice="opt" rep="norepeat"><option>-p<replaceable class="parameter">port-number</replaceable></option></arg>
</cmdsynopsis>
</refsynopsisdiv>
- <refsect1>
- <title>DESCRIPTION</title>
+ <refsection><info><title>DESCRIPTION</title></info>
+
<para>
The <command>kea-dhcp4</command> daemon provides the
DHCPv4 server implementation.
</para>
- </refsect1>
+ </refsection>
- <refsect1>
- <title>ARGUMENTS</title>
+ <refsection><info><title>ARGUMENTS</title></info>
+
<para>The arguments are as follows:</para>
</varlistentry>
</variablelist>
- </refsect1>
+ </refsection>
- <refsect1>
- <title>DOCUMENTATION</title>
+ <refsection><info><title>DOCUMENTATION</title></info>
+
<para>Kea comes with an extensive Kea User's Guide documentation
that covers all aspects of running the Kea software -
compilation, installation, configuration, configuration examples
<para>
Kea project website is available at: http://kea.isc.org.
</para>
- </refsect1>
+ </refsection>
- <refsect1>
- <title>MAILING LISTS AND SUPPORT</title>
+ <refsection><info><title>MAILING LISTS AND SUPPORT</title></info>
+
<para>
There are two mailing lists available for Kea project. kea-users
(kea-users at lists.isc.org) is intended for Kea users, while kea-dev
ISC provides professional support for Kea services. See
https://www.isc.org/kea/ for details.
</para>
- </refsect1>
+ </refsection>
- <refsect1>
- <title>HISTORY</title>
+ <refsection><info><title>HISTORY</title></info>
+
<para>
The <command>b10-dhcp4</command> daemon was first coded in
November 2011 by Tomek Mrugalski.
standalone DHCP server. The DHCPv4 server binary was renamed to
kea-dhcp4. Kea 1.0.0 was released in December 2015.
</para>
- </refsect1>
+ </refsection>
- <refsect1>
- <title>SEE ALSO</title>
+ <refsection><info><title>SEE ALSO</title></info>
+
<para>
<citerefentry>
<refentrytitle>kea-dhcp6</refentrytitle>
<citetitle>Kea Administrator's Guide</citetitle>.
</para>
- </refsect1>
+ </refsection>
-</refentry><!--
- - Local variables:
- - mode: sgml
- - End:
--->
+</refentry>
\ No newline at end of file
-<!DOCTYPE book PUBLIC "-//OASIS//DTD DocBook XML V4.2//EN"
- "http://www.oasis-open.org/docbook/xml/4.2/docbookx.dtd"
- [<!ENTITY mdash "—">]>
-<!--
- - Copyright (C) 2011-2015 Internet Systems Consortium, Inc. ("ISC")
- -
- - This Source Code Form is subject to the terms of the Mozilla Public
- - License, v. 2.0. If a copy of the MPL was not distributed with this
- - file, You can obtain one at http://mozilla.org/MPL/2.0/.
--->
-
-<refentry>
-
- <refentryinfo>
+<!-- Converted by db4-upgrade version 1.0 -->
+<refentry xmlns="http://docbook.org/ns/docbook" version="5.0">
+
+ <info>
<productname>ISC Kea</productname>
<date>Sep. 28, 2016</date>
<edition>1.1.0</edition>
- <author>
- <contrib>The Kea software has been written by a number of
+ <author><personname/><contrib>The Kea software has been written by a number of
engineers working for ISC: Tomek Mrugalski, Stephen Morris, Marcin
Siodelski, Thomas Markwalder, Francis Dupont, Jeremy C. Reed,
Wlodek Wencel and Shawn Routhier. That list is roughly in the
chronological order in which the authors made their first
contribution. For a complete list of authors and
- contributors, see AUTHORS file.</contrib>
- <orgname>Internet Systems Consortium, Inc.</orgname>
- </author>
- </refentryinfo>
+ contributors, see AUTHORS file.</contrib><orgname>Internet Systems Consortium, Inc.</orgname></author>
+ </info>
<refmeta>
<refentrytitle>kea-dhcp6</refentrytitle>
</docinfo>
<refsynopsisdiv>
- <cmdsynopsis>
+ <cmdsynopsis sepchar=" ">
<command>kea-dhcp6</command>
- <arg><option>-v</option></arg>
- <arg><option>-V</option></arg>
- <arg><option>-W</option></arg>
- <arg><option>-d</option></arg>
- <arg><option>-c<replaceable class="parameter">config-file</replaceable></option></arg>
- <arg><option>-p<replaceable class="parameter">port-number</replaceable></option></arg>
+ <arg choice="opt" rep="norepeat"><option>-v</option></arg>
+ <arg choice="opt" rep="norepeat"><option>-V</option></arg>
+ <arg choice="opt" rep="norepeat"><option>-W</option></arg>
+ <arg choice="opt" rep="norepeat"><option>-d</option></arg>
+ <arg choice="opt" rep="norepeat"><option>-c<replaceable class="parameter">config-file</replaceable></option></arg>
+ <arg choice="opt" rep="norepeat"><option>-p<replaceable class="parameter">port-number</replaceable></option></arg>
</cmdsynopsis>
</refsynopsisdiv>
- <refsect1>
- <title>DESCRIPTION</title>
+ <refsection><info><title>DESCRIPTION</title></info>
+
<para>
The <command>kea-dhcp6</command> daemon provides the
DHCPv6 server implementation.
</para>
- </refsect1>
+ </refsection>
- <refsect1>
- <title>ARGUMENTS</title>
+ <refsection><info><title>ARGUMENTS</title></info>
+
<para>The arguments are as follows:</para>
</varlistentry>
</variablelist>
- </refsect1>
+ </refsection>
- <refsect1>
- <title>DOCUMENTATION</title>
+ <refsection><info><title>DOCUMENTATION</title></info>
+
<para>Kea comes with an extensive Kea User's Guide documentation
that covers all aspects of running the Kea software -
compilation, installation, configuration, configuration examples
<para>
Kea project website is available at: http://kea.isc.org.
</para>
- </refsect1>
+ </refsection>
- <refsect1>
- <title>MAILING LISTS AND SUPPORT</title>
+ <refsection><info><title>MAILING LISTS AND SUPPORT</title></info>
+
<para>
There are two mailing lists available for Kea project. kea-users
(kea-users at lists.isc.org) is intended for Kea users, while kea-dev
ISC provides professional support for Kea services. See
https://www.isc.org/kea/ for details.
</para>
- </refsect1>
+ </refsection>
- <refsect1>
- <title>HISTORY</title>
+ <refsection><info><title>HISTORY</title></info>
+
<para>
The <command>b10-dhcp6</command> daemon was first coded in
June 2011 by Tomek Mrugalski.
removed. The DHCPv6 server binary was renamed to kea-dhcp6 in
July 2014.
</para>
- </refsect1>
+ </refsection>
- <refsect1>
- <title>SEE ALSO</title>
+ <refsection><info><title>SEE ALSO</title></info>
+
<para>
<citerefentry>
<refentrytitle>kea-dhcp4</refentrytitle>
<citetitle>Kea Administrator's Guide</citetitle>.
</para>
- </refsect1>
+ </refsection>
-</refentry><!--
- - Local variables:
- - mode: sgml
- - End:
--->
+</refentry>
\ No newline at end of file
-<!DOCTYPE book PUBLIC "-//OASIS//DTD DocBook XML V4.2//EN"
- "http://www.oasis-open.org/docbook/xml/4.2/docbookx.dtd"
- [<!ENTITY mdash "—">]>
-<!--
- - Copyright (C) 2014-2016 Internet Systems Consortium, Inc. ("ISC")
- -
- - This Source Code Form is subject to the terms of the Mozilla Public
- - License, v. 2.0. If a copy of the MPL was not distributed with this
- - file, You can obtain one at http://mozilla.org/MPL/2.0/.
--->
-
-<refentry>
- <refentryinfo>
+<!-- Converted by db4-upgrade version 1.0 -->
+<refentry xmlns="http://docbook.org/ns/docbook" version="5.0">
+ <info>
<productname>ISC Kea</productname>
<date>Sep. 28, 2016</date>
<edition>1.1.0</edition>
- <author>
- <contrib>The Kea software has been written by a number of
+ <author><personname/><contrib>The Kea software has been written by a number of
engineers working for ISC: Tomek Mrugalski, Stephen Morris, Marcin
Siodelski, Thomas Markwalder, Francis Dupont, Jeremy C. Reed,
Wlodek Wencel and Shawn Routhier. That list is roughly in the
chronological order in which the authors made their first
contribution. For a complete list of authors and
- contributors, see AUTHORS file.</contrib>
- <orgname>Internet Systems Consortium, Inc.</orgname>
- </author>
- </refentryinfo>
+ contributors, see AUTHORS file.</contrib><orgname>Internet Systems Consortium, Inc.</orgname></author>
+ </info>
<refmeta>
<refentrytitle>keactrl</refentrytitle>
</docinfo>
<refsynopsisdiv>
- <cmdsynopsis>
+ <cmdsynopsis sepchar=" ">
<command>keactrl</command>
- <arg>command</arg>
- <arg><option>-c <replaceable class="parameter">keactrl-config-file</replaceable></option></arg>
- <arg><option>-s <replaceable class="parameter">server[,server,...]</replaceable></option></arg>
+ <arg choice="opt" rep="norepeat">command</arg>
+ <arg choice="opt" rep="norepeat"><option>-c <replaceable class="parameter">keactrl-config-file</replaceable></option></arg>
+ <arg choice="opt" rep="norepeat"><option>-s <replaceable class="parameter">server[,server,...]</replaceable></option></arg>
</cmdsynopsis>
</refsynopsisdiv>
- <refsect1>
- <title>DESCRIPTION</title>
+ <refsection><info><title>DESCRIPTION</title></info>
+
<para>
keactrl is a shell script which controls the startup, shutdown
and reconfiguration of the Kea servers (<command>kea-dhcp4</command>,
also provides the means for checking the current status of the servers
and determining the configuration files in use.
</para>
- </refsect1>
+ </refsection>
- <refsect1>
- <title>CONFIGURATION FILE</title>
+ <refsection><info><title>CONFIGURATION FILE</title></info>
+
<para>
Depending on requirements, not all of the available servers need
be run. The keactrl configuration file sets which servers are
See the Kea Administrator's Guide for the documentation of the parameters
in the <command>keactrl</command> configuration file.
</para>
- </refsect1>
+ </refsection>
- <refsect1>
- <title>OPTIONS</title>
+ <refsection><info><title>OPTIONS</title></info>
+
<variablelist>
<varlistentry>
<term><option><replaceable class="parameter">command</replaceable></option></term>
</varlistentry>
</variablelist>
- </refsect1>
+ </refsection>
- <refsect1>
- <title>DOCUMENTATION</title>
+ <refsection><info><title>DOCUMENTATION</title></info>
+
<para>Kea comes with an extensive Kea User's Guide documentation
that covers all aspects of running the Kea software -
compilation, installation, configuration, configuration examples
<para>
Kea project website is available at: http://kea.isc.org.
</para>
- </refsect1>
+ </refsection>
- <refsect1>
- <title>MAILING LISTS AND SUPPORT</title>
+ <refsection><info><title>MAILING LISTS AND SUPPORT</title></info>
+
<para>
There are two mailing lists available for Kea project. kea-users
(kea-users at lists.isc.org) is intended for Kea users, while kea-dev
ISC provides professional support for Kea services. See
https://www.isc.org/kea/ for details.
</para>
- </refsect1>
+ </refsection>
- <refsect1>
- <title>SEE ALSO</title>
+ <refsection><info><title>SEE ALSO</title></info>
+
<para>
<citerefentry>
<refentrytitle>kea-dhcp4</refentrytitle>
<citetitle>Kea Administrator's Guide</citetitle>.
</para>
- </refsect1>
+ </refsection>
-</refentry>
+</refentry>
\ No newline at end of file
-<!DOCTYPE book PUBLIC "-//OASIS//DTD DocBook XML V4.2//EN"
- "http://www.oasis-open.org/docbook/xml/4.2/docbookx.dtd"
- [<!ENTITY mdash "—">]>
-<!--
- - Copyright (C) 2015 Internet Systems Consortium, Inc. ("ISC")
- -
- - This Source Code Form is subject to the terms of the Mozilla Public
- - License, v. 2.0. If a copy of the MPL was not distributed with this
- - file, You can obtain one at http://mozilla.org/MPL/2.0/.
--->
-
-<refentry>
-
- <refentryinfo>
+<!-- Converted by db4-upgrade version 1.0 -->
+<refentry xmlns="http://docbook.org/ns/docbook" version="5.0">
+
+ <info>
<productname>ISC Kea</productname>
<date>Sep. 28, 2016</date>
<edition>1.1.0</edition>
- <author>
- <contrib>The Kea software has been written by a number of
+ <author><personname/><contrib>The Kea software has been written by a number of
engineers working for ISC: Tomek Mrugalski, Stephen Morris, Marcin
Siodelski, Thomas Markwalder, Francis Dupont, Jeremy C. Reed,
Wlodek Wencel and Shawn Routhier. That list is roughly in the
chronological order in which the authors made their first
contribution. For a complete list of authors and
- contributors, see AUTHORS file.</contrib>
- <orgname>Internet Systems Consortium, Inc.</orgname>
- </author>
- </refentryinfo>
+ contributors, see AUTHORS file.</contrib><orgname>Internet Systems Consortium, Inc.</orgname></author>
+ </info>
<refmeta>
<refentrytitle>kea-lfc</refentrytitle>
</docinfo>
<refsynopsisdiv>
- <cmdsynopsis>
+ <cmdsynopsis sepchar=" ">
<command>kea-lfc</command>
- <arg><option>-4|-6</option></arg>
- <arg><option>-c <replaceable class="parameter">config-file</replaceable></option></arg>
- <arg><option>-p <replaceable class="parameter">pid-file</replaceable></option></arg>
- <arg><option>-x <replaceable class="parameter">previous-file</replaceable></option></arg>
- <arg><option>-i <replaceable class="parameter">copy-file</replaceable></option></arg>
- <arg><option>-o <replaceable class="parameter">output-file</replaceable></option></arg>
- <arg><option>-f <replaceable class="parameter">finish-file</replaceable></option></arg>
- <arg><option>-v</option></arg>
- <arg><option>-V</option></arg>
- <arg><option>-W</option></arg>
- <arg><option>-d</option></arg>
- <arg><option>-h</option></arg>
+ <arg choice="opt" rep="norepeat"><option>-4|-6</option></arg>
+ <arg choice="opt" rep="norepeat"><option>-c <replaceable class="parameter">config-file</replaceable></option></arg>
+ <arg choice="opt" rep="norepeat"><option>-p <replaceable class="parameter">pid-file</replaceable></option></arg>
+ <arg choice="opt" rep="norepeat"><option>-x <replaceable class="parameter">previous-file</replaceable></option></arg>
+ <arg choice="opt" rep="norepeat"><option>-i <replaceable class="parameter">copy-file</replaceable></option></arg>
+ <arg choice="opt" rep="norepeat"><option>-o <replaceable class="parameter">output-file</replaceable></option></arg>
+ <arg choice="opt" rep="norepeat"><option>-f <replaceable class="parameter">finish-file</replaceable></option></arg>
+ <arg choice="opt" rep="norepeat"><option>-v</option></arg>
+ <arg choice="opt" rep="norepeat"><option>-V</option></arg>
+ <arg choice="opt" rep="norepeat"><option>-W</option></arg>
+ <arg choice="opt" rep="norepeat"><option>-d</option></arg>
+ <arg choice="opt" rep="norepeat"><option>-h</option></arg>
</cmdsynopsis>
</refsynopsisdiv>
- <refsect1>
- <title>DESCRIPTION</title>
+ <refsection><info><title>DESCRIPTION</title></info>
+
<para>
The <command>kea-lfc</command> service process removes redundant
information from the files used to provide persistent storage for
is usually no need to do this. It will be run on a periodic basis
by the Kea DHCP servers.
</para>
- </refsect1>
+ </refsection>
- <refsect1>
- <title>ARGUMENTS</title>
+ <refsection><info><title>ARGUMENTS</title></info>
+
<para>The arguments are as follows:</para>
</para></listitem>
</varlistentry>
</variablelist>
- </refsect1>
+ </refsection>
- <refsect1>
- <title>DOCUMENTATION</title>
+ <refsection><info><title>DOCUMENTATION</title></info>
+
<para>Kea comes with an extensive Kea User's Guide documentation
that covers all aspects of running the Kea software -
compilation, installation, configuration, configuration examples
<para>
Kea project website is available at: http://kea.isc.org.
</para>
- </refsect1>
+ </refsection>
- <refsect1>
- <title>MAILING LISTS AND SUPPORT</title>
+ <refsection><info><title>MAILING LISTS AND SUPPORT</title></info>
+
<para>
There are two mailing lists available for Kea project. kea-users
(kea-users at lists.isc.org) is intended for Kea users, while kea-dev
ISC provides professional support for Kea services. See
https://www.isc.org/kea/ for details.
</para>
- </refsect1>
+ </refsection>
- <refsect1>
- <title>HISTORY</title>
+ <refsection><info><title>HISTORY</title></info>
+
<para>
The <command>kea-lfc</command> process was first coded in January
2015 by the ISC Kea/DHCP team.
</para>
- </refsect1>
+ </refsection>
- <refsect1>
- <title>SEE ALSO</title>
+ <refsection><info><title>SEE ALSO</title></info>
+
<para>
<citerefentry>
<refentrytitle>kea-dhcp4</refentrytitle>
<citetitle>Kea Administrator's Guide</citetitle>.
</para>
- </refsect1>
+ </refsection>
-</refentry><!--
- - Local variables:
- - mode: sgml
- - End:
--->
+</refentry>
\ No newline at end of file
-<!DOCTYPE book PUBLIC "-//OASIS//DTD DocBook XML V4.2//EN"
- "http://www.oasis-open.org/docbook/xml/4.2/docbookx.dtd"
- [<!ENTITY mdash "—">]>
-<!--
- - Copyright (C) 2014-2016 Internet Systems Consortium, Inc. ("ISC")
- -
- - This Source Code Form is subject to the terms of the Mozilla Public
- - License, v. 2.0. If a copy of the MPL was not distributed with this
- - file, You can obtain one at http://mozilla.org/MPL/2.0/.
--->
-
-<refentry>
-
- <refentryinfo>
+<!-- Converted by db4-upgrade version 1.0 -->
+<refentry xmlns="http://docbook.org/ns/docbook" version="5.0">
+
+ <info>
<productname>ISC Kea</productname>
<date>Sep. 28, 2016</date>
<edition>1.1.0</edition>
- <author>
- <contrib>The Kea software has been written by a number of
+ <author><personname/><contrib>The Kea software has been written by a number of
engineers working for ISC: Tomek Mrugalski, Stephen Morris, Marcin
Siodelski, Thomas Markwalder, Francis Dupont, Jeremy C. Reed,
Wlodek Wencel and Shawn Routhier. That list is roughly in the
chronological order in which the authors made their first
contribution. For a complete list of authors and
- contributors, see AUTHORS file.</contrib>
- <orgname>Internet Systems Consortium, Inc.</orgname>
- </author>
- </refentryinfo>
+ contributors, see AUTHORS file.</contrib><orgname>Internet Systems Consortium, Inc.</orgname></author>
+ </info>
<refmeta>
<refentrytitle>perfdhcp</refentrytitle>
</docinfo>
<refsynopsisdiv>
- <cmdsynopsis>
+ <cmdsynopsis sepchar=" ">
<command>perfdhcp</command>
- <arg><option>-1</option></arg>
- <arg><option>-4|-6</option></arg>
- <arg><option>-A <replaceable class="parameter">encapsulation-level</replaceable></option></arg>
- <arg><option>-a <replaceable class="parameter">aggressivity</replaceable></option></arg>
- <arg><option>-b <replaceable class="parameter">base</replaceable></option></arg>
- <arg><option>-B</option></arg>
- <arg><option>-c</option></arg>
- <arg><option>-d <replaceable class="parameter">drop-time</replaceable></option></arg>
- <arg><option>-D <replaceable class="parameter">max-drop</replaceable></option></arg>
- <arg><option>-e <replaceable class="parameter">lease-type</replaceable></option></arg>
- <arg><option>-E <replaceable class="parameter">time-offset</replaceable></option></arg>
- <arg><option>-f <replaceable class="parameter">renew-rate</replaceable></option></arg>
- <arg><option>-F <replaceable class="parameter">release-rate</replaceable></option></arg>
- <arg><option>-h</option></arg>
- <arg><option>-i</option></arg>
- <arg><option>-I <replaceable class="parameter">ip-offset</replaceable></option></arg>
- <arg><option>-l <replaceable class="parameter">local-address|interface</replaceable></option></arg>
- <arg><option>-L <replaceable class="parameter">local-port</replaceable></option></arg>
- <arg><option>-M <replaceable class="parameter">mac-list-file</replaceable></option></arg>
- <arg><option>-n <replaceable class="parameter">num-request</replaceable></option></arg>
- <arg><option>-O <replaceable class="parameter">random-offset</replaceable></option></arg>
- <arg><option>-p <replaceable class="parameter">test-period</replaceable></option></arg>
- <arg><option>-P <replaceable class="parameter">preload</replaceable></option></arg>
- <arg><option>-r <replaceable class="parameter">rate</replaceable></option></arg>
- <arg><option>-R <replaceable class="parameter">num-clients</replaceable></option></arg>
- <arg><option>-s <replaceable class="parameter">seed</replaceable></option></arg>
- <arg><option>-S <replaceable class="parameter">srvid-offset</replaceable></option></arg>
- <arg><option>-t <replaceable class="parameter">report</replaceable></option></arg>
- <arg><option>-T <replaceable class="parameter">template-file</replaceable></option></arg>
- <arg><option>-v</option></arg>
- <arg><option>-W <replaceable class="parameter">wrapped</replaceable></option></arg>
- <arg><option>-x <replaceable class="parameter">diagnostic-selector</replaceable></option></arg>
- <arg><option>-X <replaceable class="parameter">xid-offset</replaceable></option></arg>
- <arg>server</arg>
+ <arg choice="opt" rep="norepeat"><option>-1</option></arg>
+ <arg choice="opt" rep="norepeat"><option>-4|-6</option></arg>
+ <arg choice="opt" rep="norepeat"><option>-A <replaceable class="parameter">encapsulation-level</replaceable></option></arg>
+ <arg choice="opt" rep="norepeat"><option>-a <replaceable class="parameter">aggressivity</replaceable></option></arg>
+ <arg choice="opt" rep="norepeat"><option>-b <replaceable class="parameter">base</replaceable></option></arg>
+ <arg choice="opt" rep="norepeat"><option>-B</option></arg>
+ <arg choice="opt" rep="norepeat"><option>-c</option></arg>
+ <arg choice="opt" rep="norepeat"><option>-d <replaceable class="parameter">drop-time</replaceable></option></arg>
+ <arg choice="opt" rep="norepeat"><option>-D <replaceable class="parameter">max-drop</replaceable></option></arg>
+ <arg choice="opt" rep="norepeat"><option>-e <replaceable class="parameter">lease-type</replaceable></option></arg>
+ <arg choice="opt" rep="norepeat"><option>-E <replaceable class="parameter">time-offset</replaceable></option></arg>
+ <arg choice="opt" rep="norepeat"><option>-f <replaceable class="parameter">renew-rate</replaceable></option></arg>
+ <arg choice="opt" rep="norepeat"><option>-F <replaceable class="parameter">release-rate</replaceable></option></arg>
+ <arg choice="opt" rep="norepeat"><option>-h</option></arg>
+ <arg choice="opt" rep="norepeat"><option>-i</option></arg>
+ <arg choice="opt" rep="norepeat"><option>-I <replaceable class="parameter">ip-offset</replaceable></option></arg>
+ <arg choice="opt" rep="norepeat"><option>-l <replaceable class="parameter">local-address|interface</replaceable></option></arg>
+ <arg choice="opt" rep="norepeat"><option>-L <replaceable class="parameter">local-port</replaceable></option></arg>
+ <arg choice="opt" rep="norepeat"><option>-M <replaceable class="parameter">mac-list-file</replaceable></option></arg>
+ <arg choice="opt" rep="norepeat"><option>-n <replaceable class="parameter">num-request</replaceable></option></arg>
+ <arg choice="opt" rep="norepeat"><option>-O <replaceable class="parameter">random-offset</replaceable></option></arg>
+ <arg choice="opt" rep="norepeat"><option>-p <replaceable class="parameter">test-period</replaceable></option></arg>
+ <arg choice="opt" rep="norepeat"><option>-P <replaceable class="parameter">preload</replaceable></option></arg>
+ <arg choice="opt" rep="norepeat"><option>-r <replaceable class="parameter">rate</replaceable></option></arg>
+ <arg choice="opt" rep="norepeat"><option>-R <replaceable class="parameter">num-clients</replaceable></option></arg>
+ <arg choice="opt" rep="norepeat"><option>-s <replaceable class="parameter">seed</replaceable></option></arg>
+ <arg choice="opt" rep="norepeat"><option>-S <replaceable class="parameter">srvid-offset</replaceable></option></arg>
+ <arg choice="opt" rep="norepeat"><option>-t <replaceable class="parameter">report</replaceable></option></arg>
+ <arg choice="opt" rep="norepeat"><option>-T <replaceable class="parameter">template-file</replaceable></option></arg>
+ <arg choice="opt" rep="norepeat"><option>-v</option></arg>
+ <arg choice="opt" rep="norepeat"><option>-W <replaceable class="parameter">wrapped</replaceable></option></arg>
+ <arg choice="opt" rep="norepeat"><option>-x <replaceable class="parameter">diagnostic-selector</replaceable></option></arg>
+ <arg choice="opt" rep="norepeat"><option>-X <replaceable class="parameter">xid-offset</replaceable></option></arg>
+ <arg choice="opt" rep="norepeat">server</arg>
</cmdsynopsis>
</refsynopsisdiv>
- <refsect1>
- <title>DESCRIPTION</title>
+ <refsection><info><title>DESCRIPTION</title></info>
+
<para>
<command>perfdhcp</command> is a DHCP benchmarking tool. It
provides a way of measuring the performance of DHCP servers by
<command>perfdhcp</command>, the elapsed time, or the number of
requests dropped by the server.
</para>
- </refsect1>
+ </refsection>
- <refsect1>
- <title>TEMPLATES</title>
+ <refsection><info><title>TEMPLATES</title></info>
+
<para>
To allow the contents of packets sent to the server to be
customized, <command>perfdhcp</command> allows the specification
or RELEASE packets are being sent.
</para>
- </refsect1>
+ </refsection>
- <refsect1>
- <title>OPTIONS</title>
+ <refsection><info><title>OPTIONS</title></info>
+
<variablelist>
<listitem>
<para>
The base MAC or DUID used to simulate
- different clients. The <replaceable
- class="parameter">basetype</replaceable> may be "mac"
+ different clients. The <replaceable class="parameter">basetype</replaceable> may be "mac"
or "duid". (The keyword "ether" may alternatively
used for MAC.) The <option>-b</option> option can be
specified multiple times. The MAC address must consist
<para>
Rate at which DHCPv4 or DHCPv6 renew requests are sent
to a server. This value is only valid when used in conjunction
- with the exchange rate (given by <option>-r <replaceable
- class="parameter">rate</replaceable></option>).
+ with the exchange rate (given by <option>-r <replaceable class="parameter">rate</replaceable></option>).
Furthermore the sum of this value and the release-rate
(given by <option>-F <replaceable class="parameter">
rate</replaceable></option>) must be equal to or less than
<term><option>-P <replaceable class="parameter">preload</replaceable></option></term>
<listitem>
<para>
- Initiate <replaceable
- class="parameter">preload</replaceable>
- exchanges back to back at startup. <replaceable
- class="parameter">preload</replaceable> must be 0
+ Initiate <replaceable class="parameter">preload</replaceable>
+ exchanges back to back at startup. <replaceable class="parameter">preload</replaceable> must be 0
(the default) or a positive integer.
</para>
</listitem>
<term><option>-r <replaceable class="parameter">rate</replaceable></option></term>
<listitem>
<para>
- Initiate <replaceable
- class="parameter">rate</replaceable> DORA/SARR (or
+ Initiate <replaceable class="parameter">rate</replaceable> DORA/SARR (or
if <option>-i</option> is given, DO/SA) exchanges
per second. A periodic report is generated showing
the number of exchanges which were not completed,
<para>
Specify how many different clients are used. With
a value of 1 (the default), all requests seem
- to come from the same client. <replaceable
- class="parameter">num-clients</replaceable> must be
+ to come from the same client. <replaceable class="parameter">num-clients</replaceable> must be
a positive number.
</para>
</listitem>
<listitem>
<para>
Specify the seed for randomization, making runs of
- <command>perfdhcp</command> repeatable. <replaceable
- class="parameter">seed</replaceable> is 0 or a positive
+ <command>perfdhcp</command> repeatable. <replaceable class="parameter">seed</replaceable> is 0 or a positive
integer. The value 0 means that a seed is not used;
this is the default.
</para>
<listitem>
<para>
Include extended diagnostics
- in the output. <replaceable
- class="parameter">diagnostic-selector</replaceable>
+ in the output. <replaceable class="parameter">diagnostic-selector</replaceable>
is a string of single-keywords specifying the
operations for which verbose output is desired.
The selector key letters are:
</variablelist>
- <refsect2>
- <title>DHCPv4-Only Options</title>
+ <refsection><info><title>DHCPv4-Only Options</title></info>
+
<para>
The following options only apply for DHCPv4 (i.e. when
<option>-4</option> is given).
</listitem>
</varlistentry>
</variablelist>
- </refsect2>
+ </refsection>
- <refsect2>
- <title>DHCPv6-Only Options</title>
+ <refsection><info><title>DHCPv6-Only Options</title></info>
+
<para>
The following options only apply for DHCPv6 (i.e. when
<option>-6</option> is given).
Rate at which IPv6 RELEASE requests are
sent to a server. This value is only valid
when used in conjunction with the exchange
- rate (given by <option>-r <replaceable
- class="parameter">rate</replaceable></option>).
+ rate (given by <option>-r <replaceable class="parameter">rate</replaceable></option>).
Furthermore the sum of this value and the
- renew-rate (given by <option>-f <replaceable
- class="parameter">rate</replaceable></option>)
+ renew-rate (given by <option>-f <replaceable class="parameter">rate</replaceable></option>)
must be equal to or less than the exchange rate.
</para>
</listitem>
</varlistentry>
</variablelist>
- </refsect2>
+ </refsection>
- <refsect2>
- <title>Template-Related Options</title>
+ <refsection><info><title>Template-Related Options</title></info>
+
<para>
The following options may only be used in conjunction with
<option>-T</option> and control how <command>perfdhcp</command>
<listitem>
<para>
Offset of the last octet to
- randomize in the template. <replaceable
- class="parameter">random-offset</replaceable> must be
+ randomize in the template. <replaceable class="parameter">random-offset</replaceable> must be
an integer greater than 3. The <option>-T</option>
switch must be given to use this option.
</para>
<listitem>
<para>
Offset of the server-ID option in the
- (second/request) template. <replaceable
- class="parameter">srvid-offset</replaceable> must
+ (second/request) template. <replaceable class="parameter">srvid-offset</replaceable> must
be a positive integer, and the switch can only be
used when the template option (<option>-T</option>)
is also given.
</para>
</listitem>
</varlistentry>
- </refsect2>
+ </refsection>
- <refsect2>
- <title>Options Controlling a Test</title>
+ <refsection><info><title>Options Controlling a Test</title></info>
+
<para>
The following options may only be used in conjunction with
<option>-r</option> and control both the length of the test
<term><option>-D <replaceable class="parameter">max-drop</replaceable></option></term>
<listitem>
<para>
- Abort the test if more than <replaceable
- class="parameter">max-drop</replaceable>
+ Abort the test if more than <replaceable class="parameter">max-drop</replaceable>
requests have been dropped. Use <option>-D
0</option> to abort if even a single
- request has been dropped. If <replaceable
- class="parameter">max-drop</replaceable> includes
+ request has been dropped. If <replaceable class="parameter">max-drop</replaceable> includes
the suffix '%', it specifies a maximum percentage
of requests that may be dropped before abort.
In this case, testing of the threshold begins after
<term><option>-n <replaceable class="parameter">num-requests</replaceable></option></term>
<listitem>
<para>
- Initiate <replaceable
- class="parameter">num-request</replaceable>
+ Initiate <replaceable class="parameter">num-request</replaceable>
transactions. No report is generated until all
transactions have been initiated/waited-for,
after which a report is generated and the
<term><option>-p <replaceable class="parameter">test-period</replaceable></option></term>
<listitem>
<para>
- Send requests for <replaceable
- class="parameter">test-period</replaceable>,
+ Send requests for <replaceable class="parameter">test-period</replaceable>,
which is specified in the same manner as
<option>-d</option>. This can be used as an
alternative to <option>-n</option>, or both
</varlistentry>
</variablelist>
- </refsect2>
+ </refsection>
- <refsect2>
- <title>Arguments</title>
+ <refsection><info><title>Arguments</title></info>
+
<variablelist>
<varlistentry>
</listitem>
</varlistentry>
</variablelist>
- </refsect2>
+ </refsection>
- </refsect1>
+ </refsection>
- <refsect1>
- <title>ERRORS</title>
+ <refsection><info><title>ERRORS</title></info>
+
<para>
<command>perfdhcp</command> can report the following errors in the packet exchange:
</varlistentry>
</variablelist>
- </refsect1>
+ </refsection>
- <refsect1>
- <title>EXIT STATUS</title>
+ <refsection><info><title>EXIT STATUS</title></info>
+
<para>
<command>perfdhcp</command> can exit with one of the following
</varlistentry>
</variablelist>
- </refsect1>
+ </refsection>
<!-- perfdhcp is not documented in the User's Guide at
all. There's one reference when we list binaries, but that's
it. Once it's documented, we can copy over the DOCUMENTATION
section from src/bin/dhcp4/kea-dhcp4.xml -->
- <refsect1>
- <title>MAILING LISTS AND SUPPORT</title>
+ <refsection><info><title>MAILING LISTS AND SUPPORT</title></info>
+
<para>
There are two mailing lists available for Kea project. kea-users
(kea-users at lists.isc.org) is intended for Kea users, while kea-dev
ISC provides professional support for Kea services. See
https://www.isc.org/kea/ for details.
</para>
- </refsect1>
+ </refsection>
- <refsect1>
- <title>HISTORY</title>
+ <refsection><info><title>HISTORY</title></info>
+
<para>
The <command>perfdhcp</command> tool was initially coded
in October 2011 by John DuBois, Francis Dupont and Marcin
Siodelski of ISC. Kea 1.0.0 that included perfdhcp was
released in December 2015.
</para>
- </refsect1>
+ </refsection>
- <refsect1>
- <title>SEE ALSO</title>
+ <refsection><info><title>SEE ALSO</title></info>
+
<para>
<citerefentry>
<refentrytitle>kea-dhcp4</refentrytitle>
<citetitle>Kea Administrator's Guide</citetitle>.
</para>
- </refsect1>
+ </refsection>
-</refentry>
+</refentry>
\ No newline at end of file
-<!DOCTYPE book PUBLIC "-//OASIS//DTD DocBook XML V4.2//EN"
- "http://www.oasis-open.org/docbook/xml/4.2/docbookx.dtd"
- [<!ENTITY mdash "—">]>
-<!--
- - Copyright (C) 2012-2016 Internet Systems Consortium, Inc. ("ISC")
- -
- - This Source Code Form is subject to the terms of the Mozilla Public
- - License, v. 2.0. If a copy of the MPL was not distributed with this
- - file, You can obtain one at http://mozilla.org/MPL/2.0/.
--->
+<!-- Converted by db4-upgrade version 1.0 -->
+<refentry xmlns="http://docbook.org/ns/docbook" version="5.0">
-<refentry>
-
- <refentryinfo>
- <date>July 1, 2014</date>
- </refentryinfo>
+ <info>
+ <date>2014-07-01</date>
+ </info>
<refmeta>
<refentrytitle>kea-sockcreator</refentrytitle>
</docinfo>
<refsynopsisdiv>
- <cmdsynopsis>
+ <cmdsynopsis sepchar=" ">
<command>kea-sockcreator</command>
</cmdsynopsis>
</refsynopsisdiv>
- <refsect1>
- <title>DESCRIPTION</title>
+ <refsection><info><title>DESCRIPTION</title></info>
+
<para>
The <command>kea-sockcreator</command> daemon's entire job
is to create sockets and assign names to them.
if there is an unrecoverable error or unknown command.
</para>
- </refsect1>
+ </refsection>
- <refsect1>
- <title>SEE ALSO</title>
+ <refsection><info><title>SEE ALSO</title></info>
+
<para>
<citetitle>Kea Guide</citetitle>.
</para>
<!-- TODO: point to developer docs -->
- </refsect1>
+ </refsection>
- <refsect1>
- <title>HISTORY</title>
+ <refsection><info><title>HISTORY</title></info>
+
<para>
The <command>b10-sockcreator</command> daemon
was initially designed by Michal Vaner of CZNIC.
removed. The socket creator server binary was renamed to
kea-sockcreator in July 2014.
</para>
- </refsect1>
+ </refsection>
-</refentry><!--
- - Local variables:
- - mode: sgml
- - End:
--->
+</refentry>
\ No newline at end of file