without any quotes around them.) <command>renew-timer</command> and
<command>rebind-timer</command> are values (also in seconds) that
define T1 and T2 timers that govern when the client will begin the renewal and
-rebind procedures. <note>Both <command>renew-timer</command> and
-<command>rebind-timer</command> are optional. The server will only send
-rebind-timer to the client, via DHCPv4 option code 59, if it is less than
-valid-lifetime; and it will only send renew-timer, via DHCPv4 option code 58,
-if it is less than rebind-timer (or valid-lifetime if rebind-timer was not
-specified). In their absence, the client should select values for T1 and T2
-timers according to <link xmlns:xlink="http://www.w3.org/1999/xlink"
-xlink:href="http://tools.ietf.org/html/rfc2131">RFC 2131</link>.
-See section <xref linkend="dhcp4-t1-t2-times"/> for more details on
+rebind procedures.
+
+<note>From Kea 1.6.0 the lease valid lifetime is extended from a
+single value to a triplet with minimum, default and maximum values using
+<command>min-valid-lifetime</command>, <command>valid-lifetime</command> and
+<command>max-valid-lifetime</command>. When the client does not specify
+a lifetime the default value is used, when it specifies using a DHCP option
+code 51 this value is used if it is not lesser than the minimum (in this case
+the minimum is returned) or greater than the maximum (in this case the
+maximum is used).</note>
+
+<note>Both <command>renew-timer</command>
+and <command>rebind-timer</command> are optional. The server will only
+send rebind-timer to the client, via DHCPv4 option code 59, if it is
+less than lease valid lifetime; and it will only send renew-timer, via
+DHCPv4 option code 58, if it is less than rebind-timer (or lease valid
+lifetime if rebind-timer was not specified). In their absence, the
+client should select values for T1 and T2 timers according
+to <link xmlns:xlink="http://www.w3.org/1999/xlink"
+xlink:href="http://tools.ietf.org/html/rfc2131">RFC 2131</link>. See
+section <xref linkend="dhcp4-t1-t2-times"/> for more details on
generating T1 and T2.</note></para>
<para>The <command>interfaces-config</command> map specifies the server
<section xml:id="dhcp6-t1-t2-times">
<title>Controlling the Values Sent for T1 and T2 Times</title>
+ <para>
According to <link xmlns:xlink="http://www.w3.org/1999/xlink"
xlink:href="http://tools.ietf.org/html/rfc8415">RFC 8415, section 21.4</link>,
the recommended T1 and T2 values are 50% and 80%
percentages of the preferred lease time. The server's behavior is governed
by combination of configuration parameters, two of which have already been
mentioned.
- <para>
+ </para><para>
+ From Kea 1.6.0 lease preferred and valid lifetime are extended from
+ single values to triplets with minimum, default and maximum values using:
+ <itemizedlist>
+ <listitem>
+ <simpara><command>min-preferred-lifetime</command> - specifies the minimal preferred lifetime (optional).
+ </simpara>
+ </listitem>
+ <listitem>
+ <simpara><command>preferred-lifetime</command> - specifies the default preferred lifetime.
+ </simpara>
+ </listitem>
+ <listitem>
+ <simpara><command>max-preferred-lifetime</command> - specifies the maximal preferred lifetime (optional).
+ </simpara>
+ </listitem>
+ <listitem>
+ <simpara><command>min-valid-lifetime</command> - specifies the minimal valid lifetime (optional).
+ </simpara>
+ </listitem>
+ <listitem>
+ <simpara><command>valid-lifetime</command> - specifies the default valid lifetime.
+ </simpara>
+ </listitem>
+ <listitem>
+ <simpara><command>max-valid-lifetime</command> - specifies the maximal valid lifetime (optional).
+ </simpara>
+ </listitem>
+ </itemizedlist>
+ When the client does not specify lifetimes the default is used. When
+ it specifies a lifetime using IAADDR or IAPREFIX sub option with not
+ zero values these values are used when they are between configured
+ minimal (lower values are round up) and maximal (larger values are
+ round down) bounds.
+ </para><para>
To send specific, fixed values use the following two parameters:
<itemizedlist>
<listitem>