Skip to main content
Version: 7.25

dhcp-server


ipv6/dhcp-server​

Type: Directory

The DHCPv6 server delegates IPv6 prefixes (DHCPv6-PD) and assigns IPv6 addresses to clients. Prefixes and addresses come from IPv6 pools or from static bindings (/ipv6/dhcp-server/binding). For an overview and configuration examples, see DHCPv6 Server.

FlagNameDescription
DdynamicThe DHCPv6 server was created dynamically.
XdisabledThe DHCPv6 server is disabled.
IinvalidThe DHCPv6 server configuration is invalid.
ArgumentTypeDescription
name ( mandatory )stringName of the DHCPv6 server.
interface ( mandatory )iface_enumInterface the DHCPv6 server listens on.
prefix-poolalt { prefix-pool-static: enum (static-only) { static-only:0xffffffff } , prefix-pool-name: enum }IPv6 pool from which dynamic prefix bindings get their prefixes. With static-only, only static bindings are given out. Default: static-only.
address-poolalt { address-pool-static: enum (static-only) { static-only:0xffffffff } , address-pool-name: enum }IPv6 pool from which dynamic address bindings get their addresses. The pool prefix length must be 128. With static-only, only static bindings are given out. Default: static-only.
lease-timetimeLifetime of new and renewed bindings. Clients are told to renew after half of it and to rebind after 80% of it, and the preferred lifetime is 90% of it. Default: 3d.
rapid-commitboolWhether to answer a Solicit that asks for Rapid Commit directly with a Reply (two-message exchange). With no, the server always answers with an Advertise first. Default: yes.
use-radiusenum (no | yes | accounting)Whether to use a RADIUS server for bindings: no (default), yes for authentication and accounting, or accounting for accounting only.
preferencenumPreference value sent in Advertise messages. Clients prefer the server with the highest value. Default: 255.
binding-scriptalt { script: string }

Script to run when a binding is bound and when it ends. It runs separately for each binding, and receives these variables:

  • bindingBound - 1 when the binding was bound, otherwise 0.
  • bindingServerName - Name of the DHCPv6 server.
  • bindingDUID - DUID of the client.
  • bindingAddress - IPv6 address the client sends from, usually its link-local address.
  • bindingPrefix - The delegated prefix, or the assigned address for an address binding.
dhcp-optionmulti { array-id, option: alt { option: enum , option-set: enum } }Options (/ipv6/dhcp-server/option) to send to clients, for example DNS servers (option 23).
insert-queue-beforeenum (first | bottom) { first:0, bottom:0xffffffff }Where to place the dynamic simple queues created for bindings with a rate-limit: first (default) at the top of /queue/simple, bottom at the end, or before the named queue.
parent-queueenum (none) { none:0 }Parent of the dynamic simple queues created for bindings with a rate-limit. Default: none.
route-distancenumDistance of the routes the server adds to each delegated prefix and assigned address, through the client's link-local address. Default: 1.
allow-dual-stack-queueboolWhether a binding and a DHCP lease of the same client share one dynamic simple queue, which then contains both the IPv6 and the IPv4 address. The client is recognized by its MAC address and DUID. The DHCP server must have this setting enabled as well. Default: yes.
use-reconfigureboolWhether to send Reconfigure messages. When enabled, clients that accept them get a reconfigure key, and the server sends a Reconfigure message by itself: to all its bindings when address-pool, lease-time or dhcp-option change, and to a binding when the binding's settings change, so the clients renew; and a rebind request when the server or the binding's server is removed. The send-reconfigure command of the binding sends one manually. Default: no.
address-listsmulti { array-id, address-list: string }IPv6 firewall address lists to which the prefix or address of each binding is added. The address-lists setting of a binding overrides this.
add-dns-entriesboolWhether to add a dynamic DNS entry (type AAAA) for each address binding. The entry name is the FQDN the client sends (option 39) followed by add-dns-entries-suffix, and its TTL is the lease time. Prefix bindings get no entry. Default: no.
add-dns-entries-suffixstringDomain appended to the client name in the DNS entries created by add-dns-entries, for example laptop.lan. Default: lan.
ignore-ia-na-bindingsboolWhether to ignore address requests (IA_NA) and act as if the client's messages did not contain them, so only prefixes are handed out. Without it, a server with no address pool still answers each address request that no address is available, which can make a client that requests both keep asking. Default: no.
Read-only ArgumentTypeDescription
duidstringDUID of the server. The router uses the same DUID for its DHCPv6 clients.