summaryrefslogtreecommitdiff
path: root/docs/vrf.rst
diff options
context:
space:
mode:
authorChristian Poessinger <christian@poessinger.com>2020-03-06 18:59:26 +0100
committerChristian Poessinger <christian@poessinger.com>2020-03-06 18:59:26 +0100
commit64275eaf973543013ba7b2b4da9d393945810189 (patch)
treea514a2dccf90666819f1e154ace29a1f56abf54d /docs/vrf.rst
parent24a029bb0ca554793cc5837e07c9374eb236cdaf (diff)
downloadvyos-documentation-64275eaf973543013ba7b2b4da9d393945810189.tar.gz
vyos-documentation-64275eaf973543013ba7b2b4da9d393945810189.zip
vrf: add documentation for static routing
Diffstat (limited to 'docs/vrf.rst')
-rw-r--r--docs/vrf.rst128
1 files changed, 128 insertions, 0 deletions
diff --git a/docs/vrf.rst b/docs/vrf.rst
index 00942234..3eb87e8a 100644
--- a/docs/vrf.rst
+++ b/docs/vrf.rst
@@ -39,6 +39,134 @@ then enslaved to a VRF device.
TCP & UDP services running in the default VRF context (ie., not bound to any
VRF device) can work across all VRF domains by enabling this option.
+Interfaces
+----------
+
+Routing
+-------
+
+Static
+^^^^^^
+
+Static routes are manually configured routes, which, in general, cannot be
+updated dynamically from information VyOS learns about the network topology from
+other routing protocols. However, if a link fails, the router will remove
+routes, including static routes, from the :abbr:`RIPB (Routing Information
+Base)` that used this interface to reach the next hop. In general, static
+routes should only be used for very simple network topologies, or to override
+the behavior of a dynamic routing protocol for a small number of routes. The
+collection of all routes the router has learned from its configuration or from
+its dynamic routing protocols is stored in the RIB. Unicast routes are directly
+used to determine the forwarding table used for unicast packet forwarding.
+
+Static Routes
+"""""""""""""
+
+.. cfgcmd:: set protocols vrf <name> static route <subnet> next-hop <address>
+
+ Configure next-hop `<address>` for an IPv4 static route in the VRF identified
+ by `<name>`. Multiple static routes can be created.
+
+.. cfgcmd:: set protocols vrf <name> static route <subnet> next-hop <address> disable
+
+ Disable IPv4 static route entry in the VRF identified by `<name>`
+
+.. cfgcmd:: set protocols vrf <name> static route <subnet> next-hop <address> distance <distance>
+
+ Defines next-hop distance for this route, routes with smaller administrative
+ distance are elected prior those with a higher distance.
+
+ Range is 1 to 255, default is 1.
+
+.. cfgcmd:: set protocols vrf <name> static route6 <subnet> next-hop <address>
+
+ Configure next-hop `<address>` for an IPv6 static route in the VRF identified
+ by `<name>`. Multiple IPv6 static routes can be created.
+
+.. cfgcmd:: set protocols vrf <name> static route6 <subnet> next-hop <address> disable
+
+ Disable IPv6 static route entry in the VRF identified by `<name>`.
+
+.. cfgcmd:: set protocols vrf <name> static route6 <subnet> next-hop <address> distance <distance>
+
+ Defines next-hop distance for this route, routes with smaller administrative
+ distance are elected prior those with a higher distance.
+
+ Range is 1 to 255, default is 1.
+
+.. note:: Routes with a distance of 255 are effectively disabled and not
+ installed into the kernel.
+
+
+Interface Routes
+""""""""""""""""
+
+.. cfgcmd:: set protocols vrf <name> static interface-route <subnet> next-hop-interface <interface>
+
+ Allows you to configure the next-hop interface for an interface-based IPv4
+ static route. `<interface>` will be the next-hop interface where trafic is
+ routed for the given `<subnet>`.
+
+.. cfgcmd:: set protocols vrf <name> static interface-route <subnet> next-hop-interface <interface> disable
+
+ Disables interface-based IPv4 static route.
+
+.. cfgcmd:: set protocols vrf <name> static interface-route <subnet> next-hop-interface <interface> distance <distance>
+
+ Defines next-hop distance for this route, routes with smaller administrative
+ distance are elected prior those with a higher distance.
+
+ Range is 1 to 255, default is 1.
+
+.. cfgcmd:: set protocols vrf <name> static interface-route6 <subnet> next-hop-interface <interface>
+
+ Allows you to configure the next-hop interface for an interface-based IPv6
+ static route. `<interface>` will be the next-hop interface where trafic is
+ routed for the given `<subnet>`.
+
+.. cfgcmd:: set protocols vrf <name> static interface-route6 <subnet> next-hop-interface <interface> disable
+
+ Disables interface-based IPv6 static route.
+
+.. cfgcmd:: set protocols vrf <name> static interface-route6 <subnet> next-hop-interface <interface> distance <distance>
+
+ Defines next-hop distance for this route, routes with smaller administrative
+ distance are elected prior those with a higher distance.
+
+ Range is 1 to 255, default is 1.
+
+
+Blackhole
+"""""""""
+
+.. cfgcmd:: set protocols vrf <name> static route <subnet> blackhole
+
+ Use this command to configure a "black-hole" route on the router. A
+ black-hole route is a route for which the system silently discard packets
+ that are matched. This prevents networks leaking out public interfaces, but
+ it does not prevent them from being used as a more specific route inside your
+ network.
+
+.. cfgcmd:: set protocols vrf <name> static route <subnet> blackhole distance <distance>
+
+ Defines blackhole distance for this route, routes with smaller administrative
+ distance are elected prior those with a higher distance.
+
+.. cfgcmd:: set protocols vrf <name> static route6 <subnet> blackhole
+
+ Use this command to configure a "black-hole" route on the router. A
+ black-hole route is a route for which the system silently discard packets
+ that are matched. This prevents networks leaking out public interfaces, but
+ it does not prevent them from being used as a more specific route inside your
+ network.
+
+.. cfgcmd:: set protocols vrf <name> static route6 <subnet> blackhole distance <distance>
+
+ Defines blackhole distance for this route, routes with smaller administrative
+ distance are elected prior those with a higher distance.
+
+
+
Operation
=========