@@ -137,7 +137,7 @@ The classification process is conducted in several steps:
137137 The ``lease4_select ``, ``lease4_renew ``, ``lease6_select ``, ``lease6_renew ``, and ``lease6_rebind ``
138138 callouts are called here.
139139
140- 12. Classes marked as "required " are evaluated in the order in which
140+ 12. Classes marked as "additional " are evaluated in the order in which
141141 they are listed: first pools, then the subnet, and finally
142142 the shared network that assigned resources belong to.
143143
@@ -1170,8 +1170,9 @@ Class Priority
11701170==============
11711171
11721172Client classes in Kea follow the order in which they are specified in the
1173- configuration (vs. alphabetical order). Required classes follow the order in
1174- which they are required.
1173+ configuration (vs. alphabetical order). Additional classes are ordered by
1174+ pool, subnet, and then shared-network and within each scope by the order in
1175+ which they appear in ``evaluate-additional-classes ``.
11751176
11761177When determining which client-class information (comprised of
11771178options, lease lifetimes, or DHCPv4 field values) is part of the class
@@ -1188,7 +1189,13 @@ reservation.
11881189
11891190On the other hand, lease lifetimes and DHCPv4 field values defined at class
11901191scope override any values defined globally, in a subnet scope, or in a
1191- shared-network scope.
1192+ shared-network scope.
1193+
1194+ .. note ::
1195+ Because additional evaluation occurs after lease assignment, parameters
1196+ that would otherwise impact lease life times (e.g. ``valid-lifetime ``,
1197+ ``offer-lifetime ``) will have no effect when specified in a class that
1198+ also sets ``only-in-additional-list `` true.
11921199
11931200As an example, imagine that an incoming packet matches two classes.
11941201Class ``foo `` defines values for an NTP server (option 42 in DHCPv4) and
0 commit comments