VPP/DHCPv6
From fd.io
DHCPv6
DHCPv6 IA_NA
To enable/disable DHCPv6 IA_NA client on an interface:
dhcp6 client <interface> [disable]
Binary API:
/** \brief Enable/disable DHCPv6 client on interface @param client_index - opaque cookie to identify the sender @param context - sender context, to match reply w/ request @param sw_if_index - interface to enable/disable client on @param enable - 1 to enable, 0 to disable */ autoreply define dhcp6_client_enable_disable { u32 client_index; u32 context; u32 sw_if_index; u8 enable; };
DHCPv6 prefix delegation
To enable/disable DHCPv6 prefix delegation client on an interface:
dhcp6 pd client <interface> [disable]
To show the state of clients and prefixes:
show ip6 pd clients show ip6 pd prefixes
To set interfaces which should acquire IP addresses from available prefixes:
set ip6 pd addresses (<interface>+ | del)
Binary API:
/** \brief Enable/disable DHCPv6 PD client on interface @param client_index - opaque cookie to identify the sender @param context - sender context, to match reply w/ request @param sw_if_index - interface to enable/disable client on @param enable - 1 to enable, 0 to disable */ autoreply define dhcp6_pd_client_enable_disable { u32 client_index; u32 context; u32 sw_if_index; u8 enable; }; /** \brief Set IPv6 address using prefix obtained from DHCPv6 PD @param client_index - opaque cookie to identify the sender @param context - sender context, to match reply w/ request @param sw_if_indices - list of software interface indices of interfaces to add/delete address to/from */ autoreply define ip6_pd_addresses_set { u32 client_index; u32 context; u32 n_interfaces; u32 sw_if_indices[n_interfaces]; };