mirror of
https://gitlab.isc.org/isc-projects/kea
synced 2025-08-29 13:07:50 +00:00
[4259] Updated admin guide and spec files
Revamped discussion of FQDN name generation and use of the replace-client-name parameter in the v4 and v6 guides.
This commit is contained in:
parent
b3f483e537
commit
fe77538dc4
@ -129,7 +129,7 @@ strings <userinput>path</userinput>/kea-dhcp4 | sed -n 's/;;;; //p'
|
|||||||
If the file already exists and contains the PID of a live process,
|
If the file already exists and contains the PID of a live process,
|
||||||
the server will issue a DHCP4_ALREADY_RUNNING log message and exit. It
|
the server will issue a DHCP4_ALREADY_RUNNING log message and exit. It
|
||||||
is possible, though unlikely, that the file is a remnant of a system crash
|
is possible, though unlikely, that the file is a remnant of a system crash
|
||||||
and the process to which the PID belongs is unrelated to Kea. In such a
|
and the process to which the PID belongs is unrelated to Kea. In such a
|
||||||
case it would be necessary to manually delete the PID file.
|
case it would be necessary to manually delete the PID file.
|
||||||
</para>
|
</para>
|
||||||
|
|
||||||
@ -1777,7 +1777,7 @@ It is merely echoed by the server
|
|||||||
</section>
|
</section>
|
||||||
|
|
||||||
<section id="dhcp4-ddns-config">
|
<section id="dhcp4-ddns-config">
|
||||||
<title>Configuring DHCPv4 for DDNS</title>
|
<title>DDNS for DHCPv4</title>
|
||||||
<para>
|
<para>
|
||||||
As mentioned earlier, kea-dhcp4 can be configured to generate requests to the
|
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
|
DHCP-DDNS server (referred to here as "D2" ) to update DNS entries. These requests are known as
|
||||||
@ -1852,7 +1852,7 @@ It is merely echoed by the server
|
|||||||
<command>"override-client-update": false</command>
|
<command>"override-client-update": false</command>
|
||||||
</simpara></listitem>
|
</simpara></listitem>
|
||||||
<listitem><simpara>
|
<listitem><simpara>
|
||||||
<command>"replace-client-name": false</command>
|
<command>"replace-client-name": "never"</command>
|
||||||
</simpara></listitem>
|
</simpara></listitem>
|
||||||
<listitem><simpara>
|
<listitem><simpara>
|
||||||
<command>"generated-prefix": "myhost"</command>
|
<command>"generated-prefix": "myhost"</command>
|
||||||
@ -2078,38 +2078,62 @@ It is merely echoed by the server
|
|||||||
supply a portion or all of that name based upon what it receives from
|
supply a portion or all of that name based upon what it receives from
|
||||||
the client in the DHCP REQUEST.</para>
|
the client in the DHCP REQUEST.</para>
|
||||||
<para>
|
<para>
|
||||||
The rules for determining the FQDN option are as follows:
|
The basic rules for constructing the FQDN that will be used for DNS
|
||||||
|
entries are:
|
||||||
<orderedlist>
|
<orderedlist>
|
||||||
<listitem><para>
|
<listitem><para>
|
||||||
If configured to do, so ignore the DHCPREQUEST contents and generate a
|
If the DHCPREQUEST contains the client FQDN option, the candidate name
|
||||||
FQDN using a configurable prefix and suffix.
|
is taken from there, otherwise it is taken from the Host Name option.
|
||||||
</para></listitem>
|
</para></listitem>
|
||||||
<listitem><para>
|
<listitem><para>
|
||||||
If the DHCPREQUEST contains the client FQDN option, the candidate
|
If the candidate name is a partial (i.e. unqualified) name then add a
|
||||||
name is taken from there, otherwise it is taken from the Host Name option.
|
configurable suffix to the name and use the result as the FQDN.
|
||||||
The candidate name may then be modified:
|
|
||||||
<orderedlist>
|
|
||||||
<listitem><para>
|
|
||||||
If the candidate name is a fully qualified domain name, use it.
|
|
||||||
</para></listitem>
|
</para></listitem>
|
||||||
<listitem><para>
|
<listitem><para>
|
||||||
If the candidate name is a partial (i.e. unqualified) name then
|
If the candidate name provided is empty, generate a FQDN using a
|
||||||
add a configurable suffix to the name and use the result as the FQDN.
|
configurable prefix and suffix.
|
||||||
</para></listitem>
|
</para></listitem>
|
||||||
<listitem><para>
|
<listitem><para>
|
||||||
If the candidate name is a empty, generate a FQDN using a
|
If the client provided neither option, then no DNS action will be taken.
|
||||||
configurable prefix and suffix.
|
|
||||||
</para></listitem>
|
</para></listitem>
|
||||||
</orderedlist>
|
</orderedlist>
|
||||||
|
These rules can amended by setting the
|
||||||
|
<command>replace-client-name</command> parameter which provides the
|
||||||
|
following modes of behavior:
|
||||||
|
<itemizedlist>
|
||||||
|
<listitem><para>
|
||||||
|
<command>never</command> - Use the name the client sent. If the client
|
||||||
|
sent no name, do not generate one. This is the default mode.
|
||||||
</para></listitem>
|
</para></listitem>
|
||||||
</orderedlist>
|
<listitem><para>
|
||||||
To instruct kea-dhcp4 to always generate the FQDN for a client, set the
|
<command>always</command> - Replace the name the client sent. If the
|
||||||
parameter <command>replace-client-name</command> to true as follows:
|
client sent no name, generate one for them.
|
||||||
|
</para></listitem>
|
||||||
|
<listitem><para>
|
||||||
|
<command>when_present</command> - Replace the name the client sent.
|
||||||
|
If the client sent no name, do not generate one.
|
||||||
|
</para></listitem>
|
||||||
|
<listitem><para>
|
||||||
|
<command>when_not_present</command> - Use the name the client sent.
|
||||||
|
If the client sent no name, generate one for them.
|
||||||
|
</para></listitem>
|
||||||
|
</itemizedlist>
|
||||||
|
<note>
|
||||||
|
Note that formerly, this parameter was a boolean and permitted only values
|
||||||
|
of <command>true</command> and <command>false</command>. Boolean values
|
||||||
|
will still be accepted but may eventually be deprecated. A value of
|
||||||
|
<command>true</command> equates to <command>when_present</command>,
|
||||||
|
<command>false</command> equates to <command>never</command>.
|
||||||
|
</note>
|
||||||
|
|
||||||
|
For example, To instruct kea-dhcp4 to always generate the FQDN for a
|
||||||
|
client, set the parameter <command>replace-client-name</command> to
|
||||||
|
<command>always</command> as follows:
|
||||||
</para>
|
</para>
|
||||||
<screen>
|
<screen>
|
||||||
"Dhcp4": {
|
"Dhcp4": {
|
||||||
"dhcp-ddns": {
|
"dhcp-ddns": {
|
||||||
<userinput>"replace-client-name": true</userinput>,
|
<userinput>"replace-client-name": "always"</userinput>,
|
||||||
...
|
...
|
||||||
},
|
},
|
||||||
...
|
...
|
||||||
|
@ -1744,7 +1744,7 @@ should include options from the isc option space:
|
|||||||
</section>
|
</section>
|
||||||
|
|
||||||
<section id="dhcp6-ddns-config">
|
<section id="dhcp6-ddns-config">
|
||||||
<title>Configuring DHCPv6 for DDNS</title>
|
<title>DDNS for DHCPv6</title>
|
||||||
<para>
|
<para>
|
||||||
As mentioned earlier, kea-dhcp6 can be configured to generate requests to
|
As mentioned earlier, kea-dhcp6 can be configured to generate requests to
|
||||||
the DHCP-DDNS server (referred to here as "D2") to update
|
the DHCP-DDNS server (referred to here as "D2") to update
|
||||||
@ -1820,7 +1820,7 @@ should include options from the isc option space:
|
|||||||
<command>"override-client-update": false</command>
|
<command>"override-client-update": false</command>
|
||||||
</simpara></listitem>
|
</simpara></listitem>
|
||||||
<listitem><simpara>
|
<listitem><simpara>
|
||||||
<command>"replace-client-name": false</command>
|
<command>"replace-client-name": "never"</command>
|
||||||
</simpara></listitem>
|
</simpara></listitem>
|
||||||
<listitem><simpara>
|
<listitem><simpara>
|
||||||
<command>"generated-prefix": "myhost"</command>
|
<command>"generated-prefix": "myhost"</command>
|
||||||
@ -2041,42 +2041,67 @@ should include options from the isc option space:
|
|||||||
<section id="dhcpv6-fqdn-name-generation">
|
<section id="dhcpv6-fqdn-name-generation">
|
||||||
<title>kea-dhcp6 name generation for DDNS update requests</title>
|
<title>kea-dhcp6 name generation for DDNS update requests</title>
|
||||||
|
|
||||||
<para>Each NameChangeRequest must of course include the fully qualified domain
|
<para>Each NameChangeRequest must of course include the fully qualified
|
||||||
name whose DNS entries are to be affected. kea-dhcp6 can be configured to
|
domain name whose DNS entries are to be affected. kea-dhcp6 can be
|
||||||
supply a portion or all of that name based upon what it receives from
|
configured to supply a portion or all of that name based upon what it
|
||||||
the client in the DHCP REQUEST.</para>
|
receives from the client in the DHCP REQUEST.</para>
|
||||||
|
<para>
|
||||||
|
The basic rules for constructing the FQDN that will be used for DNS
|
||||||
|
entries are:
|
||||||
|
<orderedlist>
|
||||||
|
<listitem><para>
|
||||||
|
If the DHCPREQUEST contains the client FQDN option, the candidate name
|
||||||
|
is taken from there.
|
||||||
|
</para></listitem>
|
||||||
|
<listitem><para>
|
||||||
|
If the candidate name is a partial (i.e. unqualified) name then add a
|
||||||
|
configurable suffix to the name and use the result as the FQDN.
|
||||||
|
</para></listitem>
|
||||||
|
<listitem><para>
|
||||||
|
If the candidate name provided is empty, generate a FQDN using a
|
||||||
|
configurable prefix and suffix.
|
||||||
|
</para></listitem>
|
||||||
|
<listitem><para>
|
||||||
|
If the client provided neither option, then no DNS action will be taken.
|
||||||
|
</para></listitem>
|
||||||
|
</orderedlist>
|
||||||
|
These rules can amended by setting the
|
||||||
|
<command>replace-client-name</command> parameter which provides the
|
||||||
|
following modes of behavior:
|
||||||
|
<itemizedlist>
|
||||||
|
<listitem><para>
|
||||||
|
<command>never</command> - Use the name the client sent. If the client
|
||||||
|
sent no name, do not generate one. This is the default mode.
|
||||||
|
</para></listitem>
|
||||||
|
<listitem><para>
|
||||||
|
<command>always</command> - Replace the name the client sent. If the
|
||||||
|
client sent no name, generate one for them.
|
||||||
|
</para></listitem>
|
||||||
|
<listitem><para>
|
||||||
|
<command>when_present</command> - Replace the name the client sent.
|
||||||
|
If the client sent no name, do not generate one.
|
||||||
|
</para></listitem>
|
||||||
|
<listitem><para>
|
||||||
|
<command>when_not_present</command> - Use the name the client sent.
|
||||||
|
Supply the name if the client did not.
|
||||||
|
</para></listitem>
|
||||||
|
</itemizedlist>
|
||||||
|
<note>
|
||||||
|
Note that formerly, this parameter was a boolean and permitted only values
|
||||||
|
of <command>true</command> and <command>false</command>. Boolean values
|
||||||
|
will still be accepted but may eventually be deprecated. A value of
|
||||||
|
<command>true</command> equates to <command>when_present</command>,
|
||||||
|
<command>false</command> equates to <command>never</command>.
|
||||||
|
</note>
|
||||||
|
|
||||||
<para>The rules for determining the FQDN option are as follows:
|
For example, To instruct kea-dhcp6 to always generate the FQDN for a
|
||||||
<orderedlist>
|
client, set the parameter <command>replace-client-name</command> to
|
||||||
<listitem><para>
|
<command>always</command> as follows:
|
||||||
If configured to do so ignore the REQUEST contents and generate a
|
|
||||||
FQDN using a configurable prefix and suffix.
|
|
||||||
</para></listitem>
|
|
||||||
<listitem><para>
|
|
||||||
Otherwise, using the domain name value from the client FQDN option as
|
|
||||||
the candidate name:
|
|
||||||
<orderedlist>
|
|
||||||
<listitem><para>
|
|
||||||
If the candidate name is a fully qualified domain name then use it.
|
|
||||||
</para></listitem>
|
|
||||||
<listitem><para>
|
|
||||||
If the candidate name is a partial (i.e. unqualified) name then
|
|
||||||
add a configurable suffix to the name and use the result as the FQDN.
|
|
||||||
</para></listitem>
|
|
||||||
<listitem><para>
|
|
||||||
If the candidate name is a empty then generate a FQDN using a
|
|
||||||
configurable prefix and suffix.
|
|
||||||
</para></listitem>
|
|
||||||
</orderedlist>
|
|
||||||
</para></listitem>
|
|
||||||
</orderedlist>
|
|
||||||
To instruct kea-dhcp6 to always generate a FQDN, set the parameter
|
|
||||||
"replace-client-name" to true:
|
|
||||||
</para>
|
</para>
|
||||||
<screen>
|
<screen>
|
||||||
"Dhcp6": {
|
"Dhcp6": {
|
||||||
"dhcp-ddns": {
|
"dhcp-ddns": {
|
||||||
<userinput>"replace-client-name": true</userinput>,
|
<userinput>"replace-client-name": "always"</userinput>,
|
||||||
...
|
...
|
||||||
},
|
},
|
||||||
...
|
...
|
||||||
|
@ -607,9 +607,9 @@
|
|||||||
},
|
},
|
||||||
{
|
{
|
||||||
"item_name": "replace-client-name",
|
"item_name": "replace-client-name",
|
||||||
"item_type": "boolean",
|
"item_type": "string",
|
||||||
"item_optional": true,
|
"item_optional": true,
|
||||||
"item_default": false,
|
"item_default": "never",
|
||||||
"item_description": "Should server replace the domain-name supplied by the client"
|
"item_description": "Should server replace the domain-name supplied by the client"
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
|
@ -711,9 +711,9 @@
|
|||||||
},
|
},
|
||||||
{
|
{
|
||||||
"item_name": "replace-client-name",
|
"item_name": "replace-client-name",
|
||||||
"item_type": "boolean",
|
"item_type": "string",
|
||||||
"item_optional": true,
|
"item_optional": true,
|
||||||
"item_default": false,
|
"item_default": "never",
|
||||||
"item_description": "Should server replace the domain-name supplied by the client"
|
"item_description": "Should server replace the domain-name supplied by the client"
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
|
@ -1,4 +1,4 @@
|
|||||||
# Copyright (C) 2012-2015 Internet Systems Consortium, Inc. ("ISC")
|
# Copyright (C) 2012-2016 Internet Systems Consortium, Inc. ("ISC")
|
||||||
#
|
#
|
||||||
# This Source Code Form is subject to the terms of the Mozilla Public
|
# 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
|
# License, v. 2.0. If a copy of the MPL was not distributed with this
|
||||||
|
Loading…
x
Reference in New Issue
Block a user