# Kea DHCPv6 Options Reference
Search DHCPv6 options and review their option codes, grammar, example values, and purpose.
| ID | Option Name | Option Code | Grammar | Example | Description |
|---|---|---|---|---|---|
| 28 | `unknown-clients` | 6 | `allow unknown-clients;`
`deny unknown-clients;`
`ignore unknown-clients;` | `Example : allow / deny / ignore` | Controls how the DHCP server handles clients that do not match a known host reservation or other configured identity. It is used to allow, deny, or ignore unregistered clients according to the network's access policy. |
| 70 | `lq-query` | 44 | `string` | `Example : string_value` | Carries a DHCPv6 Leasequery request describing the lease information being queried. It is used by authorized systems such as relays, access devices, or management tools to retrieve DHCPv6 lease state. |
| 74 | `nisp-domain-name` | 30 | `domain-name` | `Example : domainname.com` | Specifies the NIS+ domain name for the client. It is used in Unix NIS+ environments so clients can locate the correct administrative namespace. |
| 92 | `unicast` | 12 | `ip6-address` | `Type : ipv6`
`Example : 2001:db8:3333:4444:5555:6666:1.2.3.4` | Provides an IPv6 address that the client may use to send subsequent DHCPv6 messages directly to the server. It is used to permit unicast DHCPv6 communication where supported rather than always using multicast. |
| 94 | `domain-search` | 24 | `domain-list` | `Example : "domainname1.com, domainname2.com,..,etc"` | Provides a DNS search-domain list that clients append to unqualified names during resolution. It is used to simplify access to hosts across one or more local DNS domains. |
| 95 | `geoconf-civic` | 36 | `string` | `Example : string_value` | Carries civic-location information such as country, city, street, or building data. It is used in location-aware services, including emergency calling and network location provisioning. |
| 96 | `remote-id` | 37 | `string` | `Example : string_value` | Carries an identifier inserted by a DHCPv6 relay to identify a remote subscriber, line, or access device. It is used for subscriber-aware provisioning, accounting, and policy decisions on relayed traffic. |
| 97 | `subscriber-id` | 38 | `string` | `Example : string_value` | Carries a subscriber identifier supplied by a DHCPv6 relay. It is used to associate DHCP activity with a specific subscriber or access-line identity for policy, auditing, and operations. |
| 98 | `new-tzdb-timezone` | 42 | `text` | `Example : string_timezone_value` | Provides a time-zone database identifier such as an IANA TZDB name. It is used to configure the client's geographic time zone and daylight-saving rules. |
| 104 | `remote-id` | 2 | `string` | `Example : string_id_value` | Carries an identifier inserted by a DHCPv6 relay to identify a remote subscriber, line, or access device. It is used for subscriber-aware provisioning, accounting, and policy decisions on relayed traffic. |
| 107 | `nisp-servers` | 28 | `ip6-address [, ip6-address ... ]` | `Type : ipv6`
`Example : 2001:db8:3333:4444:5555:6666:1.2.3.4, 2001:db8::1234:5678:5.6,..,etc` | Provides IPv6 addresses of NIS+ servers. It is used by Unix NIS+ clients to discover their directory servers automatically. |
| 114 | `lq-client-link` | 48 | `ip6-address [, ip6-address ... ]` | `Type : ipv6`
`Example : 2001:db8:3333:4444:5555:6666:1.2.3.4, 2001:db8::1234:5678:5.6,..,etc` | Identifies the client link in DHCPv6 Leasequery exchanges. It is used to scope a lease query to clients attached to a particular network link. |
| 121 | `bootfile-param` | 60 | `string` | `Example : string_value` | Provides one or more parameters that accompany the DHCPv6 boot-file URL. It is used by network-boot clients to receive command-line, firmware, or bootstrap arguments required by the selected boot image. |
| 124 | `client-arch-type` | 61 | `uint16 [, uint6... ]` | `Range : 0-65535`
`Example : 1024,1024,..,etc` | Carries one or more client system architecture identifiers. It is used by PXE and network-boot servers to select boot files compatible with the client's processor or firmware architecture. |
| 127 | `capwap-ac-v6` | 52 | `ip6-address [, ip6-address ... ]` | `Type : ipv6`
`Example : 2001:db8:3333:4444:5555:6666:1.2.3.4, 2001:db8::1234:5678:5.6,..,etc` | Provides IPv6 addresses of CAPWAP Access Controllers. It is used by wireless access points to discover the controller that manages them. |
| 128 | `link-address` | 80 | `ip6-address` | `Type : ipv6`
`Example : 2001:db8:3333:4444:5555:6666:1.2.3.4` | Carries the IPv6 address that identifies the client-facing link, typically in relay-related processing. It is used to associate a DHCPv6 request with the correct link or subnet. |
| 133 | `nis-domain-name` | 29 | `domain-name` | `Example : domainname.com` | Specifies the Network Information Service (NIS) domain name for the client. It is used in Unix/NIS environments so clients join the correct administrative NIS domain. |
| 134 | `new-posix-timezone` | 41 | `text` | `Example : string_timezone_value` | Provides a POSIX-style time-zone string. It is used to configure the client's time-zone and daylight-saving behavior using POSIX TZ syntax. |
| 136 | `nii` | 62 | `uint8 uint8 uint8` | `Range : 0-255`
`Example : 1 2 3` | Carries the client's Network Interface Identifier, including interface type and revision information. It is used by network-boot systems to choose bootstrap components compatible with the client's network interface. |
| 142 | `lq-relay-data` | 47 | `ip6-address string` | `Example : 2001:db8:3333:4444:5555:6666:1.2. 3.4, "string_value"` | Carries relay-related data returned in DHCPv6 Leasequery responses. It is used by leasequery consumers to correlate lease information with the relay path or access-network context. |
| 144 | `sip-ua-cs-list` | 58 | `domain-list` | `Example : "domainname1.com, domainname2.com,..,etc"` | Provides a list of SIP user-agent configuration server domain names. It is used by SIP-capable clients to discover configuration or service infrastructure automatically. |
| 147 | `relay-id` | 53 | `string` | `Example : string_value` | Carries a stable identifier for a DHCPv6 relay agent. It is used to distinguish relays for policy, diagnostics, accounting, or topology-aware lease processing. |
| 149 | `bootfile-url` | 59 | `text` | `Example : tftp://[2001:db8:1::5]/bootx64.efi` | Specifies the URL of the boot file a DHCPv6 client should retrieve. It is used in PXE, UEFI, and other network-boot provisioning workflows. |
| 151 | `rdnss-selection` | 74 | `ip6-address uint8 domain-name` | `Example : 2001:db8:3333:4444:5555:6666:1.2. 3.4 10 "domainname.com"` | Provides recursive DNS server-selection information, including resolver addresses, preference, and domain association. It is used when clients need policy guidance for choosing among multiple DNS resolvers. |
| 152 | `client-linklayer-addr` | 79 | `string` | `Example : string_value` | Carries the client's link-layer address in relayed DHCPv6 traffic. It is used when servers or management systems need the client's MAC or equivalent link-layer identity for reservation, logging, or policy. |
| 153 | `v6-captive-portal` | 103 | `—` | `Example : string_value` | Provides the URI of a captive portal API or service for IPv6 clients. It is used to tell clients where to obtain captive-portal status or complete network access requirements. |
| 174 | `clt-time` | 46 | `uint32` | `Range : 0-4,294,967,295`
`Example : 12345` | Carries the time, in seconds, since the client last communicated with the DHCP server for the lease being reported. It is used in DHCPv6 leasequery processing to help consumers assess lease recency. |
| 175 | `solmax-rt` | 82 | `uint32` | `Range : 0-4,294,967,295`
`Example : 12345` | Specifies the maximum retransmission time a DHCPv6 client should use for Solicit messages. It is used to tune retry behavior and avoid excessive solicitation traffic. |
| 178 | `ipv6-address-andsf` | 143 | `—` | `ipv6` | Provides an IPv6 address associated with Access Network Discovery and Selection Function (ANDSF) service. It is used by supported mobile-network clients to discover ANDSF infrastructure. |
| 179 | `inf-max-rt` | 83 | `uint32` | `Range : 0-4,294,967,295`
`Example : 12345` | Specifies the maximum retransmission time for DHCPv6 Information-request messages. It is used to tune how aggressively stateless DHCPv6 clients retry when requesting configuration information. |
| 181 | `ero` | 43 | `uint16 [, uint6... ]` | `Range : 0-65535`
`Example : 1024,1024,..,etc` | Carries an Echo Request Option list identifying DHCPv6 options that should be echoed back. It is used by relay/server workflows that require selected received options to be returned in responses. |
| 197 | `preference` | 7 | `uint8` | `Range : 0-255`
`Example : 123` | Specifies a DHCPv6 server preference value. It is used by clients to choose among multiple Advertise messages, with higher values indicating a more preferred server. |
| 264 | `nis-servers` | 27 | `ip6-address [, ip6-address ... ]` | `Type : ipv6`
`Example : 2001:db8:3333:4444:5555:6666:1.2.3.4, 2001:db8::1234:5678:5.6,..,etc` | Provides IPv6 addresses of Network Information Service (NIS) servers. It is used by Unix/NIS clients to discover directory and account-information servers automatically. |
| 265 | `sntp-servers` | 31 | `ip6-address [, ip6-address ... ]` | `Type : ipv6`
`Example : 2001:db8:3333:4444:5555:6666:1.2.3.4, 2001:db8::1234:5678:5.6,..,etc` | Provides IPv6 addresses of Simple Network Time Protocol (SNTP) servers. It is used so clients can discover time-synchronization servers automatically. |
| 267 | `pana-agent` | 40 | `ip6-address [, ip6-address ... ]` | `Type : ipv6`
`Example : 2001:db8:3333:4444:5555:6666:1.2.3.4, 2001:db8::1234:5678:5.6,..,etc` | Provides IPv6 addresses of PANA agents. It is used by PANA-capable clients to discover network-access authentication infrastructure. |
| 289 | `client-data` | 45 | `string` | `Example : string_value` | Carries client-related data in DHCPv6 Leasequery exchanges. It is used to return detailed lease or client information to authorized leasequery consumers. |
| 290 | `ddns-send-updates` | — | `boolean` | `values : true or false`
`Example : true` | Controls whether Kea sends Dynamic DNS (DDNS) update requests for leases at the configured scope. It is used to enable or suppress automatic DNS record creation and removal for DHCP clients. |
| 291 | `ddns-override-no-update` | — | `boolean` | `values : true or false`
`Example : false` | Controls whether the server may perform DDNS updates even when a client requests that no DNS update be made. It is used when administrators want server-side DNS registration policy to take precedence over the client's preference. |
| 292 | `ddns-override-client-update` | — | `boolean` | `values : true or false`
`Example : false` | Controls whether Kea overrides a client's request to update its own forward DNS record and performs the update on the client's behalf. It is used to centralize and standardize DHCP-driven DNS registration. |
| 293 | `ddns-replace-client-name` | — | `never \| always \| when-not-present \| when-present` | `values : never, always, when-not-present, when-present`
`Example : never` | Defines when Kea should replace the hostname or FQDN supplied by a client (for example never, always, or only when present or absent). It is used to enforce predictable naming for DDNS updates. |
| 294 | `ddns-generated-prefix` | — | `text` | `Example : myhost` | Specifies the prefix Kea uses when it must generate a hostname for a client. It is used to create deterministic DNS names when a usable client name is not available. |
| 295 | `ddns-qualifying-suffix` | — | `fqdn` | `Example : example.com` | Specifies the DNS suffix appended to an unqualified client hostname to form a fully qualified domain name. It is used to place DHCP-generated names into the intended DNS domain. |
| 296 | `ddns-update-on-renew` | — | `boolean` | `values : true or false`
`Example : false` | Controls whether Kea sends a fresh DDNS update when a lease is renewed even if the DNS-related data has not otherwise changed. It is used when DNS records must be refreshed during lease renewals. |
| 297 | `ddns-conflict-resolution-mode` | — | `check-with-dhcid \| no-check-with-dhcid \| check-exists-with-dhcid \| no-check-without-dhcid` | `values : check-with-dhcid, no-check-with-dhcid, check-exists-with-dhcid, no-check-without-dhcid`
`Example : check-with-dhcid` | Selects how Kea performs DDNS name-conflict checking, including whether DHCID records are checked or created. It is used to reduce accidental overwrites and define how name ownership is verified during DNS updates. |
| 298 | `hostname-char-set` | — | `text` | `Example : [^A-Za-z0-9.-]` | Defines the character pattern Kea uses to identify characters that are not acceptable in client hostnames. It is used to sanitize hostnames before they are used in DHCP/DDNS processing. |
| 299 | `hostname-char-replacement` | — | `text` | `Example : x` | Specifies the replacement text used for hostname characters matched by the configured hostname character set. It is used to convert invalid or undesirable client hostnames into DNS-safe names. |
| 300 | `sip-server-dns` | 21 | `fqdn [, fqdn ... ]` | `Example : sip.example.com, sip2.example.com` | Provides domain names of SIP servers. It is used by SIP-capable clients to discover voice or real-time communications services through DNS names. |
| 301 | `sip-server-addr` | 22 | `ip6-address [, ip6-address ... ]` | `Example : 2001:db8::1, 2001:db8::2` | Provides IPv6 addresses of SIP servers. It is used by SIP-capable clients to discover voice or real-time communications services directly by address. |
| 302 | `dns-servers` | 23 | `ip6-address [, ip6-address ... ]` | `Example : 2001:db8::1, 2001:db8::2` | Provides IPv6 addresses of DNS recursive resolvers. It is used to give DHCPv6 clients working DNS name resolution without manual configuration. |
| 303 | `information-refresh-time` | 32 | `uint32` | `Example : 86400` | Specifies how long a stateless DHCPv6 client should wait before refreshing configuration learned through Information-request. It is used to control the refresh interval for non-address configuration. |
| 304 | `bcmcs-server-dns` | 33 | `fqdn [, fqdn ... ]` | `Example : bcmcs.example.com` | Provides domain names of Broadcast and Multicast Service controller servers. It is used by compatible clients to discover BCMCS controller infrastructure through DNS. |
| 305 | `bcmcs-server-addr` | 34 | `ip6-address [, ip6-address ... ]` | `Example : 2001:db8::1` | Provides IPv6 addresses of Broadcast and Multicast Service controller servers. It is used by compatible clients to discover BCMCS controller infrastructure directly by address. |
| 306 | `client-fqdn` | 39 | `uint8 fqdn` | `Example : 0 client.example.com` | Carries the client's Fully Qualified Domain Name and flags describing who performs DNS updates. It is used to coordinate DHCPv6-assigned addressing with forward and reverse Dynamic DNS registration. |
| 307 | `ntp-server` | 56 | `empty` | `No value (empty/container option)` | Acts as a container for DHCPv6 NTP server suboptions. It is used to advertise NTP server addresses, names, or multicast information so clients can configure time synchronization. |
| 308 | `s46-rule` | 89 | `uint8 uint8 uint8 ipv4-address ipv6-prefix` | `Example : 0 0 32 192.0.2.0 2001:db8::/32` | Carries a MAP/lw4o6 softwire rule describing IPv4/IPv6 prefix mapping and related parameters. It is used to derive IPv4 addressing and port-set behavior for IPv4 service over an IPv6-only network. |
| 309 | `s46-br` | 90 | `ip6-address` | `Example : 2001:db8::1` | Provides the IPv6 address of a softwire border relay. It is used by MAP-E or related softwire clients to reach the provider's IPv4-over-IPv6 border infrastructure. |
| 310 | `s46-dmr` | 91 | `ipv6-prefix` | `Example : 2001:db8::/32` | Provides the Default Mapping Rule IPv6 prefix used by MAP-T. It is used to construct translated IPv6 destinations for IPv4 communication across an IPv6-only domain. |
| 311 | `s46-v4v6bind` | 92 | `ipv4-address ipv6-prefix` | `Example : 192.0.2.1 2001:db8::/64` | Carries an IPv4-to-IPv6 binding for softwire operation. It is used by Lightweight 4over6 clients to associate an IPv4 address with the corresponding IPv6 tunnel endpoint. |
| 312 | `s46-portparams` | 93 | `uint8 psid` | `Example : 6 0/0` | Carries softwire port-set parameters such as offset, PSID length, and PSID. It is used to determine which subset of transport-layer ports an IPv4-over-IPv6 client is allowed to use. |
| 313 | `s46-cont-mape` | 94 | `empty` | `No value (empty/container option)` | Acts as the container option for MAP-E softwire configuration. It is used to group the parameters a client needs to provide IPv4 service by encapsulation across an IPv6-only access network. |
| 314 | `s46-cont-mapt` | 95 | `empty` | `No value (empty/container option)` | Acts as the container option for MAP-T softwire configuration. It is used to group the parameters a client needs to provide IPv4 service by translation across an IPv6-only access network. |
| 315 | `s46-cont-lw` | 96 | `empty` | `No value (empty/container option)` | Acts as the container option for Lightweight 4over6 (lw4o6) softwire configuration. It is used to group the lw4o6 parameters a client needs to obtain IPv4 service across an IPv6-only access network. |
| 316 | `v6-sztp-redirect` | 136 | `tuple` | `Example : https://sztp.example.com` | Carries redirect information for Secure Zero Touch Provisioning (SZTP). It is used to direct newly deployed IPv6-capable devices to trusted bootstrap or onboarding services. |
| 317 | `v6-dnr` | 144 | `uint16 uint16 fqdn binary` | `Example : 1 0 resolver.example.com` | Carries Discovery of Network-designated Resolvers (DNR) information for IPv6 clients, including encrypted DNS resolver parameters. It is used to advertise network-preferred secure DNS resolvers such as DoH or DoT services. |
| 318 | `addr-reg-enable` | 148 | `empty` | `No value (empty/container option)` | Signals support for or enables DHCPv6 address registration behavior. It is used in networks where clients register address-to-name information through the DHCPv6 address-registration mechanism. |
| 360 | `allocator` | — | `iterative \| random \| flq` | `values : iterative, random, flq`
`Example : iterative` | Selects Kea's IPv4/IPv6 address allocation algorithm, such as iterative, random, or Free Lease Queue (FLQ). It is used to tune address-selection behavior for performance, predictability, pool utilization, or multi-server deployments. |
| 361 | `cache-max-age` | — | `uint32` | `Range : 0-4,294,967,295`
`Example : 1000` | Sets the maximum age of an existing lease that Kea may reuse from its lease cache. It is used to reduce database writes and processing while ensuring cached lease information is not reused beyond the configured age. |
| 362 | `cache-threshold` | — | `decimal (0.0 to 1.0)` | `Example : 0.25` | Sets the fraction of a lease's valid lifetime during which Kea may reuse the existing lease from cache. It is used to reduce lease database updates and improve performance for repeated client requests. |
| 363 | `calculate-tee-times` | — | `boolean` | `values : true or false`
`Example : true` | Controls whether Kea calculates the T1 renewal and T2 rebinding timers as percentages of the lease valid lifetime. It is used to derive renewal/rebinding times automatically instead of configuring fixed timer values. |
| 364 | `client-class` | — | `string` | `Example : myclass` | Associates the scope or pool with a client class so that it applies only to clients matching that class. It is used for policy-based DHCP behavior, segmentation, and differentiated address or option assignment. |
| 366 | `ddns-override-no-update` | — | `boolean` | `values : true or false`
`Example : false` | Controls whether the server may perform DDNS updates even when a client requests that no DNS update be made. It is used when administrators want server-side DNS registration policy to take precedence over the client's preference. |
| 367 | `ddns-override-client-update` | — | `boolean` | `values : true or false`
`Example : false` | Controls whether Kea overrides a client's request to update its own forward DNS record and performs the update on the client's behalf. It is used to centralize and standardize DHCP-driven DNS registration. |
| 368 | `ddns-replace-client-name` | — | `never \| always \| when-not-present \| when-present` | `values : never, always, when-not-present, when-present`
`Example : never` | Defines when Kea should replace the hostname or FQDN supplied by a client (for example never, always, or only when present or absent). It is used to enforce predictable naming for DDNS updates. |
| 369 | `ddns-generated-prefix` | — | `text` | `Example : myhost` | Specifies the prefix Kea uses when it must generate a hostname for a client. It is used to create deterministic DNS names when a usable client name is not available. |
| 370 | `ddns-qualifying-suffix` | — | `fqdn` | `Example : example.com` | Specifies the DNS suffix appended to an unqualified client hostname to form a fully qualified domain name. It is used to place DHCP-generated names into the intended DNS domain. |
| 371 | `decline-probation-period` | — | `uint32` | `Range : 0-4,294,967,295`
`Example : 86400` | Specifies how long a lease reported as unusable by a client remains in the declined state before it can be reclaimed. It is used to avoid immediately reallocating an address that may be in conflict. |
| 372 | `delegated-len` | — | `uint8` | `Range : 0-128`
`Example : 64` | Specifies the prefix length of IPv6 prefixes delegated to clients from a prefix-delegation pool. It is used to control the size of each delegated customer or downstream network prefix. |
| 373 | `dhcp4o6-port` | — | `uint16` | `Range : 0-65535`
`Example : 67` | Specifies the UDP port used for DHCPv4-over-DHCPv6 communication. It is used in deployments that transport DHCPv4 messages through the DHCPv6 infrastructure. |
| 374 | `excluded-prefix` | — | `ipv6-prefix` | `Type : ipv6`
`Example : 2001:db8:1::/64` | Specifies an IPv6 prefix that must be excluded from an otherwise delegated prefix. It is used with prefix delegation when part of the delegated space must remain unavailable to the requesting router. |
| 375 | `excluded-prefix-len` | — | `uint8` | `Range : 0-128`
`Example : 64` | Specifies the length of the excluded IPv6 prefix within a delegated prefix. It is used together with the excluded-prefix value to identify the exact sub-prefix that must not be used. |
| 376 | `hostname-char-set` | — | `text` | `Example : [^A-Za-z0-9.-]` | Defines the character pattern Kea uses to identify characters that are not acceptable in client hostnames. It is used to sanitize hostnames before they are used in DHCP/DDNS processing. |
| 377 | `hostname-char-replacement` | — | `text` | `Example : x` | Specifies the replacement text used for hostname characters matched by the configured hostname character set. It is used to convert invalid or undesirable client hostnames into DNS-safe names. |
| 378 | `interface` | — | `string` | `Example : eth0` | Specifies the network interface associated with the DHCP scope or service configuration. It is used to bind DHCP processing to the intended local interface. |
| 379 | `interface-id` | — | `string` | `Example : vlan-100` | Specifies the DHCPv6 Interface-ID value associated with a subnet or relay path. It is used to match relayed DHCPv6 traffic to the correct logical link or subnet. |
| 380 | `max-preferred-lifetime` | — | `uint32` | `Range : 0-4,294,967,295`
`Example : 7200` | Sets the maximum IPv6 preferred lifetime Kea may assign. It is used to cap how long an IPv6 address or prefix remains preferred. |
| 381 | `max-valid-lifetime` | — | `uint32` | `Range : 0-4,294,967,295`
`Example : 86400` | Sets the maximum valid lease lifetime Kea may assign. It is used to cap lease duration and prevent leases from remaining valid longer than the administrator intends. |
| 382 | `min-preferred-lifetime` | — | `uint32` | `Range : 0-4,294,967,295`
`Example : 1800` | Sets the minimum IPv6 preferred lifetime Kea may assign. It is used to prevent dynamically calculated or requested preferred lifetimes from becoming too short. |
| 383 | `min-valid-lifetime` | — | `uint32` | `Range : 0-4,294,967,295`
`Example : 1000` | Sets the minimum valid lease lifetime Kea may assign. It is used to bound dynamically selected or client-influenced lease lifetimes so they do not become too short. |
| 384 | `pd-allocator` | — | `iterative \| random \| flq` | `values : iterative, random, flq`
`Example : iterative` | Selects Kea's prefix-delegation allocation algorithm, such as iterative, random, or Free Lease Queue (FLQ). It is used to tune how IPv6 delegated prefixes are selected from prefix pools. |
| 385 | `preferred-lifetime` | — | `uint32` | `Range : 0-4,294,967,295`
`Example : 3600` | Specifies the normal IPv6 preferred lifetime for an address or prefix. It is used to determine how long the resource is preferred for new connections before becoming deprecated while still valid. |
| 386 | `prefix` | — | `ipv6-prefix` | `Type : ipv6`
`Example : 2001:db8:1::/48` | Specifies the IPv6 prefix used by the configured prefix-delegation pool or reservation. It is used as the network block from which delegated prefixes are derived or assigned. |
| 387 | `prefix-len` | — | `uint8` | `Range : 0-128`
`Example : 48` | Specifies the length of an IPv6 prefix used in the prefix-delegation configuration. It is used to define the size of the parent prefix or reserved prefix. |
| 388 | `rapid-commit` | — | `boolean` | `values : true or false`
`Example : false` | Controls support for DHCPv6 Rapid Commit, which allows address assignment using a two-message exchange instead of the normal four-message exchange. It is used to reduce configuration latency when both client and server support the feature. |
| 389 | `rebind-timer` | — | `uint32` | `Range : 0-4,294,967,295`
`Example : 2000` | Specifies the T2 timer, in seconds, after which a client may try to rebind with any available DHCP server. It is used to provide lease continuity when the original server cannot be reached. |
| 390 | `renew-timer` | — | `uint32` | `Range : 0-4,294,967,295`
`Example : 1000` | Specifies the T1 timer, in seconds, after which a client should begin renewing its lease with the original server. It is used to control when lease renewal starts. |
| 391 | `require-client-classes` | — | `string [, string ... ]` | `Example : myclass1, myclass2` | Lists client classes that must be evaluated or satisfied for the configured scope. It is used to restrict DHCP behavior or resource assignment to clients matching required classification rules. |
| 392 | `evaluate-additional-classes` | — | `string [, string ... ]` | `Example : myclass1, myclass2` | Lists additional client classes that Kea should evaluate after initial classification. It is used when option assignment or pool selection depends on classes that are not evaluated by default. |
| 393 | `reservations-global` | — | `boolean` | `values : true or false`
`Example : false` | Controls whether Kea searches global host reservations. It is used to make reservations available across subnets and to tune reservation lookup behavior and performance. |
| 394 | `reservations-in-subnet` | — | `boolean` | `values : true or false`
`Example : true` | Controls whether Kea searches reservations defined for the current subnet. It is used to enable subnet-scoped host reservations for fixed addresses, options, or per-host policy. |
| 395 | `reservations-out-of-pool` | — | `boolean` | `values : true or false`
`Example : false` | Indicates that subnet reservations use addresses outside the dynamic allocation pools. It is used to let Kea skip some in-pool reservation checks and improve allocation performance when the deployment follows that model. |
| 396 | `t1-percent` | — | `decimal (0.0 to 1.0)` | `Example : 0.5` | Specifies the fraction of the valid lease lifetime used to calculate the T1 renewal timer when automatic timer calculation is enabled. It is used to control how early clients begin renewal. |
| 397 | `t2-percent` | — | `decimal (0.0 to 1.0)` | `Example : 0.875` | Specifies the fraction of the valid lease lifetime used to calculate the T2 rebinding timer when automatic timer calculation is enabled. It is used to control when clients broaden renewal attempts to other servers. |
| 398 | `valid-lifetime` | — | `uint32` | `Range : 0-4,294,967,295`
`Example : 4000` | Specifies the normal valid lifetime of an assigned address or prefix. It is used to determine how long a DHCP lease remains usable before it expires. |