FD.io VPP  v19.08-27-gf4dcae4
Vector Packet Processing
ip.api File Reference

This file defines vpp IP control-plane API messages which are generally called through a shared memory interface. More...

Go to the source code of this file.

Data Structures

struct  vl_api_ip_table_t
 An IP table. More...
 
struct  vl_api_ip_table_add_del_t
 Add / del table request A table can be added multiple times, but need be deleted only once. More...
 
struct  vl_api_ip_table_dump_t
 Dump IP all fib tables. More...
 
struct  vl_api_ip_table_details_t
 IP FIB table response. More...
 
struct  vl_api_ip_route_t
 An IP route. More...
 
struct  vl_api_ip_route_add_del_t
 Add / del route request. More...
 
struct  vl_api_ip_route_add_del_reply_t
 
struct  vl_api_ip_route_dump_t
 Dump IP routes from a table. More...
 
struct  vl_api_ip_route_details_t
 IP FIB table entry response. More...
 
struct  vl_api_ip_neighbor_add_del_t
 IP neighbor add / del request. More...
 
struct  vl_api_ip_neighbor_add_del_reply_t
 
struct  vl_api_ip_neighbor_dump_t
 Dump IP neighboors. More...
 
struct  vl_api_ip_neighbor_details_t
 IP neighboors dump response. More...
 
struct  vl_api_set_ip_flow_hash_t
 Set the ip flow hash config for a fib request. More...
 
struct  vl_api_sw_interface_ip6nd_ra_config_t
 IPv6 router advertisement config request. More...
 
struct  vl_api_sw_interface_ip6nd_ra_prefix_t
 IPv6 router advertisement prefix config request. More...
 
struct  vl_api_ip6nd_proxy_add_del_t
 IPv6 ND proxy config. More...
 
struct  vl_api_ip6nd_proxy_details_t
 IPv6 ND proxy details returned after request. More...
 
struct  vl_api_ip6nd_proxy_dump_t
 IPv6 ND proxy dump request. More...
 
struct  vl_api_ip6nd_send_router_solicitation_t
 Start / stop sending router solicitation. More...
 
struct  vl_api_sw_interface_ip6_enable_disable_t
 IPv6 interface enable / disable request. More...
 
struct  vl_api_sw_interface_ip6_set_link_local_address_t
 IPv6 set link local address on interface request. More...
 
struct  vl_api_ip_mtable_dump_t
 Dump IP multicast fib table. More...
 
struct  vl_api_ip_mtable_details_t
 
struct  vl_api_ip_mroute_add_del_t
 
struct  vl_api_ip_mroute_add_del_reply_t
 
struct  vl_api_ip_mroute_dump_t
 Dump IP multicast fib table. More...
 
struct  vl_api_ip_mroute_details_t
 IP Multicast Route Details. More...
 
struct  vl_api_ip_address_details_t
 
struct  vl_api_ip_address_dump_t
 
struct  vl_api_ip_unnumbered_details_t
 IP unnumbered configurations. More...
 
struct  vl_api_ip_unnumbered_dump_t
 Dump IP unnumbered configurations. More...
 
struct  vl_api_ip_details_t
 
struct  vl_api_ip_dump_t
 
struct  vl_api_mfib_signal_dump_t
 
struct  vl_api_mfib_signal_details_t
 
struct  vl_api_ip_punt_police_t
 IP punt policer. More...
 
struct  vl_api_punt_redirect_t
 Punt redirect type. More...
 
struct  vl_api_ip_punt_redirect_t
 IP punt redirect. More...
 
struct  vl_api_ip_punt_redirect_dump_t
 
struct  vl_api_ip_punt_redirect_details_t
 
struct  vl_api_ip_container_proxy_add_del_t
 
struct  vl_api_ip_container_proxy_dump_t
 
struct  vl_api_ip_container_proxy_details_t
 
struct  vl_api_ip_source_and_port_range_check_add_del_t
 Configure IP source and L4 port-range check. More...
 
struct  vl_api_ip_source_and_port_range_check_interface_add_del_t
 Set interface source and L4 port-range request. More...
 
struct  vl_api_ip_source_check_interface_add_del_t
 Set interface source check request. More...
 
struct  vl_api_ip_scan_neighbor_enable_disable_t
 Enable/disable periodic IP neighbor scan. More...
 
struct  vl_api_ip_probe_neighbor_t
 IP probe neighbor address on an interface by sending an ARP request (for IP4) or ICMP6 Neighbor Solicitation (for IP6) More...
 
struct  vl_api_want_ip4_arp_events_t
 Register for IP4 ARP resolution event on receing ARP reply or MAC/IP info from ARP requests in L2 BDs. More...
 
struct  vl_api_ip4_arp_event_t
 Tell client about an IP4 ARP resolution event or MAC/IP info from ARP requests in L2 BDs. More...
 
struct  vl_api_want_ip6_nd_events_t
 Register for IP6 ND resolution event on recieving NA reply MAC/IP info from ICMP6 Neighbor Solicitation in L2 BDs. More...
 
struct  vl_api_ip6_nd_event_t
 Tell client about an IP6 ND resolution or MAC/IP info from ICMP6 Neighbor Solicitation in L2 BDs. More...
 
struct  vl_api_want_ip6_ra_events_t
 Register for ip6 router advertisement events. More...
 
struct  vl_api_ip6_ra_prefix_info_t
 Struct representing RA prefix info. More...
 
