diff options
-rw-r--r-- | docs/index.rst | 1 | ||||
-rw-r--r-- | docs/vrf.rst | 66 |
2 files changed, 67 insertions, 0 deletions
diff --git a/docs/index.rst b/docs/index.rst index 8f2c0bbd..5a4c44ac 100644 --- a/docs/index.rst +++ b/docs/index.rst @@ -38,6 +38,7 @@ VyOS User Guide services/index firewall routing/index + vrf nat nptv6 qos diff --git a/docs/vrf.rst b/docs/vrf.rst new file mode 100644 index 00000000..2191fdf6 --- /dev/null +++ b/docs/vrf.rst @@ -0,0 +1,66 @@ +.. _vrf: + +### +VRF +### + +:abbr:`VRF (Virtual Routing and Forwarding)` devices combined with ip rules +provides the ability to create virtual routing and forwarding domains (aka +VRFs, VRF-lite to be specific) in the Linux network stack. One use case is the +multi-tenancy problem where each tenant has their own unique routing tables and +in the very least need different default gateways. + +Configuration +============= + +A VRF device is created with an associated route table. Network interfaces are +then enslaved to a VRF device. + +.. cfgcmd:: set vrf name <name> + + Create new VRF instance with `<name>`. The name is used when placing individual + interfaces into the VRF. + +.. cfgcmd:: set vrf name <name> table <id> + + Configure use routing table `<id>` used by VRF `<name>`. + + .. note:: A routing table ID can not be modified once it is assigned. It can + only be changed by deleting and re-adding the VRF instance. + + +.. cfgcmd:: set vrf bind-to-all + + By default the scope of the port bindings for unbound sockets is limited to + the default VRF. That is, it will not be matched by packets arriving on + interfaces enslaved to a VRF and processes may bind to the same port if + they bind to a VRF. + + 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. + +Operation +========= + +.. opcmd:: show vrf + + List VRFs that have been created + + .. code-block:: none + + vyos@vyos:~$ show vrf + + interface state mac flags + --------- ----- --- ----- + bar up ee:c7:5b:fc:ae:f9 noarp,master,up,lower_up + foo up ee:bb:a4:ac:cd:20 noarp,master,up,lower_up + +.. opcmd:: show vrf <name> + + .. code-block:: none + + vyos@vyos:~$ show vrf name bar + interface state mac flags + --------- ----- --- ----- + bar up ee:c7:5b:fc:ae:f9 noarp,master,up,lower_up + |