mirror of
https://gitlab.isc.org/isc-projects/kea
synced 2025-09-01 06:25:34 +00:00
Additional edits, Sphinx formatting
This commit is contained in:
committed by
Michal Nowikowski
parent
8c15d974bc
commit
2c8cfbfc7c
@@ -413,7 +413,7 @@ Notes:
|
||||
than one appear. For the vendor.enterprise and vendor-class.enterprise
|
||||
expressions, the value from the first instance is returned. Please
|
||||
submit a feature request on the
|
||||
`Kea GitLab site <https://gitlab.isc.org/isc-projects/kea>`__ if you need
|
||||
`Kea GitLab site <https://gitlab.isc.org/isc-projects/kea>`__ to request
|
||||
support for multiple instances.
|
||||
|
||||
.. table:: List of Classification Expressions
|
||||
@@ -543,7 +543,7 @@ The option data is a list which defines any options that should be
|
||||
assigned to members of this class.
|
||||
|
||||
The option definition is for DHCPv4 option 43
|
||||
(:ref:`dhcp4-vendor-opts` and DHCPv4 private options
|
||||
(:ref:`dhcp4-vendor-opts`) and DHCPv4 private options
|
||||
(:ref:`dhcp4-private-opts`).
|
||||
|
||||
Usually the test expression is evaluated before subnet selection, but in
|
||||
|
@@ -4,7 +4,7 @@
|
||||
Congestion Handling in DHCPv4 and DHCPv6
|
||||
****************************************
|
||||
|
||||
.. _congeston-handling-background:
|
||||
.. _congestion-handling-background:
|
||||
|
||||
What is Congestion?
|
||||
===================
|
||||
@@ -39,7 +39,7 @@ that were no longer relevant, or worse, were redundant. In other words,
|
||||
the packets waiting in the FIFO socket buffers became increasingly
|
||||
stale.
|
||||
|
||||
.. _congeston-handling-solution:
|
||||
.. _congestion-handling-solution:
|
||||
|
||||
Configuring Congestion Handling
|
||||
===============================
|
||||
@@ -70,7 +70,8 @@ queue is implemented as a plug-in, which can replaced by a custom queue
|
||||
implementation via a hook library. This should make it straightforward
|
||||
for interested parties to experiment with their own solutions.
|
||||
(Developers can refer to isc::dhcp::PacketQueue and
|
||||
isc::dhcp::PacketQueueMgr, described in the Kea Developer's Guide).
|
||||
isc::dhcp::PacketQueueMgr, described in the
|
||||
`Kea Developer's Guide <https://jenkins.isc.org/job/Kea_doc/doxygen/index.html>`__.)
|
||||
|
||||
Packet queue behavior is configured in both kea-dhcp4 and kea-dhcp6
|
||||
servers through an optional, top-level, configuration element,
|
||||
|
@@ -141,7 +141,7 @@ Upon startup, the module will load its configuration and begin listening
|
||||
for NCRs based on that configuration.
|
||||
|
||||
During startup, the server will attempt to create a PID file of the form:
|
||||
[localstatedir]/[conf name].kea-dhcp-ddns.pid where:
|
||||
[**localstatedir**]/[**conf name**].kea-dhcp-ddns.pid where:
|
||||
|
||||
- ``localstatedir`` - is the value as passed into the build configure
|
||||
script; it defaults to "/usr/local/var". Note that this value may be
|
||||
@@ -560,7 +560,7 @@ This section describes how to add Reverse DDNS Domains; repeat these
|
||||
steps for each Reverse DDNS Domain desired. Each Reverse DDNS Domain has
|
||||
the following parameters:
|
||||
|
||||
- ``name`` - the fully qualified reverse zone that this DDNS Domain can
|
||||
- ``name`` - the fully qualified reverse zone that this DDNS domain can
|
||||
update. This is the value used during reverse matching, which will
|
||||
compare it with a reversed version of the request's lease address.
|
||||
The zone name should follow the appropriate standards; for example,
|
||||
|
@@ -58,7 +58,7 @@ configuration file. Since the DHCPv6 server opens privileged ports, it
|
||||
requires root access. This daemon must be run as root.
|
||||
|
||||
During startup, the server will attempt to create a PID file of the
|
||||
form: localstatedir]/[conf name].kea-dhcp6.pid where:
|
||||
form: [**localstatedir**]/[**conf name**].kea-dhcp6.pid where:
|
||||
|
||||
- ``localstatedir``: The value as passed into the build configure
|
||||
script; it defaults to "/usr/local/var". Note that this value may be
|
||||
@@ -571,7 +571,7 @@ be set to "mysql" or "postgresql".
|
||||
|
||||
Next, the name of the database to hold the reservations must be set;
|
||||
this is the name used when the lease database was created (see
|
||||
`:ref:`supported-databases` for instructions on how to set up the
|
||||
:ref:`supported-databases` for instructions on how to set up the
|
||||
desired database type):
|
||||
|
||||
::
|
||||
@@ -1782,8 +1782,8 @@ last field is an array, i.e. it can contain more than one value, as in:
|
||||
...
|
||||
}
|
||||
|
||||
The new option content is one IPv6 address followed by one or more 16-
|
||||
bit unsigned integers.
|
||||
The new option content is one IPv6 address followed by one or more 16-bit
|
||||
unsigned integers.
|
||||
|
||||
.. note::
|
||||
|
||||
@@ -2808,25 +2808,25 @@ are enabled. To set its value simply set it to the desired string:
|
||||
When qualifying a partial name, kea-dhcp6 will construct the name in the
|
||||
format:
|
||||
|
||||
[candidate-name].[qualifying-suffix].
|
||||
[**candidate-name**].[**qualifying-suffix**].
|
||||
|
||||
where candidate-name is the partial name supplied in the DHCPREQUEST.
|
||||
where **candidate-name** is the partial name supplied in the DHCPREQUEST.
|
||||
For example, if the FQDN domain name value is "some-computer" and the
|
||||
qualifying-suffix "example.com", the generated FQDN is:
|
||||
|
||||
some-computer.example.com.
|
||||
**some-computer.example.com.**
|
||||
|
||||
When generating the entire name, kea-dhcp6 will construct the name in
|
||||
the format:
|
||||
|
||||
[generated-prefix]-[address-text].[qualifying-suffix].
|
||||
[**generated-prefix**]-[**address-text**].[**qualifying-suffix**].
|
||||
|
||||
where address-text is simply the lease IP address converted to a
|
||||
where **address-text** is simply the lease IP address converted to a
|
||||
hyphenated string. For example, if the lease address is 3001:1::70E, the
|
||||
qualifying suffix "example.com", and the default value is used for
|
||||
``generated-prefix``, the generated FQDN is:
|
||||
|
||||
myhost-3001-1--70E.example.com.
|
||||
**myhost-3001-1--70E.example.com.**
|
||||
|
||||
.. _host-name-sanitization:
|
||||
|
||||
@@ -3198,7 +3198,7 @@ another.
|
||||
.. note::
|
||||
|
||||
Global reservations, while useful in certain circumstances, have aspects
|
||||
that must be given due consideration when using them, please see
|
||||
that must be given due consideration. Please see
|
||||
:ref:`reservation6-conflict` for more details.
|
||||
|
||||
.. _reservation6-conflict:
|
||||
@@ -5499,7 +5499,7 @@ The following standards are currently supported:
|
||||
- *Dynamic Host Configuration Protocol for IPv6 (DHCPv6)*, `RFC
|
||||
8415 <https://tools.ietf.org/html/rfc8415>`__: New DHCPv6 protocol
|
||||
specification which obsoletes RFC 3315, RFC 3633, RFC 3736, RFC 4242,
|
||||
RFC 7083, RFC 7283, and RFC 7550
|
||||
RFC 7083, RFC 7283, and RFC 7550.
|
||||
|
||||
.. _dhcp6-limit:
|
||||
|
||||
|
@@ -141,7 +141,7 @@ the specified client class has been found:
|
||||
"text": "Class 'ipxe_efi_x64' deleted."
|
||||
}
|
||||
|
||||
If the class doesn't exist, the result of 3 is returned.
|
||||
If the class does not exist, the result of 3 is returned.
|
||||
|
||||
.. _command-class-list:
|
||||
|
||||
|
@@ -295,7 +295,8 @@ in normal operation serves no scopes.
|
||||
The scope names can be used to associate pools, subnets, and networks
|
||||
with certain servers, so only these servers can allocate addresses or
|
||||
prefixes from those pools, subnets, or networks. This is done via the
|
||||
client classification mechanism (see below).
|
||||
client classification mechanism (see :ref:`ha-load-balancing-advanced-config`
|
||||
for more details).
|
||||
|
||||
.. _ha-scope-transition:
|
||||
|
||||
@@ -394,13 +395,13 @@ with the only difference that ``this-server-name`` should be set to
|
||||
}]
|
||||
}
|
||||
|
||||
Two hook libraries must be loaded to enable HA:
|
||||
Two hooks libraries must be loaded to enable HA:
|
||||
``libdhcp_lease_cmds.so`` and ``libdhcp_ha.so``. The latter implements
|
||||
the HA feature, while the former enables control commands required by HA
|
||||
to fetch and manipulate leases on the remote servers. In the example
|
||||
provided above, it is assumed that Kea libraries are installed in the
|
||||
``/usr/lib`` directory. If Kea is not installed in the /usr directory,
|
||||
the hook libraries locations must be updated accordingly.
|
||||
the hooks libraries locations must be updated accordingly.
|
||||
|
||||
The HA configuration is specified within the scope of ``libdhcp_ha.so``.
|
||||
Note that the top-level parameter ``high-availability`` is a list, even
|
||||
@@ -803,8 +804,8 @@ less than 10000 lines.
|
||||
|
||||
.. _ha-syncing-timeouts:
|
||||
|
||||
Discussion About Timeouts
|
||||
-------------------------
|
||||
Timeouts
|
||||
--------
|
||||
|
||||
In deployments with a large number of clients connected to the network,
|
||||
lease-database synchronization after a server failure may be a
|
||||
@@ -881,10 +882,10 @@ the Kea source at: ``src/lib/config/timeouts.h``.
|
||||
|
||||
.. _ha-pause-state-machine:
|
||||
|
||||
Pausing HA State Machine
|
||||
------------------------
|
||||
Pausing the HA State Machine
|
||||
----------------------------
|
||||
|
||||
The high availability state machine includes many different states
|
||||
The high-availability state machine includes many different states
|
||||
described in detail in :ref:`ha-server-states`. The server
|
||||
enters each state when certain conditions are met, most often taking
|
||||
into account the partner server's state. In some states the server
|
||||
|
@@ -44,7 +44,7 @@ any other hooks library; for example, this configuration could be used:
|
||||
}
|
||||
} ]
|
||||
|
||||
Once loaded, the Host Cache hook library provides a number of new
|
||||
Once loaded, the Host Cache hooks library provides a number of new
|
||||
commands which can be used either over the control channel (see
|
||||
:ref:`ctrl-channel-client`) or the RESTful API (see
|
||||
:ref:`agent-overview`). An example RESTful API client is described in
|
||||
@@ -69,7 +69,7 @@ removed. An example usage looks as follows:
|
||||
|
||||
This command will remove 1000 hosts. To delete all cached
|
||||
hosts, please use cache-clear instead. The hosts are stored in FIFO
|
||||
order, so the oldest entries are always removed.
|
||||
(first-in, first-out) order, so the oldest entries are always removed.
|
||||
|
||||
.. _command-cache-clear:
|
||||
|
||||
|
@@ -3,7 +3,7 @@
|
||||
radius: RADIUS Server Support
|
||||
=============================
|
||||
|
||||
The RADIUS hook library allows Kea to interact with two types of RADIUS
|
||||
The RADIUS hooks library allows Kea to interact with two types of RADIUS
|
||||
servers: access and accounting. Although the most common DHCP and RADIUS
|
||||
integration is done on the DHCP relay-agent level (DHCP clients send
|
||||
DHCP packets to DHCP relays; those relays contact the RADIUS server and
|
||||
@@ -538,8 +538,8 @@ received during the initial Discover/Offer exchanges and use it again
|
||||
later when sending accounting messages.
|
||||
|
||||
This mechanism is implemented based on user context in host
|
||||
reservations. (See :ref:`user-context` for details about user
|
||||
context). The host cache mechanism allows the information retrieved by
|
||||
reservations. (See :ref:`user-context` for details.)
|
||||
The host cache mechanism allows the information retrieved by
|
||||
RADIUS to be stored and later used for sending accounting and access
|
||||
queries to the RADIUS server. In other words, the host-cache mechanism
|
||||
is mandatory, unless administrators do not want RADIUS communication for messages
|
||||
|
@@ -127,7 +127,7 @@ some hooks may require their own dedicated switches, e.g. the RADIUS hook
|
||||
requires extra switches for FreeRADIUS. Please consult later sections of
|
||||
this chapter for details.
|
||||
|
||||
6. Rebuild Kea
|
||||
6. Rebuild Kea.
|
||||
|
||||
::
|
||||
|
||||
@@ -209,7 +209,9 @@ configuration would be:
|
||||
parameter entry for comments, as is the case with many configuration
|
||||
scopes.
|
||||
|
||||
.. note:
|
||||
..
|
||||
|
||||
.. note::
|
||||
|
||||
In all versions of Kea since 1.1.0, libraries
|
||||
are reloaded even if their lists have not changed,
|
||||
@@ -1033,7 +1035,7 @@ client-id option) is ignored.
|
||||
|
||||
The :ref:`lease-cmds` section describes commands used to retrieve,
|
||||
update, and delete leases using various identifiers, such as "hw-address" and
|
||||
"client-id". The lease_cmds library doesn't natively support querying
|
||||
"client-id". The lease_cmds library does not natively support querying
|
||||
for leases by flexible identifier. However, when ``replace-client-id`` is
|
||||
set to "true", it makes it possible to query for leases using a value
|
||||
derived from the flexible identifier. In the DHCPv4 case, the query will
|
||||
@@ -1528,7 +1530,7 @@ page is received. Its response will look like this:
|
||||
This command is more complex than ``reservation-get-all``, but lets
|
||||
users retrieve larger host reservations lists in smaller chunks. For
|
||||
small deployments with few reservations, it is easier to use
|
||||
``reservation-get-all`` (see :ref:`command-reservation-get-all`.
|
||||
``reservation-get-all`` (see :ref:`command-reservation-get-all`).
|
||||
|
||||
.. note::
|
||||
|
||||
@@ -2085,7 +2087,7 @@ belonging to the subnet. The server may also be configured with static
|
||||
host reservations which are associated with this subnet. The current
|
||||
implementation of the ``subnet4-del`` command removes neither the leases nor
|
||||
the host reservations associated with a subnet. This is the safest approach
|
||||
because the server doesn't lose track of leases assigned to the clients
|
||||
because the server does not lose track of leases assigned to the clients
|
||||
from this subnet. However, removal of the subnet may still cause
|
||||
configuration errors and conflicts. For example: after removal of the
|
||||
subnet, the server administrator may update a new subnet with the ID
|
||||
@@ -2141,7 +2143,7 @@ belonging to the subnet. The server may also be configured with static
|
||||
host reservations which are associated with this subnet. The current
|
||||
implementation of the ``subnet6-del`` command removes neither the leases nor
|
||||
the host reservations associated with a subnet. This is the safest approach
|
||||
because the server doesn't lose track of leases assigned to the clients
|
||||
because the server does not lose track of leases assigned to the clients
|
||||
from this subnet. However, removal of the subnet may still cause
|
||||
configuration errors and conflicts. For example: after removal of the
|
||||
subnet, the server administrator may add a new subnet with the ID used
|
||||
|
@@ -155,8 +155,8 @@ by the following diagram:
|
||||
|
||||
|
||||
| c1 | | c2 | |c3| | c4 |
|
||||
|<---->|<---------->|<-->|<---------->|<>|<---------->|<-->|
|
||||
---------------------------------------------------------------->
|
||||
|<---->|<---------->|<-->|<---------->|<>|<---------->|<-->|<--
|
||||
------------------------------------------------------------------>
|
||||
| | 5s | | 5s | | 5s | | time
|
||||
|
||||
This diagram shows four lease-reclamation cycles (c1 through c4) of
|
||||
@@ -322,9 +322,9 @@ should consider using host reservations or leases with very long lifetimes.
|
||||
|
||||
.. _leases-reclamation-using-command:
|
||||
|
||||
Reclaiming Expired Leases with Command
|
||||
======================================
|
||||
Reclaiming Expired Leases via Command
|
||||
=====================================
|
||||
|
||||
The *leases-reclaim* command can be used to trigger lease reclamation at
|
||||
The ``leases-reclaim`` command can be used to trigger lease reclamation at
|
||||
any time. Please consult the :ref:`command-leases-reclaim` section
|
||||
for details about using this command.
|
||||
|
Reference in New Issue
Block a user