struct  vl_api_ip6_ra_event_t
 Tell client about a router advertisement event. More...
 
struct  vl_api_proxy_arp_t
 Proxy ARP configuration type. More...
 
struct  vl_api_proxy_arp_add_del_t
 Proxy ARP add / del request. More...
 
struct  vl_api_proxy_arp_dump_t
 Proxy ARP dump request. More...
 
struct  vl_api_proxy_arp_details_t
 Proxy ARP dump details reply. More...
 
struct  vl_api_proxy_arp_intfc_enable_disable_t
 Proxy ARP add / del interface request. More...
 
struct  vl_api_proxy_arp_intfc_dump_t
 Proxy ARP interface dump request. More...
 
struct  vl_api_proxy_arp_intfc_details_t
 Proxy ARP interface dump details reply. More...
 
struct  vl_api_reset_fib_t
 Reset fib table request. More...
 
struct  vl_api_set_arp_neighbor_limit_t
 Set max allowed ARP or ip6 neighbor entries request. More...
 
struct  vl_api_ioam_enable_t
 IOAM enable : Enable in-band OAM. More...
 
struct  vl_api_ioam_disable_t
 iOAM disable More...
 
struct  vl_api_ip_reassembly_set_t
 
struct  vl_api_ip_reassembly_get_t
 
struct  vl_api_ip_reassembly_get_reply_t
 
struct  vl_api_ip_reassembly_enable_disable_t
 Enable/disable reassembly feature. More...
 

Enumerations

enum  ip_neighbor_flags { IP_API_NEIGHBOR_FLAG_NONE = 0, IP_API_NEIGHBOR_FLAG_STATIC = 0x1, IP_API_NEIGHBOR_FLAG_NO_FIB_ENTRY = 0x2 }
 IP neighbor flags. More...
 

Variables

option version = "3.0.0"
 
import vnet fib fib_types api
 
typedef ip_neighbor
 IP neighbor. More...
 
vl_api_ip_neighbor_flags_t flags
 
vl_api_mac_address_t mac_address
 
vl_api_address_t ip_address
 
typedef ip_mroute
 Add / del route request. More...
 
u32 entry_flags
 
u32 rpf_id
 
vl_api_mprefix_t prefix
 
u8 n_paths
 
vl_api_mfib_path_t paths [n_paths]
 
 service
 

Detailed Description

This file defines vpp IP control-plane API messages which are generally called through a shared memory interface.

Definition in file ip.api.

Enumeration Type Documentation

IP neighbor flags.

Template Parameters
is_static- A static neighbor Entry - there are not flushed If the interface goes down.
is_no_fib_entry- Do not create a corresponding entry in the FIB table for the neighbor.
Enumerator
IP_API_NEIGHBOR_FLAG_NONE 
IP_API_NEIGHBOR_FLAG_STATIC 
IP_API_NEIGHBOR_FLAG_NO_FIB_ENTRY 

Definition at line 144 of file ip.api.

Variable Documentation

import vnet mfib mfib_types api

Definition at line 25 of file ip.api.

u32 entry_flags

Definition at line 454 of file ip.api.

vl_api_ip_neighbor_flags_t flags

Definition at line 159 of file ip.api.

vl_api_address_t ip_address

Definition at line 161 of file ip.api.

typedef ip_mroute
Initial value:
{
unsigned int u32
Definition: types.h:88
u32 table_id
Definition: fib_types.api:118

Add / del route request.

Adds a route, consisting both of the MFIB entry to match packets (which may already exist) and a path to send those packets down. Routes can be entered repeatedly to add multiple paths. Deletions are per-path.

Template Parameters
client_index- opaque cookie to identify the sender
context- sender context, to match reply w/ request
table_id- fib table /vrf associated with the route
is_add- true if adding a route; false if deleting one
is_ipv6- true iff all the addresses are v6
entry_flags- see fib_entry_flag_t
itf_flags- see mfib_entry_flags_t
next_hop_afi- see dpo_proto_t; the type of destination description
src_address- the source of the packet
grp_address- the group the packet is destined to
nh_address- the nexthop to forward the packet to
next_hop_sw_if_index- interface to emit packet on

BIER AFIs use the BIER imposition ID. v4 and v6 AFIs use either the interface or the nexthop address.

Note that if the route is source-specific (S is supplied, not all 0s), the prefix match is treated as exact (prefixlen /32 or /128).

FIXME not complete yet

Definition at line 452 of file ip.api.

typedef ip_neighbor
Initial value:
{
vl_api_interface_index_t sw_if_index
Definition: gre.api:50
unsigned int u32
Definition: types.h:88

IP neighbor.

Template Parameters
sw_if_index- interface used to reach neighbor
mac_address- l2 address of the neighbor
ip_address- ip4 or ip6 address of the neighbor
flags- flags for the nieghbor

Definition at line 157 of file ip.api.

vl_api_mac_address_t mac_address

Definition at line 160 of file ip.api.

u8 n_paths

Definition at line 457 of file ip.api.

Definition at line 458 of file ip.api.

vl_api_mprefix_t prefix

Definition at line 456 of file ip.api.

u32 rpf_id

Definition at line 455 of file ip.api.

service
Initial value:
{
rpc want_ip4_arp_events returns want_ip4_arp_events_reply
events ip4_arp_event

Definition at line 777 of file ip.api.

option version = "3.0.0"

Definition at line 23 of file ip.api.