diff options
Diffstat (limited to 'docs/reference/cmdreference/ip/ip.rst')
-rw-r--r-- | docs/reference/cmdreference/ip/ip.rst | 296 |
1 files changed, 151 insertions, 145 deletions
diff --git a/docs/reference/cmdreference/ip/ip.rst b/docs/reference/cmdreference/ip/ip.rst index 32cc30c4275..a709215f45b 100644 --- a/docs/reference/cmdreference/ip/ip.rst +++ b/docs/reference/cmdreference/ip/ip.rst @@ -1,145 +1,151 @@ -.. _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:
+
+.. 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>`_
|