Difference between revisions of "VPP/DHCPv6"
From fd.io
								< VPP
												
				| Line 49: | Line 49: | ||
   };  |    };  | ||
| − | /** \brief Add/delete IPv6 address optionally using available prefix  | + |   /** \brief Add/delete IPv6 address optionally using available prefix  | 
| − | + |       @param client_index - opaque cookie to identify the sender  | |
| − | + |       @param context - sender context, to match reply w/ request  | |
| − | + |       @param sw_if_index - software interface index of interface  | |
| − | + |                            to add/delete address to/from  | |
| − | + |       @param prefix_group - prefix group,  | |
| − | + |                             ~0 means no prefix should be used  | |
| − | */  | + |   */  | 
| − | autoreply define control_plane_ip6_address_add_del  | + |   autoreply define control_plane_ip6_address_add_del  | 
| − | {  | + |   {  | 
| − | + |     u32 client_index;  | |
| − | + |     u32 context;  | |
| − | + |     u32 sw_if_index;  | |
| − | + |     u32 prefix_group;  | |
| − | + |     u8 address[16];  | |
| − | + |     u8 prefix_length;  | |
| − | + |     u8 is_add;  | |
| − | };  | + |   };  | 
Revision as of 11:21, 30 May 2018
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 prefixes
To add/delete IPv6 address potentially using available prefix from specified prefix group:
set ip6 addresses <interface> [prefix group <n>] <address> [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 Add/delete IPv6 address optionally using available prefix
     @param client_index - opaque cookie to identify the sender
     @param context - sender context, to match reply w/ request
     @param sw_if_index - software interface index of interface
                          to add/delete address to/from
     @param prefix_group - prefix group,
                           ~0 means no prefix should be used
 */
 autoreply define control_plane_ip6_address_add_del
 {
   u32 client_index;
   u32 context;
   u32 sw_if_index;
   u32 prefix_group;
   u8 address[16];
   u8 prefix_length;
   u8 is_add;
 };