DOKK / manpages / debian 12 / wide-dhcpv6-client / dhcp6ctl.8.en
DHCP6CTL(8) System Manager's Manual DHCP6CTL(8)

dhcp6ctlDHCPv6 client and server control utility

dhcp6ctl [-C -| -S] [-k keyfile] [-p port] [-s address] command

dhcp6ctl controls the operation of a DHCPv6 process, which is either dhcp6c or dhcp6s, a DHCPv6 client or a server. By default, dhcp6ctl controls a client. The type of the process can also be specified explicitly by the -C or -S options.

dhcp6ctl communicates with the DHCPv6 process over a TCP connection, sending commands authenticated with digital signatures. Currently, the only supported authentication algorithm is HMAC-MD5, which uses a shared secret on each end of the connection.

Command line options are as below:

Control a DHCPv6 client. This option is exclusive with the -S option.
Control a DHCPv6 server. This option is exclusive with the -C option.
keyfile
Use keyfile to provide the shared secret to communicate with the process. The default file name used when unspecified is /etc/wide-dhcpv6/dhcp6cctlkey with a client, and /etc/wide-dhcpv6/dhcp6sctlkey with a server.
port
Specify port as the listening port of the process. The default port number used when unspecified is 5546 for a client, and 5547 for a server.
address
Specify address as the listening address of the process. The default address used when unspecified is ::1.

Since the operation available with the dhcp6ctl command is powerful, the communication between the command and dhcp6c or dhcp6s must be authenticated. The supported algorithm for authentication is HMAC-MD5, which requires a shared secret, and the secret is stored in the key file. The key file must consist of a single line, in which the secret value is written in the form of BASE-64 encoding.

Each command specifies a single control operation. Supported commands are as follows:

This command specifies the process to reload the configuration file. Existing bindings, if any, are intact.
arguments
This command is only applicable to a server. This specifies the server to remove a run-time object specified by arguments from the server. Currently, the only possible object is one particular IA_NA or IA_PD binding, which is specified as ‘binding IA IA_NA IAID DUID’ or ‘binding IA IA_PD IAID DUID’ where IAID is a decimal number specifying the IAID of the IA, and DUID is a DHCP Unique Identifier of the binding. The format of DUID is the same as that specified in dhcp6s.conf(5).
interface ifname
This command is only applicable to a client. It tells the client to release the current configuration information (if any) on the interface ifname and restart the DHCPv6 configuration process on the interface.
interface ifname
This command is only applicable to a client. It tells the client to release the current configuration information (if any) on the interface ifname. Any timer running for the interface will be stopped, and no more DHCPv6 messages will be sent on the interface. The configuration process can later be restarted by the start command.
This command stops the specified process. If the process is a client, it will release all configuration information (if any) and exits.

/etc/wide-dhcpv6/dhcp6cctlkey
is the default key file to communicate with a client.
/etc/wide-dhcpv6/dhcp6sctlkey
is the default key file to communicate with a server.

dhcp6s.conf(5) dhcp6s(8)

The dhcp6ctl command first appeared in WIDE/KAME IPv6 protocol stack kit.

September 7, 2004 KAME