|
| VNET_FEATURE_INIT (ip4_nat_classify, static) |
|
| VNET_FEATURE_INIT (ip4_nat_handoff_classify, static) |
|
| VNET_FEATURE_INIT (ip4_nat44_ei_in2out, static) |
|
| VNET_FEATURE_INIT (ip4_nat44_ei_out2in, static) |
|
| VNET_FEATURE_INIT (ip4_nat44_ei_in2out_output, static) |
|
| VNET_FEATURE_INIT (ip4_nat44_ei_in2out_fast, static) |
|
| VNET_FEATURE_INIT (ip4_nat44_ei_out2in_fast, static) |
|
| VNET_FEATURE_INIT (ip4_nat44_ei_hairpin_dst, static) |
|
| VNET_FEATURE_INIT (ip4_nat44_ei_hairpin_src, static) |
|
| VNET_FEATURE_INIT (ip4_nat44_ei_hairpinning, static) |
|
| VNET_FEATURE_INIT (ip4_nat44_ei_in2out_worker_handoff, static) |
|
| VNET_FEATURE_INIT (ip4_nat44_ei_out2in_worker_handoff, static) |
|
| VNET_FEATURE_INIT (ip4_nat44_ei_in2out_output_worker_handoff, static) |
|
| VLIB_PLUGIN_REGISTER () |
|
void | nat44_ei_add_del_addr_to_fib (ip4_address_t *addr, u8 p_len, u32 sw_if_index, int is_add) |
|
static u8 * | format_nat44_ei_classify_trace (u8 *s, va_list *args) |
|
static void | nat44_ei_db_free () |
|
static void | nat44_ei_db_init (u32 translations, u32 translation_buckets, u32 user_buckets) |
|
static void | nat44_ei_ip4_add_del_interface_address_cb (ip4_main_t *im, uword opaque, u32 sw_if_index, ip4_address_t *address, u32 address_length, u32 if_address_index, u32 is_delete) |
|
static void | nat44_ei_ip4_add_del_addr_only_sm_cb (ip4_main_t *im, uword opaque, u32 sw_if_index, ip4_address_t *address, u32 address_length, u32 if_address_index, u32 is_delete) |
|
static void | nat44_ei_update_outside_fib (ip4_main_t *im, uword opaque, u32 sw_if_index, u32 new_fib_index, u32 old_fib_index) |
|
void | nat44_ei_set_node_indexes (nat44_ei_main_t *nm, vlib_main_t *vm) |
|
int | nat44_ei_set_workers (uword *bitmap) |
|
static_always_inline void | nat_validate_interface_counters (nat44_ei_main_t *nm, u32 sw_if_index) |
|
clib_error_t * | nat44_ei_init (vlib_main_t *vm) |
|
int | nat44_ei_plugin_enable (nat44_ei_config_t c) |
|
void | nat44_ei_addresses_free (nat44_ei_address_t **addresses) |
|
int | nat44_ei_interface_add_del (u32 sw_if_index, u8 is_inside, int is_del) |
|
int | nat44_ei_interface_add_del_output_feature (u32 sw_if_index, u8 is_inside, int is_del) |
|
int | nat44_ei_plugin_disable () |
|
int | nat44_ei_set_outside_address_and_port (nat44_ei_address_t *addresses, u32 thread_index, ip4_address_t addr, u16 port, nat_protocol_t protocol) |
|
void | nat44_ei_add_del_address_dpo (ip4_address_t addr, u8 is_add) |
|
void | nat44_ei_free_outside_address_and_port (nat44_ei_address_t *addresses, u32 thread_index, ip4_address_t *addr, u16 port, nat_protocol_t protocol) |
|
void | nat44_ei_free_session_data_v2 (nat44_ei_main_t *nm, nat44_ei_session_t *s, u32 thread_index, u8 is_ha) |
|
nat44_ei_user_t * | nat44_ei_user_get_or_create (nat44_ei_main_t *nm, ip4_address_t *addr, u32 fib_index, u32 thread_index) |
|
nat44_ei_session_t * | nat44_ei_session_alloc_or_recycle (nat44_ei_main_t *nm, nat44_ei_user_t *u, u32 thread_index, f64 now) |
|
void | nat44_ei_free_session_data (nat44_ei_main_t *nm, nat44_ei_session_t *s, u32 thread_index, u8 is_ha) |
|
static_always_inline void | nat44_ei_user_del_sessions (nat44_ei_user_t *u, u32 thread_index) |
|
int | nat44_ei_user_del (ip4_address_t *addr, u32 fib_index) |
| Delete specific NAT44 EI user and his sessions. More...
|
|
void | nat44_ei_static_mapping_del_sessions (nat44_ei_main_t *nm, nat44_ei_main_per_thread_data_t *tnm, nat44_ei_user_key_t u_key, int addr_only, ip4_address_t e_addr, u16 e_port) |
| Delete session for static mapping. More...
|
|
u32 | nat44_ei_get_in2out_worker_index (ip4_header_t *ip0, u32 rx_fib_index0, u8 is_output) |
|
u32 | nat44_ei_get_out2in_worker_index (vlib_buffer_t *b, ip4_header_t *ip0, u32 rx_fib_index0, u8 is_output) |
|
static int | nat44_ei_alloc_default_cb (nat44_ei_address_t *addresses, u32 fib_index, u32 thread_index, nat_protocol_t proto, ip4_address_t s_addr, ip4_address_t *addr, u16 *port, u16 port_per_thread, u32 snat_thread_index) |
|
static int | nat44_ei_alloc_range_cb (nat44_ei_address_t *addresses, u32 fib_index, u32 thread_index, nat_protocol_t proto, ip4_address_t s_addr, ip4_address_t *addr, u16 *port, u16 port_per_thread, u32 snat_thread_index) |
|
static int | nat44_ei_alloc_mape_cb (nat44_ei_address_t *addresses, u32 fib_index, u32 thread_index, nat_protocol_t proto, ip4_address_t s_addr, ip4_address_t *addr, u16 *port, u16 port_per_thread, u32 snat_thread_index) |
|
void | nat44_ei_set_alloc_default () |
| Set address and port assignment algorithm to default/standard. More...
|
|
void | nat44_ei_set_alloc_range (u16 start_port, u16 end_port) |
| Set address and port assignment algorithm for port range. More...
|
|
void | nat44_ei_set_alloc_mape (u16 psid, u16 psid_offset, u16 psid_length) |
| Set address and port assignment algorithm for MAP-E CE. More...
|
|
static void | nat44_ei_add_static_mapping_when_resolved (ip4_address_t l_addr, u16 l_port, u16 e_port, nat_protocol_t proto, u32 sw_if_index, u32 vrf_id, int addr_only, int identity_nat, u8 *tag) |
|
void | nat44_ei_delete_session (nat44_ei_main_t *nm, nat44_ei_session_t *ses, u32 thread_index) |
|
int | nat44_ei_del_session (nat44_ei_main_t *nm, ip4_address_t *addr, u16 port, nat_protocol_t proto, u32 vrf_id, int is_in) |
| Delete NAT44-EI session. More...
|
|
u32 | nat44_ei_get_thread_idx_by_port (u16 e_port) |
|
int | nat44_ei_add_del_static_mapping (ip4_address_t l_addr, ip4_address_t e_addr, u16 l_port, u16 e_port, nat_protocol_t proto, u32 sw_if_index, u32 vrf_id, u8 addr_only, u8 identity_nat, u8 *tag, u8 is_add) |
| Add/delete NAT44-EI static mapping. More...
|
|
int | nat44_ei_static_mapping_match (ip4_address_t match_addr, u16 match_port, u32 match_fib_index, nat_protocol_t match_protocol, ip4_address_t *mapping_addr, u16 *mapping_port, u32 *mapping_fib_index, u8 by_external, u8 *is_addr_only, u8 *is_identity_nat) |
| Match NAT44-EI static mapping. More...
|
|
static void | nat44_ei_worker_db_free (nat44_ei_main_per_thread_data_t *tnm) |
|
u8 * | format_nat44_ei_key (u8 *s, va_list *args) |
|
u8 * | format_nat44_ei_user_kvp (u8 *s, va_list *args) |
|
u8 * | format_nat44_ei_session_kvp (u8 *s, va_list *args) |
|
u8 * | format_nat44_ei_static_mapping_kvp (u8 *s, va_list *args) |
|
static void | nat44_ei_worker_db_init (nat44_ei_main_per_thread_data_t *tnm, u32 translations, u32 translation_buckets, u32 user_buckets) |
|
void | nat44_ei_sessions_clear () |
| Clear all active NAT44-EI sessions. More...
|
|
int | nat44_ei_add_address (nat44_ei_main_t *nm, ip4_address_t *addr, u32 vrf_id) |
|
int | nat44_ei_add_interface_address (nat44_ei_main_t *nm, u32 sw_if_index, int is_del) |
|
static int | nat44_ei_is_address_used_in_static_mapping (ip4_address_t addr) |
|
int | nat44_ei_del_address (nat44_ei_main_t *nm, ip4_address_t addr, u8 delete_sm) |
|
int | nat44_ei_set_frame_queue_nelts (u32 frame_queue_nelts) |
|
static_always_inline uword | nat44_ei_classify_inline_fn (vlib_main_t *vm, vlib_node_runtime_t *node, vlib_frame_t *frame) |
|