summaryrefslogtreecommitdiffstats
path: root/doc
diff options
context:
space:
mode:
authorIgor Ryzhov <idryzhov@gmail.com>2024-12-27 20:33:39 +0100
committerIgor Ryzhov <idryzhov@gmail.com>2025-01-15 22:38:27 +0100
commit300f8dbda4bc7efdab90809fbff5f9799c0ec2aa (patch)
tree72a4cdba181d9c90528f098d41dee08e862d2b6c /doc
parentlib, zebra: move ns context intialization to zebra (diff)
downloadfrr-300f8dbda4bc7efdab90809fbff5f9799c0ec2aa.tar.xz
frr-300f8dbda4bc7efdab90809fbff5f9799c0ec2aa.zip
lib: introduce global -w option for VRF netns backend
Current -n option is only for zebra and mgmtd. All other daemons receive the VRF backend configuration from zebra upon connection to it. This leads to a potential race condition - daemons need to know the backend before they start reading their config, but they can be not connected to zebra yet at this point. As the VRF backend cannot change during runtime, let's introduce a new global -w option for setting netns backend, to make sure that all daemons know their VRF backend immediately after start. The reason for introducing a new option instead of making -n global is that ospfd already uses -n for another purposes. Signed-off-by: Igor Ryzhov <idryzhov@gmail.com>
Diffstat (limited to 'doc')
-rw-r--r--doc/manpages/frr-zebra.rst2
-rw-r--r--doc/user/basic.rst11
-rw-r--r--doc/user/zebra.rst2
3 files changed, 15 insertions, 0 deletions
diff --git a/doc/manpages/frr-zebra.rst b/doc/manpages/frr-zebra.rst
index 6cc46b806..356c128e3 100644
--- a/doc/manpages/frr-zebra.rst
+++ b/doc/manpages/frr-zebra.rst
@@ -38,6 +38,8 @@ OPTIONS available for the |DAEMON| command:
Enable namespace VRF backend. By default, the VRF backend relies on VRF-lite support from the Linux kernel. This option permits discovering Linux named network namespaces and mapping it to FRR VRF contexts.
+ This option is deprecated. Please use the global -w option instead.
+
ROUTES
------
diff --git a/doc/user/basic.rst b/doc/user/basic.rst
index 5fdd1887f..b2d47a38e 100644
--- a/doc/user/basic.rst
+++ b/doc/user/basic.rst
@@ -754,6 +754,17 @@ These options apply to all |PACKAGE_NAME| daemons.
be added to all files that use the statedir. If you have "/var/run/frr"
as the default statedir then it will become "/var/run/frr/<namespace>".
+.. option:: -w, --vrfwnetns
+
+ Enable namespace VRF backend. By default, the VRF backend relies on VRF-lite
+ support from the Linux kernel. This option permits discovering Linux named
+ network namespaces and mapping them to FRR VRF contexts. This option must be
+ the same for all running daemons. The easiest way to pass the same option to
+ all daemons is to use the ``frr_global_options`` variable in the
+ :ref:`Daemons Configuration File <daemons-configuration-file>`.
+
+ .. seealso:: :ref:`zebra-vrf`
+
.. option:: -o, --vrfdefaultname <name>
Set the name used for the *Default VRF* in CLI commands and YANG models.
diff --git a/doc/user/zebra.rst b/doc/user/zebra.rst
index ac29b1c7d..ef3a61985 100644
--- a/doc/user/zebra.rst
+++ b/doc/user/zebra.rst
@@ -53,6 +53,8 @@ Besides the common invocation options (:ref:`common-invocation-options`), the
VRF defined by *Zebra*, as usual. If this option is specified when running
*Zebra*, one must also specify the same option for *mgmtd*.
+ This options is deprecated. Please use the global -w option instead.
+
.. seealso:: :ref:`zebra-vrf`
.. option:: -z <path_to_socket>, --socket <path_to_socket>