This is a reference guide for the vpp debug commands that are referenced within these documents. This is **NOT** a complete list. For a complete list refer to the Debug CLI section of the
`Source Code Documents <https://docs.fd.io/vpp/18.07/clicmd.html>`_.
-The debug CLI can be executed from an su shell using the vppctl command.
+The debug CLI can be executed from a su (superuser) shell using the vppctl command.
.. code-block:: console
.. code-block:: console
# vppctl
- _______ _ _ _____ ___
+
__/ __/ _ \ (_)__ | | / / _ \/ _ \
_/ _// // / / / _ \ | |/ / ___/ ___/
/_/ /____(_)_/\___/ |___/_/ /_/
-
+
vpp# show interface
Name Idx State Counter Count
TenGigabitEthernet86/0/0 1 up rx packets 6569213
ip/index.rst
show/index.rst
trace/index.rst
- vhost/index.rst
+ vhost/index.rst
\ No newline at end of file
Description
------------
-Create a host interface that will attach to a linux AF_PACKET interface, one side of a veth pair. The veth pair must already exist. Once created, a new host interface will exist in VPP with the name 'host-<*ifname*>', where '<*ifname*>' is the name of the specified veth pair. Use the `show interface` command to display host interface details.
+Create a host interface that will attach to a linux AF_PACKET interface, one side of a veth pair.
+The veth pair must already exist. Once created, a new host interface will exist in VPP with the name
+'host-<*ifname*>', where '<*ifname*>' is the name of the specified veth pair.
+Use the `show interface` command to display host interface details.
This command has the following optional parameters:
Example Usage
-------------
- Example of how to create a host interface tied to one side of an existing linux veth pair named vpp1:
+Example of how to create a host interface tied to one side of an existing linux veth pair named vpp1:
.. code-block:: console
host-vpp1
- Once the host interface is created, enable the interface using:
+Once the host interface is created, enable the interface using:
.. code-block:: console
Example Usage
--------------
- The following two command syntaxes are equivalent:
+The following two command syntaxes are equivalent:
.. code-block:: console
vpp# create loopback interface [mac <*mac-addr*>] [instance <*instance*>]
- Example of how to create a loopback interface:
+Example of how to create a loopback interface:
.. code-block:: console
provide, the VLAN ID is assumed to be the *subId*. The VLAN ID and
*subId* can be different, but this is not recommended.
-This command has several variations:
+This command has several variations:
- **create sub-interfaces** <*interface*> <*subId*> - Create a subinterface
to process packets with a given 802.1q VLAN ID (same value as the
.. code-block:: console
vpp# set interface GigabitEthernet2/0/0.7 up
-
+
.. toctree::
Hardware-Interfaces Commands
-=============================
-This section contains those interface commands that are related to hardware-interfaces:
+============================
+This section contains those interface commands that are related to hardware-interfaces:
* `Show Bridge-Domain`_
+++++++++++++++++++
Summary/Usage
---------------
+-------------
show bridge-domain [*bridge-domain-id* [detail|int|arp| *bd-tag* ]]
Description
-------------
+-----------
-Show a summary of all the bridge-domain instances or detailed view of a single bridge-domain. Bridge-domains are created by adding an interface to a bridge using the **set interface l2 bridge** command.
+Show a summary of all the bridge-domain instances or detailed view of a single bridge-domain.
+Bridge-domains are created by adding an interface to a bridge using the **set interface l2 bridge** command.
Example Usage
---------------
+-------------
.. code-block:: console
Example of displaying all bridge-domains:
GigabitEthernet0/9/0.200 4 0 - none
Declaration and Implementation
--------------------------------
+------------------------------
**Declaration:** bd_show_cli (src/vnet/l2/l2_bd.c line 1151)
- **detail**: Also display all remaining attributes and extended
statistics.
-.. note::
+.. note::
To limit the output of the command to bonded interfaces and their
slave interfaces, use the '*bond*' optional parameter.
Summary/Usage
---------------
+-------------
.. code-block:: shell
show hardware-interfaces [brief|verbose|detail] [bond] [<interface> [<interface> [..]]] [<sw_idx> [<sw_idx> [..]]].
Examples
----------
+--------
Example of how to display default data for all interfaces:
.. code-block:: console
local0 0 down local0
local
-Example of how to display *verbose* data for an interface by name and software index (where 2 is the software index):
+Example of how to display *verbose* data for an interface by name and software index
+(where 2 is the software index):
.. code-block:: console
cpu socket 0
Clear Hardware-Interfaces
-+++++++++++++++++++++++++++
++++++++++++++++++++++++++
Clear the extended statistics for all or a list of given interfaces
(statistics associated with the **show hardware-interfaces** command).
.. code-block:: shell
clear hardware-interfaces [<interface> [<interface> [..]]] [<sw_idx> [<sw_idx> [..]]].
-
+
Examples
--------
vpp# clear hardware-interfaces
-Example of how to clear the extended statistics for an interface by name and software index (where 2 is the software index):
+Example of how to clear the extended statistics for an interface by name and software index
+(where 2 is the software index):
.. code-block:: console
.. toctree::
:maxdepth: 2
-
+
basic
hardware
create_interface
setinterface
+
\ No newline at end of file
-.. _interface:
-
-.. toctree::
-
-Set Interface Commands
-=======================
-This section covers those commands that are related to setting an interface:
-
-* `Set Interface`_
-* `Set Interface IP Address`_
-* `Set Interface L2 Bridge`_
-* `Set Interface Mtu`_
-* `Set Interface Promiscuous`_
-* `Set Interface State`_
-
-.. note:: For a complete list of CLI Debug commands refer to the Debug CLI section of the `Source Code Documents <https://docs.fd.io/vpp/18.07/clicmd.html>`_ .
-
-Set Interface
-++++++++++++++++
-
-Summary/Usage
--------------
-
-Interface commands.
-
-Declaration and Implementation
--------------------------------
-
-**Declaration:** vnet_cli_set_interface_command (src/vnet/interface_cli.c line 484)
-
-Set Interface IP Address
-+++++++++++++++++++++++++
-
-Summary/Usage
--------------
-
-set interface ip address [del] <*interface*> <*ip-addr*>/<*mask*> | [all]
-
-Description
--------------
-
-Add an IP Address to an interface or remove and IP Address from an interface. The IP Address can be an IPv4 or an IPv6 address. Interfaces may have multiple IPv4 and IPv6 addresses. There is no concept of primary vs. secondary interface addresses; they're just addresses.
-
-To display the addresses associated with a given interface, use the command **show interface address** <*interface*>.
-
-.. note::
- The debug CLI does not enforce classful mask-width / addressing constraints.
-
-Example Usage
---------------
-
-An example of how to add an IPv4 address to an interface:
-
-.. code-block:: console
-
- vpp# set interface ip address GigabitEthernet2/0/0 172.16.2.12/24
-
-An example of how to add an IPv6 address to an interface:
-
-.. code-block:: console
-
- vpp# set interface ip address GigabitEthernet2/0/0 ::a:1:1:0:7/126
-
-To delete a specific interface ip address:
-
-.. code-block:: console
-
- vpp# set interface ip address GigabitEthernet2/0/0 172.16.2.12/24 del
-
-To delete all interfaces addresses (IPv4 and IPv6):
-
-.. code-block:: console
-
- vpp# set interface ip address GigabitEthernet2/0/0 del all
-
-Declaration and Implementation
--------------------------------
-
-**Declaration:** set_interface_ip_address_command (src/vnet/ip/ip46_cli.c line 216)
-
-**Implementation:** add_del_ip_address
-
-
-Set Interface L2 Bridge
-+++++++++++++++++++++++++
-
-Summary/Usage
--------------
-
-set interface l2 bridge <*interface*> <*bridge-domain-id*> [bvi|uu-fwd] [shg]
-
-Description
--------------
-
-Use this command put an interface into Layer 2 bridge domain. If a bridge-domain with the provided bridge-domain-id does not exist, it will be created. Interfaces in a bridge-domain forward packets to other interfaces in the same bridge-domain based on destination mac address. To remove an interface from a the Layer 2 bridge domain, put the interface in a different mode, for example Layer 3 mode.
-
-Optionally, an interface can be added to a Layer 2 bridge-domain as a Bridged Virtual Interface (bvi). Only one interface in a Layer 2 bridge-domain can be a bvi.
-
-Optionally, a split-horizon group can also be specified. This defaults to 0 if not specified.
-
-Example Usage
---------------
-Example of how to configure a Layer 2 bridge-domain with three interfaces (where 200 is the bridge-domain-id):
-
-.. code-block:: console
-
- vpp# set interface l2 bridge GigabitEthernet0/8/0.200 200
-
-This interface is added a BVI interface:
-
-.. code-block:: console
-
- vpp# set interface l2 bridge GigabitEthernet0/9/0.200 200 bvi
-
-This interface also has a split-horizon group of 1 specified:
-
-.. code-block:: console
-
- vpp# set interface l2 bridge GigabitEthernet0/a/0.200 200 1
-
-Example of how to remove an interface from a Layer2 bridge-domain:
-
-.. code-block:: console
-
- vpp# set interface l3 GigabitEthernet0/a/0.200
-
-Declaration and Implementation
--------------------------------
-
-**Declaration:** int_l2_bridge_cli (src/vnet/l2/l2_input.c line 949)
-
-**Implementation:** int_l2_bridge
-
-Set Interface Mtu
-++++++++++++++++++
-
-Summary/Usage
--------------
-
-.. code-block:: shell
-
- set interface mtu [packet|ip4|ip6|mpls] <value> <interface>
-
-Set Interface Promiscuous
-++++++++++++++++++++++++++
-
-Summary/Usage
--------------
-
-.. code-block:: shell
-
- set interface promiscuous [on|off] <interface>.
-
-.. _setintstate:
-
-Set Interface State
-++++++++++++++++++++
-This command is used to change the admin state (up/down) of an
-interface.
-
-If an interface is down, the optional *punt* flag can also be set. The
-*punt* flag implies the interface is disabled for forwarding but punt
-all traffic to slow-path. Use the *enable* flag to clear *punt* flag
-(interface is still down).
-
-Summary/Usage
--------------
-
-.. code-block:: shell
-
- set interface state <interface> [up|down|punt|enable].
-
-Example Usage
-----------------
-
-Example of how to configure the admin state of an interface to **up**:
-
-.. code-block:: console
-
- vpp# set interface state GigabitEthernet2/0/0 up
-
-Example of how to configure the admin state of an interface to **down**:
-
-.. code-block:: console
-
- vpp# set interface state GigabitEthernet2/0/0 down
-
+.. _interface:\r
+\r
+.. toctree::\r
+\r
+Set Interface Commands\r
+=======================\r
+This section covers those commands that are related to setting an interface:\r
+\r
+* `Set Interface`_\r
+* `Set Interface IP Address`_\r
+* `Set Interface L2 Bridge`_\r
+* `Set Interface MTU`_\r
+* `Set Interface Promiscuous`_\r
+* `Set Interface State`_\r
+\r
+.. note:: For a complete list of CLI Debug commands refer to the Debug CLI section of the `Source Code Documents <https://docs.fd.io/vpp/18.07/clicmd.html>`_ .\r
+\r
+Set Interface\r
+++++++++++++++++\r
+\r
+Summary/Usage\r
+-------------\r
+\r
+Interface commands.\r
+\r
+Declaration and Implementation\r
+-------------------------------\r
+\r
+**Declaration:** vnet_cli_set_interface_command (src/vnet/interface_cli.c line 484)\r
+\r
+Set Interface IP Address\r
++++++++++++++++++++++++++\r
+\r
+Summary/Usage\r
+-------------\r
+\r
+set interface ip address [del] <*interface*> <*ip-addr*>/<*mask*> | [all]\r
+\r
+Description\r
+-------------\r
+\r
+Add an IP Address to an interface or remove and IP Address from an interface. \r
+The IP Address can be an IPv4 or an IPv6 address. Interfaces may have multiple IPv4 and IPv6\r
+addresses. There is no concept of primary vs. secondary interface addresses; they're just addresses.\r
+\r
+To display the addresses associated with a given interface, use the command **show interface address** <*interface*>.\r
+\r
+.. note:: \r
+ The debug CLI does not enforce classful mask-width / addressing constraints.\r
+\r
+Example Usage\r
+--------------\r
+\r
+An example of how to add an IPv4 address to an interface:\r
+\r
+.. code-block:: console\r
+\r
+ vpp# set interface ip address GigabitEthernet2/0/0 172.16.2.12/24\r
+\r
+An example of how to add an IPv6 address to an interface:\r
+\r
+.. code-block:: console\r
+\r
+ vpp# set interface ip address GigabitEthernet2/0/0 ::a:1:1:0:7/126\r
+\r
+To delete a specific interface ip address:\r
+\r
+.. code-block:: console\r
+\r
+ vpp# set interface ip address GigabitEthernet2/0/0 172.16.2.12/24 del\r
+\r
+To delete all interfaces addresses (IPv4 and IPv6):\r
+\r
+.. code-block:: console\r
+\r
+ vpp# set interface ip address GigabitEthernet2/0/0 del all\r
+\r
+Declaration and Implementation\r
+-------------------------------\r
+\r
+**Declaration:** set_interface_ip_address_command (src/vnet/ip/ip46_cli.c line 216)\r
+\r
+**Implementation:** add_del_ip_address\r
+\r
+\r
+Set Interface L2 Bridge \r
++++++++++++++++++++++++++\r
+\r
+Summary/Usage\r
+-------------\r
+\r
+set interface l2 bridge <*interface*> <*bridge-domain-id*> [bvi|uu-fwd] [shg]\r
+\r
+Description\r
+-------------\r
+\r
+Use this command put an interface into Layer 2 bridge domain. If a bridge-domain with the provided\r
+bridge-domain-id does not exist, it will be created. Interfaces in a bridge-domain forward packets\r
+to other interfaces in the same bridge-domain based on destination mac address. To remove an interface\r
+from a the Layer 2 bridge domain, put the interface in a different mode, for example Layer 3 mode.\r
+\r
+Optionally, an interface can be added to a Layer 2 bridge-domain as a Bridged Virtual Interface (bvi).\r
+Only one interface in a Layer 2 bridge-domain can be a bvi.\r
+\r
+Optionally, a split-horizon group can also be specified. This defaults to 0 if not specified.\r
+\r
+Example Usage\r
+--------------\r
+Example of how to configure a Layer 2 bridge-domain with three interfaces (where 200 is the bridge-domain-id):\r
+\r
+.. code-block:: console\r
+\r
+ vpp# set interface l2 bridge GigabitEthernet0/8/0.200 200\r
+\r
+This interface is added a BVI interface:\r
+\r
+.. code-block:: console\r
+\r
+ vpp# set interface l2 bridge GigabitEthernet0/9/0.200 200 bvi\r
+\r
+This interface also has a split-horizon group of 1 specified:\r
+\r
+.. code-block:: console\r
+\r
+ vpp# set interface l2 bridge GigabitEthernet0/a/0.200 200 1\r
+\r
+Example of how to remove an interface from a Layer2 bridge-domain:\r
+\r
+.. code-block:: console\r
+\r
+ vpp# set interface l3 GigabitEthernet0/a/0.200\r
+\r
+Declaration and Implementation\r
+-------------------------------\r
+\r
+**Declaration:** int_l2_bridge_cli (src/vnet/l2/l2_input.c line 949)\r
+\r
+**Implementation:** int_l2_bridge\r
+\r
+Set Interface MTU\r
+++++++++++++++++++\r
+\r
+Summary/Usage\r
+-------------\r
+\r
+.. code-block:: shell\r
+\r
+ set interface mtu [packet|ip4|ip6|mpls] <value> <interface>\r
+\r
+Set Interface Promiscuous\r
+++++++++++++++++++++++++++\r
+\r
+Summary/Usage\r
+-------------\r
+\r
+.. code-block:: shell\r
+\r
+ set interface promiscuous [on|off] <interface>.\r
+\r
+.. _setintstate:\r
+\r
+Set Interface State\r
+++++++++++++++++++++\r
+This command is used to change the admin state (up/down) of an\r
+interface.\r
+\r
+If an interface is down, the optional *punt* flag can also be set. The\r
+*punt* flag implies the interface is disabled for forwarding but punt\r
+all traffic to slow-path. Use the *enable* flag to clear *punt* flag\r
+(interface is still down).\r
+\r
+Summary/Usage\r
+-------------\r
+\r
+.. code-block:: shell\r
+\r
+ set interface state <interface> [up|down|punt|enable].\r
+\r
+Example Usage\r
+----------------\r
+\r
+Example of how to configure the admin state of an interface to **up**:\r
+\r
+.. code-block:: console\r
+\r
+ vpp# set interface state GigabitEthernet2/0/0 up\r
+\r
+Example of how to configure the admin state of an interface to **down**:\r
+\r
+.. code-block:: console\r
+\r
+ vpp# set interface state GigabitEthernet2/0/0 down\r
+\r
-.. ip:
-
-.. note:: For a complete list of CLI Debug commands refer to the Debug CLI section of the `Source Code Documents <https://docs.fd.io/vpp/18.07/clicmd.html>`_ .
-
-IP Commands
-============
-This section identifies the following types of IP commands:
-
-.. toctree::
- :maxdepth: 2
-
+.. ip:\r
+\r
+.. note:: For a complete list of CLI Debug commands refer to the Debug CLI section of the `Source Code Documents <https://docs.fd.io/vpp/18.07/clicmd.html>`_ .\r
+\r
+IP Commands\r
+============\r
+This section identifies the following types of IP commands:\r
+\r
+.. toctree::\r
+ :maxdepth: 2\r
+ \r
ip
\ No newline at end of file
-.. _ip1:
-
-.. toctree::
-
-.. note:: For a complete list of CLI Debug commands refer to the Debug CLI section of the `Source Code Documents <https://docs.fd.io/vpp/18.07/clicmd.html>`_ .
-
-IP Route
-==========
-
-Summary/Usage
---------------
-
-`ip route [add|del] [count <*n*>] <*dst-ip-addr*>/<*width*> [table <*table-id*>] via [next-hop-address] [next-hop-interface] [next-hop-table <*value*>] [weight <*value*>] [preference <*value*>] [udp-encap-id <*value*>] [ip4-lookup-in-table <*value*>] [ip6-lookup-in-table <*value*>] [mpls-lookup-in-table <*value*>] [resolve-via-host] [resolve-via-connected] [rx-ip4 <*interface*>] [out-labels <*value value value*>]`
-
-Description
-------------
-
-This command is used to add or delete IPv4 or IPv6 routes. All IP Addresses ('<*dst-ip-addr*>/<*width*>', '<*next-hop-ip-addr*>' and '<*adj-hop-ip-addr*>') can be IPv4 or IPv6, but all must be of the same form in a single command. To display the current set of routes, use the commands 'show ip fib' and 'show ip6 fib'.
-
-Example Usage
---------------
-
-Example of how to add a straight forward static route:
-
-.. code-block:: console
-
- vpp# ip route add 6.0.1.2/32 via 6.0.0.1 GigabitEthernet2/0/0
-
-Example of how to delete a straight forward static route:
-
-.. code-block:: console
-
- vpp# ip route del 6.0.1.2/32 via 6.0.0.1 GigabitEthernet2/0/0
-
-Mainly for route add/del performance testing, one can add or delete multiple routes by adding 'count N' to the previous item:
-
-.. code-block:: console
-
- vpp# ip route add count 10 7.0.0.0/24 via 6.0.0.1 GigabitEthernet2/0/0
-
-Add multiple routes for the same destination to create equal-cost multipath:
-
-.. code-block:: console
-
- vpp# ip route add 7.0.0.1/32 via 6.0.0.1 GigabitEthernet2/0/0
-
- vpp# ip route add 7.0.0.1/32 via 6.0.0.2 GigabitEthernet2/0/0
-
-For unequal-cost multipath, specify the desired weights. This combination of weights results in 3/4 of the traffic following the second path, 1/4 following the first path:
-
-.. code-block:: console
-
- vpp# ip route add 7.0.0.1/32 via 6.0.0.1 GigabitEthernet2/0/0 weight 1
-
- vpp# ip route add 7.0.0.1/32 via 6.0.0.2 GigabitEthernet2/0/0 weight 3
-
-To add a route to a particular FIB table (VRF), use:
-
-.. code-block:: console
-
- vpp# ip route add 172.16.24.0/24 table 7 via GigabitEthernet2/0/0
-
-Declaration and Implementation
----------------------------------
-
-**Declaration:** ip_route_command (src/vnet/ip/lookup.c line 641)
-
-**Implementation:** vnet_ip_route_cmd
-
-Ping
-=====
-
-Summary/Usage
---------------
-
-ping {<*ip-addr*> | ipv4 <*ip4-addr*> | ipv6 <*ip6-addr*>} [ipv4 <*ip4-addr*> | ipv6 <*ip6-addr*>] [source <*interface*>] [size <*pktsize*>] [interval <*sec*>] [repeat <*cnt*>] [table-id <*id*>] [verbose]
-
-Description
-------------
-
-This command sends an ICMP ECHO_REQUEST to network hosts. The address can be an IPv4 or IPv6 address (or both at the same time).
-
-Example Usage
---------------
-
-Example of how ping an IPv4 address:
-
-.. code-block:: console
-
- vpp# ping 172.16.1.2 source GigabitEthernet2/0/0 repeat 2
-
- 64 bytes from 172.16.1.2: icmp_seq=1 ttl=64 time=.1090 ms
- 64 bytes from 172.16.1.2: icmp_seq=2 ttl=64 time=.0914 ms
-
- Statistics: 2 sent, 2 received, 0% packet loss
-
- Example of how ping both an IPv4 address and IPv6 address at the same time:
-
- vpp# ping 172.16.1.2 ipv6 fe80::24a5:f6ff:fe9c:3a36 source GigabitEthernet2/0/0 repeat 2 verbose
-
- Adjacency index: 10, sw_if_index: 1
- Adj: ip6-discover-neighbor
- Adj Interface: 0
- Forced set interface: 1
- Adjacency index: 0, sw_if_index: 4294967295
- Adj: ip4-miss
- Adj Interface: 0
- Forced set interface: 1
- Source address: 172.16.1.1
- 64 bytes from 172.16.1.2: icmp_seq=1 ttl=64 time=.1899 ms
- Adjacency index: 10, sw_if_index: 1
- Adj: ip6-discover-neighbor
- Adj Interface: 0
- Forced set interface: 1
- Adjacency index: 0, sw_if_index: 4294967295
- Adj: ip4-miss
- Adj Interface: 0
- Forced set interface: 1
- Source address: 172.16.1.1
- 64 bytes from 172.16.1.2: icmp_seq=2 ttl=64 time=.0910 ms
-
- Statistics: 4 sent, 2 received, 50% packet loss
-
-Declaration and Implementation
--------------------------------
-
-Declaration: ping_command (src/vnet/ip/ping.c line 899)
-
-Implementation: ping_ip_address
-
-Set Interface IP Address
-=========================
-
-`Set Interface IP Address <../interface/setinterface.html#set-interface-ip-address>`_
-
-Show IP Arp
-=============
-
-`Show IP-Arp <../show/show.html#show-ip-arp>`_
-
-
-Show IP Fib
-============
-
-`Show IP-Fib <../show/show.html#show-ip-fib>`_
+.. _ip1:\r
+\r
+.. toctree::\r
+\r
+.. note:: For a complete list of CLI Debug commands refer to the Debug CLI section of the `Source Code Documents <https://docs.fd.io/vpp/18.07/clicmd.html>`_ .\r
+\r
+IP Route\r
+==========\r
+\r
+Summary/Usage\r
+--------------\r
+\r
+`ip route [add|del] [count <*n*>] <*dst-ip-addr*>/<*width*> [table <*table-id*>] via [next-hop-address[next-hop-interface] [next-hop-table <*value*>] [weight <*value*>] [preference <*value*>] [udp-encap-id <*value*>] [ip4-lookup-in-table <*value*>] [ip6-lookup-in-table <*value*>] [mpls-lookup-in-table <*value*>] [resolve-via-host] [resolve-via-connected] [rx-ip4 <*interface*>] [out-labels <*value value value*>]`\r
+\r
+Description\r
+------------\r
+\r
+This command is used to add or delete IPv4 or IPv6 routes. All IP Addresses\r
+('<*dst-ip-addr*>/<*width*>', '<*next-hop-ip-addr*>' and '<*adj-hop-ip-addr*>') can be IPv4 or IPv6,\r
+but all must be of the same form in a single command. To display the current set of routes,\r
+use the commands 'show ip fib' and 'show ip6 fib'.\r
+\r
+Example Usage\r
+--------------\r
+\r
+Example of how to add a straight forward static route:\r
+\r
+.. code-block:: console\r
+\r
+ vpp# ip route add 6.0.1.2/32 via 6.0.0.1 GigabitEthernet2/0/0\r
+\r
+Example of how to delete a straight forward static route:\r
+\r
+.. code-block:: console\r
+\r
+ vpp# ip route del 6.0.1.2/32 via 6.0.0.1 GigabitEthernet2/0/0\r
+\r
+Mainly for route add/del performance testing, one can add or delete multiple routes by adding\r
+'count N' to the previous item:\r
+\r
+.. code-block:: console\r
+\r
+ vpp# ip route add count 10 7.0.0.0/24 via 6.0.0.1 GigabitEthernet2/0/0\r
+\r
+Add multiple routes for the same destination to create equal-cost multipath:\r
+\r
+.. code-block:: console\r
+\r
+ vpp# ip route add 7.0.0.1/32 via 6.0.0.1 GigabitEthernet2/0/0\r
+\r
+ vpp# ip route add 7.0.0.1/32 via 6.0.0.2 GigabitEthernet2/0/0\r
+\r
+For unequal-cost multipath, specify the desired weights. This combination of weights\r
+results in 3/4 of the traffic following the second path, 1/4 following the first path:\r
+\r
+.. code-block:: console\r
+\r
+ vpp# ip route add 7.0.0.1/32 via 6.0.0.1 GigabitEthernet2/0/0 weight 1\r
+\r
+ vpp# ip route add 7.0.0.1/32 via 6.0.0.2 GigabitEthernet2/0/0 weight 3\r
+\r
+To add a route to a particular FIB table (VRF), use:\r
+\r
+.. code-block:: console\r
+\r
+ vpp# ip route add 172.16.24.0/24 table 7 via GigabitEthernet2/0/0\r
+\r
+Declaration and Implementation\r
+---------------------------------\r
+\r
+**Declaration:** ip_route_command (src/vnet/ip/lookup.c line 641)\r
+\r
+**Implementation:** vnet_ip_route_cmd\r
+\r
+Ping\r
+=====\r
+\r
+Summary/Usage\r
+--------------\r
+\r
+ping {<*ip-addr*> | ipv4 <*ip4-addr*> | ipv6 <*ip6-addr*>} [ipv4 <*ip4-addr*> | ipv6 <*ip6-addr*>] [source <*interface*>] [size <*pktsize*>] [interval <*sec*>] [repeat <*cnt*>] [table-id <*id*>] [verbose]\r
+\r
+Description\r
+------------\r
+\r
+This command sends an ICMP ECHO_REQUEST to network hosts. The address can be an IPv4 or IPv6\r
+address (or both at the same time).\r
+\r
+Example Usage\r
+--------------\r
+\r
+Example of how ping an IPv4 address:\r
+\r
+.. code-block:: console\r
+\r
+ vpp# ping 172.16.1.2 source GigabitEthernet2/0/0 repeat 2\r
+\r
+ 64 bytes from 172.16.1.2: icmp_seq=1 ttl=64 time=.1090 ms\r
+ 64 bytes from 172.16.1.2: icmp_seq=2 ttl=64 time=.0914 ms\r
+\r
+ Statistics: 2 sent, 2 received, 0% packet loss\r
+\r
+ Example of how ping both an IPv4 address and IPv6 address at the same time:\r
+\r
+ vpp# ping 172.16.1.2 ipv6 fe80::24a5:f6ff:fe9c:3a36 source GigabitEthernet2/0/0 repeat 2 verbose\r
+\r
+ Adjacency index: 10, sw_if_index: 1\r
+ Adj: ip6-discover-neighbor\r
+ Adj Interface: 0\r
+ Forced set interface: 1\r
+ Adjacency index: 0, sw_if_index: 4294967295\r
+ Adj: ip4-miss\r
+ Adj Interface: 0\r
+ Forced set interface: 1\r
+ Source address: 172.16.1.1\r
+ 64 bytes from 172.16.1.2: icmp_seq=1 ttl=64 time=.1899 ms\r
+ Adjacency index: 10, sw_if_index: 1\r
+ Adj: ip6-discover-neighbor\r
+ Adj Interface: 0\r
+ Forced set interface: 1\r
+ Adjacency index: 0, sw_if_index: 4294967295\r
+ Adj: ip4-miss\r
+ Adj Interface: 0\r
+ Forced set interface: 1\r
+ Source address: 172.16.1.1\r
+ 64 bytes from 172.16.1.2: icmp_seq=2 ttl=64 time=.0910 ms\r
+\r
+ Statistics: 4 sent, 2 received, 50% packet loss\r
+\r
+Declaration and Implementation\r
+-------------------------------\r
+\r
+Declaration: ping_command (src/vnet/ip/ping.c line 899)\r
+\r
+Implementation: ping_ip_address\r
+\r
+Set Interface IP Address\r
+=========================\r
+\r
+`Set Interface IP Address <../interface/setinterface.html#set-interface-ip-address>`_\r
+\r
+Show IP Arp\r
+=============\r
+\r
+`Show IP-Arp <../show/show.html#show-ip-arp>`_\r
+\r
+\r
+Show IP Fib\r
+============\r
+\r
+`Show IP-Fib <../show/show.html#show-ip-fib>`_\r
-.. _interface:
-
-.. note:: For a complete list of CLI Debug commands refer to the Debug CLI section of the `Source Code Documents <https://docs.fd.io/vpp/18.07/clicmd.html>`_ .
-
-Show Commands
-==================
-This section identifies the following types of show commands:
-
-.. toctree::
- :maxdepth: 2
-
+.. _interface:\r
+\r
+.. note:: For a complete list of CLI Debug commands refer to the Debug CLI section of the `Source Code Documents <https://docs.fd.io/vpp/18.07/clicmd.html>`_ .\r
+\r
+Show Commands\r
+==================\r
+This section identifies the following types of show commands:\r
+\r
+.. toctree::\r
+ :maxdepth: 2\r
+ \r
show
\ No newline at end of file
-.. _interface:
-
-.. toctree::
-
-.. note:: For a complete list of CLI Debug commands refer to the Debug CLI section of the `Source Code Documents <https://docs.fd.io/vpp/18.07/clicmd.html>`_ .
-
-Show Bridge-Domain
-===================
-
-`Show Bridge-Domain <../interface/hardware.html#show-bridge-domain>`_
-
-Show Interface
-================
-
-`Show Interface <../interface/basic.html#show-interface>`_
-
-Show IP Arp
-============
-
-Summary/Usage
----------------
-
-show ip arp
-
-Description
-------------
-
-Display all the IPv4 ARP entries.
-
-Example Usage
---------------
-Example of how to display the IPv4 ARP table:
-
-.. code-block:: console
-
- vpp# **show ip arp**
- Time FIB IP4 Flags Ethernet Interface
- 346.3028 0 6.1.1.3 de:ad:be:ef:ba:be GigabitEthernet2/0/0
- 3077.4271 0 6.1.1.4 S de:ad:be:ef:ff:ff GigabitEthernet2/0/0
- 2998.6409 1 6.2.2.3 de:ad:be:ef:00:01 GigabitEthernet2/0/0
- Proxy arps enabled for:
- Fib_index 0 6.0.0.1 - 6.0.0.11
-
-
-Declaration and Implementation
--------------------------------
-
-**Declaration:** show_ip4_arp_command (src/vnet/ethernet/arp.c line 1465)
-
-**Implementation:** show_ip4_arp
-
-Show IP Fib
-=============
-
-Summary/Usage
----------------
-
-show ip fib [summary] [table <*table-id*>] [index <*fib-id*>] [<*ip4-addr*>[/<*mask*>]] [mtrie] [detail]
-
-Description
-------------
-
-This command displays the IPv4 FIB Tables (VRF Tables) and the route entries for each table.
-
-.. note::
- This command will run for a long time when the FIB tables are comprised of millions of entries. For those senarios, consider displaying a single table or summary mode.
-
-Example Usage
---------------
-Example of how to display all the IPv4 FIB tables:
-
-.. code-block:: console
-
- vpp# **show ip fib**
-
- ipv4-VRF:0, fib_index 0, flow hash: src dst sport dport proto
- 0.0.0.0/0
- unicast-ip4-chain
- [@0]: dpo-load-balance: [index:0 buckets:1 uRPF:0 to:[0:0]]
- [0] [@0]: dpo-drop ip6
- 0.0.0.0/32
- unicast-ip4-chain
- [@0]: dpo-load-balance: [index:1 buckets:1 uRPF:1 to:[0:0]]
- [0] [@0]: dpo-drop ip6
- 6.0.1.2/32
- unicast-ip4-chain
- [@0]: dpo-load-balance: [index:30 buckets:1 uRPF:29 to:[0:0]]
- [0] [@3]: arp-ipv4: via 6.0.0.1 af_packet0
- 7.0.0.1/32
- unicast-ip4-chain
- [@0]: dpo-load-balance: [index:31 buckets:4 uRPF:30 to:[0:0]]
- [0] [@3]: arp-ipv4: via 6.0.0.2 af_packet0
- [1] [@3]: arp-ipv4: via 6.0.0.2 af_packet0
- [2] [@3]: arp-ipv4: via 6.0.0.2 af_packet0
- [3] [@3]: arp-ipv4: via 6.0.0.1 af_packet0
- 224.0.0.0/8
- unicast-ip4-chain
- [@0]: dpo-load-balance: [index:3 buckets:1 uRPF:3 to:[0:0]]
- [0] [@0]: dpo-drop ip6
- 240.0.0.0/8
- unicast-ip4-chain
- [@0]: dpo-load-balance: [index:2 buckets:1 uRPF:2 to:[0:0]]
- [0] [@0]: dpo-drop ip6
- 255.255.255.255/32
- unicast-ip4-chain
- [@0]: dpo-load-balance: [index:4 buckets:1 uRPF:4 to:[0:0]]
- [0] [@0]: dpo-drop ip6
- ipv4-VRF:7, fib_index 1, flow hash: src dst sport dport proto
- 0.0.0.0/0
- unicast-ip4-chain
- [@0]: dpo-load-balance: [index:12 buckets:1 uRPF:11 to:[0:0]]
- [0] [@0]: dpo-drop ip6
- 0.0.0.0/32
- unicast-ip4-chain
- [@0]: dpo-load-balance: [index:13 buckets:1 uRPF:12 to:[0:0]]
- [0] [@0]: dpo-drop ip6
- 172.16.1.0/24
- unicast-ip4-chain
- [@0]: dpo-load-balance: [index:17 buckets:1 uRPF:16 to:[0:0]]
- [0] [@4]: ipv4-glean: af_packet0
- 172.16.1.1/32
- unicast-ip4-chain
- [@0]: dpo-load-balance: [index:18 buckets:1 uRPF:17 to:[1:84]]
- [0] [@2]: dpo-receive: 172.16.1.1 on af_packet0
- 172.16.1.2/32
- unicast-ip4-chain
- [@0]: dpo-load-balance: [index:21 buckets:1 uRPF:20 to:[0:0]]
- [0] [@5]: ipv4 via 172.16.1.2 af_packet0: IP4: 02:fe:9e:70:7a:2b -> 26:a5:f6:9c:3a:36
- 172.16.2.0/24
- unicast-ip4-chain
- [@0]: dpo-load-balance: [index:19 buckets:1 uRPF:18 to:[0:0]]
- [0] [@4]: ipv4-glean: af_packet1
- 172.16.2.1/32
- unicast-ip4-chain
- [@0]: dpo-load-balance: [index:20 buckets:1 uRPF:19 to:[0:0]]
- [0] [@2]: dpo-receive: 172.16.2.1 on af_packet1
- 224.0.0.0/8
- unicast-ip4-chain
- [@0]: dpo-load-balance: [index:15 buckets:1 uRPF:14 to:[0:0]]
- [0] [@0]: dpo-drop ip6
- 240.0.0.0/8
- unicast-ip4-chain
- [@0]: dpo-load-balance: [index:14 buckets:1 uRPF:13 to:[0:0]]
- [0] [@0]: dpo-drop ip6
- 255.255.255.255/32
- unicast-ip4-chain
- [@0]: dpo-load-balance: [index:16 buckets:1 uRPF:15 to:[0:0]]
- [0] [@0]: dpo-drop ip6
-
-Example of how to display a single IPv4 FIB table:
-
-.. code-block:: console
-
- vpp# **show ip fib table 7**
-
- ipv4-VRF:7, fib_index 1, flow hash: src dst sport dport proto
- 0.0.0.0/0
- unicast-ip4-chain
- [@0]: dpo-load-balance: [index:12 buckets:1 uRPF:11 to:[0:0]]
- [0] [@0]: dpo-drop ip6
- 0.0.0.0/32
- unicast-ip4-chain
- [@0]: dpo-load-balance: [index:13 buckets:1 uRPF:12 to:[0:0]]
- [0] [@0]: dpo-drop ip6
- 172.16.1.0/24
- unicast-ip4-chain
- [@0]: dpo-load-balance: [index:17 buckets:1 uRPF:16 to:[0:0]]
- [0] [@4]: ipv4-glean: af_packet0
- 172.16.1.1/32
- unicast-ip4-chain
- [@0]: dpo-load-balance: [index:18 buckets:1 uRPF:17 to:[1:84]]
- [0] [@2]: dpo-receive: 172.16.1.1 on af_packet0
- 172.16.1.2/32
- unicast-ip4-chain
- [@0]: dpo-load-balance: [index:21 buckets:1 uRPF:20 to:[0:0]]
- [0] [@5]: ipv4 via 172.16.1.2 af_packet0: IP4: 02:fe:9e:70:7a:2b -*> 26:a5:f6:9c:3a:36
- 172.16.2.0/24
- unicast-ip4-chain
- [@0]: dpo-load-balance: [index:19 buckets:1 uRPF:18 to:[0:0]]
- [0] [@4]: ipv4-glean: af_packet1
- 172.16.2.1/32
- unicast-ip4-chain
- [@0]: dpo-load-balance: [index:20 buckets:1 uRPF:19 to:[0:0]]
- [0] [@2]: dpo-receive: 172.16.2.1 on af_packet1
- 224.0.0.0/8
- unicast-ip4-chain
- [@0]: dpo-load-balance: [index:15 buckets:1 uRPF:14 to:[0:0]]
- [0] [@0]: dpo-drop ip6
- 240.0.0.0/8
- unicast-ip4-chain
- [@0]: dpo-load-balance: [index:14 buckets:1 uRPF:13 to:[0:0]]
- [0] [@0]: dpo-drop ip6
- 255.255.255.255/32
- unicast-ip4-chain
- [@0]: dpo-load-balance: [index:16 buckets:1 uRPF:15 to:[0:0]]
- [0] [@0]: dpo-drop ip6
-
-Example of how to display a summary of all IPv4 FIB tables:
-
-.. code-block:: console
-
- vpp# **show ip fib summary**
-
- ipv4-VRF:0, fib_index 0, flow hash: src dst sport dport proto
- Prefix length Count
- 0 1
- 8 2
- 32 4
- ipv4-VRF:7, fib_index 1, flow hash: src dst sport dport proto
- Prefix length Count
- 0 1
- 8 2
- 24 2
- 32 4
-
-Declaration and Implementation
--------------------------------
-
-**Declaration:** ip4_show_fib_command (src/vnet/fib/ip4_fib.c line 873)
-
-**Implementation:** ip4_show_fib
-
-Show L2fib
-============
-
-Summary/Usage
-------------------
-
-show l2fib [all] | [bd_id <*nn*> | bd_index <*nn*>] [learn | add] | [raw]
-
-Description
-------------
-
-This command displays the MAC Address entries of the L2 FIB table. Output can be filtered to just get the number of MAC Addresses or display each MAC Address for all bridge domains or just a single bridge domain.
-
-Example Usage
---------------
-Example of how to display the number of MAC Address entries in the L2 FIB table:
-
-
-.. code-block:: console
-
- vpp# **show l2fib**
-
- 3 l2fib entries
-
- Example of how to display all the MAC Address entries in the L2 FIB table:
-
- vpp# **show l2fib all**
-
- Mac Address BD Idx Interface Index static filter bvi refresh timestamp
- 52:54:00:53:18:33 1 GigabitEthernet0/8/0.200 3 0 0 0 0 0
- 52:54:00:53:18:55 1 GigabitEthernet0/8/0.200 3 1 0 0 0 0
- 52:54:00:53:18:77 1 N/A -1 1 1 0 0 0
- 3 l2fib entries
-
-Declaration and Implementation
--------------------------------
-
-**Declaration:** show_l2fib_cli (src/vnet/l2/l2_fib.c line 311)
-
-**Implementation:** show_l2fib
-
-Show Trace
-===========
-
-Summary/Usage
---------------
-
-show trace buffer [max COUNT]
-
-Declaration and Implementation
-------------------------------
-
-**Declaration:** show_trace_cli (src/vlib/trace.c line 347)
-
-**Implementation:** cli_show_trace_buffer
-
-Show Vhost-User
-================
-
-`Show Vhost-User <../vhost/vhostuser.html#show-vhost-user>`_
-
+.. _interface:\r
+\r
+.. toctree::\r
+\r
+.. note:: For a complete list of CLI Debug commands refer to the Debug CLI section of the `Source Code Documents <https://docs.fd.io/vpp/18.07/clicmd.html>`_ .\r
+\r
+Show Bridge-Domain\r
+===================\r
+\r
+`Show Bridge-Domain <../interface/hardware.html#show-bridge-domain>`_\r
+\r
+Show Interface\r
+================\r
+\r
+`Show Interface <../interface/basic.html#show-interface>`_\r
+\r
+Show IP Arp\r
+============\r
+\r
+Summary/Usage\r
+---------------\r
+\r
+show ip arp\r
+\r
+Description\r
+------------\r
+\r
+Display all the IPv4 ARP entries.\r
+\r
+Example Usage\r
+--------------\r
+Example of how to display the IPv4 ARP table:\r
+\r
+.. code-block:: console\r
+\r
+ vpp# **show ip arp**\r
+ Time FIB IP4 Flags Ethernet Interface\r
+ 346.3028 0 6.1.1.3 de:ad:be:ef:ba:be GigabitEthernet2/0/0\r
+ 3077.4271 0 6.1.1.4 S de:ad:be:ef:ff:ff GigabitEthernet2/0/0\r
+ 2998.6409 1 6.2.2.3 de:ad:be:ef:00:01 GigabitEthernet2/0/0\r
+ Proxy arps enabled for:\r
+ Fib_index 0 6.0.0.1 - 6.0.0.11\r
+\r
+ \r
+Declaration and Implementation\r
+-------------------------------\r
+\r
+**Declaration:** show_ip4_arp_command (src/vnet/ethernet/arp.c line 1465)\r
+\r
+**Implementation:** show_ip4_arp\r
+\r
+Show IP Fib\r
+=============\r
+\r
+Summary/Usage\r
+---------------\r
+\r
+show ip fib [summary] [table <*table-id*>] [index <*fib-id*>] [<*ip4-addr*>[/<*mask*>]] [mtrie] [detail]\r
+\r
+Description\r
+------------\r
+\r
+This command displays the IPv4 FIB Tables (VRF Tables) and the route entries for each table.\r
+\r
+.. note:: \r
+ This command will run for a long time when the FIB tables are comprised of\r
+ millions of entries. For those senarios, consider displaying a single table or summary mode.\r
+\r
+Example Usage\r
+--------------\r
+Example of how to display all the IPv4 FIB tables:\r
+\r
+.. code-block:: console\r
+\r
+ vpp# **show ip fib**\r
+\r
+ ipv4-VRF:0, fib_index 0, flow hash: src dst sport dport proto\r
+ 0.0.0.0/0\r
+ unicast-ip4-chain\r
+ [@0]: dpo-load-balance: [index:0 buckets:1 uRPF:0 to:[0:0]]\r
+ [0] [@0]: dpo-drop ip6\r
+ 0.0.0.0/32\r
+ unicast-ip4-chain\r
+ [@0]: dpo-load-balance: [index:1 buckets:1 uRPF:1 to:[0:0]]\r
+ [0] [@0]: dpo-drop ip6\r
+ 6.0.1.2/32\r
+ unicast-ip4-chain\r
+ [@0]: dpo-load-balance: [index:30 buckets:1 uRPF:29 to:[0:0]]\r
+ [0] [@3]: arp-ipv4: via 6.0.0.1 af_packet0\r
+ 7.0.0.1/32\r
+ unicast-ip4-chain\r
+ [@0]: dpo-load-balance: [index:31 buckets:4 uRPF:30 to:[0:0]]\r
+ [0] [@3]: arp-ipv4: via 6.0.0.2 af_packet0\r
+ [1] [@3]: arp-ipv4: via 6.0.0.2 af_packet0\r
+ [2] [@3]: arp-ipv4: via 6.0.0.2 af_packet0\r
+ [3] [@3]: arp-ipv4: via 6.0.0.1 af_packet0\r
+ 224.0.0.0/8\r
+ unicast-ip4-chain\r
+ [@0]: dpo-load-balance: [index:3 buckets:1 uRPF:3 to:[0:0]]\r
+ [0] [@0]: dpo-drop ip6\r
+ 240.0.0.0/8\r
+ unicast-ip4-chain\r
+ [@0]: dpo-load-balance: [index:2 buckets:1 uRPF:2 to:[0:0]]\r
+ [0] [@0]: dpo-drop ip6\r
+ 255.255.255.255/32\r
+ unicast-ip4-chain\r
+ [@0]: dpo-load-balance: [index:4 buckets:1 uRPF:4 to:[0:0]]\r
+ [0] [@0]: dpo-drop ip6\r
+ ipv4-VRF:7, fib_index 1, flow hash: src dst sport dport proto\r
+ 0.0.0.0/0\r
+ unicast-ip4-chain\r
+ [@0]: dpo-load-balance: [index:12 buckets:1 uRPF:11 to:[0:0]]\r
+ [0] [@0]: dpo-drop ip6\r
+ 0.0.0.0/32\r
+ unicast-ip4-chain\r
+ [@0]: dpo-load-balance: [index:13 buckets:1 uRPF:12 to:[0:0]]\r
+ [0] [@0]: dpo-drop ip6\r
+ 172.16.1.0/24\r
+ unicast-ip4-chain\r
+ [@0]: dpo-load-balance: [index:17 buckets:1 uRPF:16 to:[0:0]]\r
+ [0] [@4]: ipv4-glean: af_packet0\r
+ 172.16.1.1/32\r
+ unicast-ip4-chain\r
+ [@0]: dpo-load-balance: [index:18 buckets:1 uRPF:17 to:[1:84]]\r
+ [0] [@2]: dpo-receive: 172.16.1.1 on af_packet0\r
+ 172.16.1.2/32\r
+ unicast-ip4-chain\r
+ [@0]: dpo-load-balance: [index:21 buckets:1 uRPF:20 to:[0:0]]\r
+ [0] [@5]: ipv4 via 172.16.1.2 af_packet0: IP4: 02:fe:9e:70:7a:2b -> 26:a5:f6:9c:3a:36\r
+ 172.16.2.0/24\r
+ unicast-ip4-chain\r
+ [@0]: dpo-load-balance: [index:19 buckets:1 uRPF:18 to:[0:0]]\r
+ [0] [@4]: ipv4-glean: af_packet1\r
+ 172.16.2.1/32\r
+ unicast-ip4-chain\r
+ [@0]: dpo-load-balance: [index:20 buckets:1 uRPF:19 to:[0:0]]\r
+ [0] [@2]: dpo-receive: 172.16.2.1 on af_packet1\r
+ 224.0.0.0/8\r
+ unicast-ip4-chain\r
+ [@0]: dpo-load-balance: [index:15 buckets:1 uRPF:14 to:[0:0]]\r
+ [0] [@0]: dpo-drop ip6\r
+ 240.0.0.0/8\r
+ unicast-ip4-chain\r
+ [@0]: dpo-load-balance: [index:14 buckets:1 uRPF:13 to:[0:0]]\r
+ [0] [@0]: dpo-drop ip6\r
+ 255.255.255.255/32\r
+ unicast-ip4-chain\r
+ [@0]: dpo-load-balance: [index:16 buckets:1 uRPF:15 to:[0:0]]\r
+ [0] [@0]: dpo-drop ip6\r
+\r
+Example of how to display a single IPv4 FIB table:\r
+\r
+.. code-block:: console\r
+\r
+ vpp# **show ip fib table 7**\r
+\r
+ ipv4-VRF:7, fib_index 1, flow hash: src dst sport dport proto\r
+ 0.0.0.0/0\r
+ unicast-ip4-chain\r
+ [@0]: dpo-load-balance: [index:12 buckets:1 uRPF:11 to:[0:0]]\r
+ [0] [@0]: dpo-drop ip6\r
+ 0.0.0.0/32\r
+ unicast-ip4-chain\r
+ [@0]: dpo-load-balance: [index:13 buckets:1 uRPF:12 to:[0:0]]\r
+ [0] [@0]: dpo-drop ip6\r
+ 172.16.1.0/24\r
+ unicast-ip4-chain\r
+ [@0]: dpo-load-balance: [index:17 buckets:1 uRPF:16 to:[0:0]]\r
+ [0] [@4]: ipv4-glean: af_packet0\r
+ 172.16.1.1/32\r
+ unicast-ip4-chain\r
+ [@0]: dpo-load-balance: [index:18 buckets:1 uRPF:17 to:[1:84]]\r
+ [0] [@2]: dpo-receive: 172.16.1.1 on af_packet0\r
+ 172.16.1.2/32\r
+ unicast-ip4-chain\r
+ [@0]: dpo-load-balance: [index:21 buckets:1 uRPF:20 to:[0:0]]\r
+ [0] [@5]: ipv4 via 172.16.1.2 af_packet0: IP4: 02:fe:9e:70:7a:2b -*> 26:a5:f6:9c:3a:36\r
+ 172.16.2.0/24\r
+ unicast-ip4-chain\r
+ [@0]: dpo-load-balance: [index:19 buckets:1 uRPF:18 to:[0:0]]\r
+ [0] [@4]: ipv4-glean: af_packet1\r
+ 172.16.2.1/32\r
+ unicast-ip4-chain\r
+ [@0]: dpo-load-balance: [index:20 buckets:1 uRPF:19 to:[0:0]]\r
+ [0] [@2]: dpo-receive: 172.16.2.1 on af_packet1\r
+ 224.0.0.0/8\r
+ unicast-ip4-chain\r
+ [@0]: dpo-load-balance: [index:15 buckets:1 uRPF:14 to:[0:0]]\r
+ [0] [@0]: dpo-drop ip6\r
+ 240.0.0.0/8\r
+ unicast-ip4-chain\r
+ [@0]: dpo-load-balance: [index:14 buckets:1 uRPF:13 to:[0:0]]\r
+ [0] [@0]: dpo-drop ip6\r
+ 255.255.255.255/32\r
+ unicast-ip4-chain\r
+ [@0]: dpo-load-balance: [index:16 buckets:1 uRPF:15 to:[0:0]]\r
+ [0] [@0]: dpo-drop ip6\r
+\r
+Example of how to display a summary of all IPv4 FIB tables:\r
+\r
+.. code-block:: console\r
+\r
+ vpp# **show ip fib summary**\r
+\r
+ ipv4-VRF:0, fib_index 0, flow hash: src dst sport dport proto\r
+ Prefix length Count\r
+ 0 1\r
+ 8 2\r
+ 32 4\r
+ ipv4-VRF:7, fib_index 1, flow hash: src dst sport dport proto\r
+ Prefix length Count\r
+ 0 1\r
+ 8 2\r
+ 24 2\r
+ 32 4\r
+\r
+Declaration and Implementation\r
+-------------------------------\r
+\r
+**Declaration:** ip4_show_fib_command (src/vnet/fib/ip4_fib.c line 873)\r
+\r
+**Implementation:** ip4_show_fib\r
+\r
+Show L2fib \r
+============\r
+\r
+Summary/Usage \r
+------------------\r
+\r
+show l2fib [all] | [bd_id <*nn*> | bd_index <*nn*>] [learn | add] | [raw]\r
+\r
+Description\r
+------------\r
+\r
+This command displays the MAC Address entries of the L2 FIB table. \r
+Output can be filtered to just get the number of MAC Addresses or display each \r
+MAC Address for all bridge domains or just a single bridge domain.\r
+\r
+Example Usage\r
+--------------\r
+Example of how to display the number of MAC Address entries in the L2 FIB table:\r
+\r
+\r
+.. code-block:: console\r
+\r
+ vpp# **show l2fib**\r
+\r
+ 3 l2fib entries\r
+\r
+ Example of how to display all the MAC Address entries in the L2 FIB table:\r
+\r
+ vpp# **show l2fib all**\r
+\r
+ Mac Address BD Idx Interface Index static filter bvi refresh timestamp\r
+ 52:54:00:53:18:33 1 GigabitEthernet0/8/0.200 3 0 0 0 0 0\r
+ 52:54:00:53:18:55 1 GigabitEthernet0/8/0.200 3 1 0 0 0 0\r
+ 52:54:00:53:18:77 1 N/A -1 1 1 0 0 0\r
+ 3 l2fib entries\r
+\r
+Declaration and Implementation\r
+-------------------------------\r
+\r
+**Declaration:** show_l2fib_cli (src/vnet/l2/l2_fib.c line 311)\r
+\r
+**Implementation:** show_l2fib\r
+\r
+Show Trace\r
+===========\r
+\r
+Summary/Usage\r
+--------------\r
+\r
+show trace buffer [max COUNT]\r
+\r
+Declaration and Implementation\r
+------------------------------\r
+\r
+**Declaration:** show_trace_cli (src/vlib/trace.c line 347)\r
+\r
+**Implementation:** cli_show_trace_buffer\r
+\r
+Show Vhost-User\r
+================\r
+\r
+`Show Vhost-User <../vhost/vhostuser.html#show-vhost-user>`_\r
+\r
-.. _interface:
-
-.. note:: For a complete list of CLI Debug commands refer to the Debug CLI section of the `Source Code Documents <https://docs.fd.io/vpp/18.07/clicmd.html>`_ .
-
-Trace Commands
-===============
-This section identifies the following types of trace commands:
-
-.. toctree::
- :maxdepth: 2
-
+.. _interface:\r
+\r
+.. note:: For a complete list of CLI Debug commands refer to the Debug CLI section of the `Source Code Documents <https://docs.fd.io/vpp/18.07/clicmd.html>`_ .\r
+\r
+Trace Commands\r
+===============\r
+This section identifies the following types of trace commands:\r
+\r
+.. toctree::\r
+ :maxdepth: 2\r
+ \r
trace
\ No newline at end of file
-.. _interface:
-
-.. toctree::
-
-.. note:: For a complete list of CLI Debug commands refer to the Debug CLI section of the `Source Code Documents <https://docs.fd.io/vpp/18.07/clicmd.html>`_ .
-
-
-API Trace
-===========
-
-Summary/Usage
---------------
-
-api trace [on|off][first <*n*>][last <*n*>][status][free][post-mortem-on][dump|custom-dump|save|replay <*file*>]
-
-Description
-------------
-
-Display, replay, or save a binary API trace.
-
-Declaration and Implementation
--------------------------------
-
-**Declaration:** api_trace_command (src/vlibmemory/vlib_api_cli.c line 783)
-
-**Implementation:** api_trace_command_fn
-
-Clear Trace
-=============
-
-Summary/Usage
---------------
-Clear trace buffer and free memory.
-Declaration and implementation
-
-**Declaration:** clear_trace_cli (src/vlib/trace.c line 519)
-
-**Implementation:** cli_clear_trace_buffer
-
-Show Trace
-===========
-
-`Show Trace <../interface/show.html#show-trace>`_
-
-Trace Add
-===========
-
-Summary/Usage
---------------
-
-Trace given number of packets.
-
-Declaration and Implementation
--------------------------------
-
-**Declaration:** add_trace_cli (src/vlib/trace.c line 405)
-
+.. _interface:\r
+\r
+.. toctree::\r
+\r
+.. note:: For a complete list of CLI Debug commands refer to the Debug CLI section of the `Source Code Documents <https://docs.fd.io/vpp/18.07/clicmd.html>`_ .\r
+\r
+\r
+API Trace \r
+===========\r
+\r
+Summary/Usage\r
+--------------\r
+\r
+api trace [on|off][first <*n*>][last <*n*>][status][free][post-mortem-on][dump|custom-dump|save|replay <*file*>]\r
+\r
+Description\r
+------------\r
+\r
+Display, replay, or save a binary API trace.\r
+\r
+Declaration and Implementation\r
+-------------------------------\r
+\r
+**Declaration:** api_trace_command (src/vlibmemory/vlib_api_cli.c line 783)\r
+\r
+**Implementation:** api_trace_command_fn\r
+\r
+Clear Trace\r
+=============\r
+\r
+Summary/Usage\r
+--------------\r
+Clear trace buffer and free memory.\r
+Declaration and implementation\r
+\r
+**Declaration:** clear_trace_cli (src/vlib/trace.c line 519)\r
+\r
+**Implementation:** cli_clear_trace_buffer\r
+\r
+Show Trace\r
+===========\r
+\r
+`Show Trace <../show/show.html#show-trace>`_\r
+\r
+Trace Add\r
+===========\r
+\r
+Summary/Usage\r
+--------------\r
+\r
+Trace given number of packets.\r
+\r
+Declaration and Implementation\r
+-------------------------------\r
+\r
+**Declaration:** add_trace_cli (src/vlib/trace.c line 405)\r
+\r
**Implementation:** cli_add_trace_buffer
\ No newline at end of file
Examples
--------
- Example of how to create a vhost interface with VPP as the client
- and all features enabled:
+Example of how to create a vhost interface with VPP as the client
+and all features enabled:
.. code-block:: console