|
typedef | CLIB_PACKED (struct { ip6_header_t ip;icmp6_neighbor_discovery_header_t neighbor;icmp6_neighbor_discovery_ethernet_link_layer_address_option_t link_layer_option;}) |
|
static int | ip6_ra_publish (ip6_ra_report_t *r) |
|
void | ip6_ra_report_register (ip6_ra_report_notify_t fn) |
|
void | ip6_ra_report_unregister (ip6_ra_report_notify_t fn) |
|
static ip6_ra_t * | ip6_ra_get_itf (u32 sw_if_index) |
|
static void | ip6_neighbor_syslog (vlib_main_t *vm, int priority, char *fmt,...) |
|
static_always_inline uword | icmp6_router_solicitation (vlib_main_t *vm, vlib_node_runtime_t *node, vlib_frame_t *frame) |
|
static_always_inline uword | icmp6_router_advertisement (vlib_main_t *vm, vlib_node_runtime_t *node, vlib_frame_t *frame) |
|
static f64 | random_f64_from_to (f64 from, f64 to) |
|
static u8 | get_mac_address (u32 sw_if_index, u8 *address) |
|
static vlib_buffer_t * | create_buffer_for_rs (vlib_main_t *vm, ip6_ra_t *radv_info) |
|
static void | stop_sending_rs (vlib_main_t *vm, ip6_ra_t *ra) |
|
static bool | check_send_rs (vlib_main_t *vm, ip6_ra_t *radv_info, f64 current_time, f64 *due_time) |
|
static uword | send_rs_process (vlib_main_t *vm, vlib_node_runtime_t *rt, vlib_frame_t *f0) |
|
void | icmp6_send_router_solicitation (vlib_main_t *vm, u32 sw_if_index, u8 stop, const icmp6_send_router_solicitation_params_t *params) |
|
static const ethernet_interface_t * | ip6_ra_get_eth_itf (u32 sw_if_index) |
|
static void | ip6_ra_link_enable (u32 sw_if_index) |
| called when IP6 is enabled on an interface create and initialize router advertisement parameters with default values for this intfc More...
|
|
static void | ip6_ra_delegate_disable (index_t rai) |
|
void | ip6_ra_update_secondary_radv_info (ip6_address_t *address, u8 prefix_len, u32 primary_sw_if_index, u32 valid_time, u32 preferred_time) |
|
static uword | ip6_ra_process_timer_event (vlib_main_t *vm, vlib_node_runtime_t *node, vlib_frame_t *frame) |
|
static void | ip6_ra_handle_report (const ip6_ra_report_t *rap) |
|
static uword | ip6_ra_event_process (vlib_main_t *vm, vlib_node_runtime_t *node, vlib_frame_t *frame) |
|
static void | ip6_ra_signal_report (ip6_ra_report_t *r) |
|
int | ip6_ra_config (vlib_main_t *vm, u32 sw_if_index, u8 suppress, u8 managed, u8 other, u8 ll_option, u8 send_unicast, u8 cease, u8 use_lifetime, u32 lifetime, u32 initial_count, u32 initial_interval, u32 max_interval, u32 min_interval, u8 is_no) |
|
int | ip6_ra_prefix (vlib_main_t *vm, u32 sw_if_index, ip6_address_t *prefix_addr, u8 prefix_len, u8 use_default, u32 val_lifetime, u32 pref_lifetime, u8 no_advertise, u8 off_link, u8 no_autoconfig, u8 no_onlink, u8 is_no) |
|
clib_error_t * | ip6_ra_cmd (vlib_main_t *vm, unformat_input_t *main_input, vlib_cli_command_t *cmd) |
|
static u8 * | format_ip6_ra (u8 *s, va_list *args) |
|
static clib_error_t * | ip6_ra_init (vlib_main_t *vm) |
|
IPv6 Router Advertisements.
The files contains the API and CLI code for managing IPv6 RAs
Definition in file ip6_ra.c.