doc: stylin'

Use the proper section markup as defined in workflow.rst.
This helps Sphinx organize sections properly.

Signed-off-by: Quentin Young <qlyoung@cumulusnetworks.com>
This commit is contained in:
Quentin Young 2018-04-09 13:10:20 -04:00
parent c936589468
commit 75ca3b1123
No known key found for this signature in database
GPG Key ID: DAF48E0F57E0834F
23 changed files with 156 additions and 151 deletions

View File

@ -125,7 +125,7 @@ Get FRR, compile it and install it (from Git)
using any packages**
Add frr groups and user
~~~~~~~~~~~~~~~~~~~~~~~
^^^^^^^^^^^^^^^^^^^^^^^
::
@ -135,7 +135,7 @@ Add frr groups and user
-c "FRR FRRouting suite" -d /var/run/frr frr
Download Source, configure and compile it
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
(You may prefer different options on configure statement. These are just
an example.)
@ -176,7 +176,7 @@ an example.)
sudo make SPHINXBUILD=sphinx-build2.7 install
Create empty FRR configuration files
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
::
@ -198,7 +198,7 @@ Create empty FRR configuration files
sudo chmod 640 /etc/frr/*.conf
Install daemon config file
~~~~~~~~~~~~~~~~~~~~~~~~~~
^^^^^^^^^^^^^^^^^^^^^^^^^^
::
@ -206,13 +206,13 @@ Install daemon config file
sudo chown frr:frr /etc/frr/daemons
Edit /etc/frr/daemons as needed to select the required daemons
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
Look for the section with ``watchfrr_enable=...`` and ``zebra=...`` etc.
Enable the daemons as required by changing the value to ``yes``
Enable IP & IPv6 forwarding
~~~~~~~~~~~~~~~~~~~~~~~~~~~
^^^^^^^^^^^^^^^^^^^^^^^^^^^
Edit ``/etc/sysctl.conf`` and set the following values (ignore the other
settings)
@ -233,7 +233,7 @@ Load the modifed sysctl's on the system:
sudo sysctl -p /etc/sysctl.d/90-routing-sysctl.conf
Add init.d startup files
~~~~~~~~~~~~~~~~~~~~~~~~
^^^^^^^^^^^^^^^^^^^^^^^^
::
@ -241,14 +241,14 @@ Add init.d startup files
sudo chkconfig --add frr
Enable frr daemon at startup
~~~~~~~~~~~~~~~~~~~~~~~~~~~~
^^^^^^^^^^^^^^^^^^^^^^^^^^^^
::
sudo chkconfig frr on
Start FRR manually (or reboot)
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
::

View File

@ -31,7 +31,7 @@ Get FRR, compile it and install it (from Git)
using any packages**
Add frr groups and user
~~~~~~~~~~~~~~~~~~~~~~~
^^^^^^^^^^^^^^^^^^^^^^^
::
@ -41,7 +41,7 @@ Add frr groups and user
-c "FRR FRRouting suite" -d /var/run/frr frr
Download Source, configure and compile it
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
(You may prefer different options on configure statement. These are just
an example.)
@ -83,7 +83,7 @@ an example.)
sudo make install
Create empty FRR configuration files
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
::
@ -106,7 +106,7 @@ Create empty FRR configuration files
sudo chmod 640 /etc/frr/*.conf
Install daemon config file
~~~~~~~~~~~~~~~~~~~~~~~~~~
^^^^^^^^^^^^^^^^^^^^^^^^^^
::
@ -114,13 +114,13 @@ Install daemon config file
sudo chown frr:frr /etc/frr/daemons
Edit /etc/frr/daemons as needed to select the required daemons
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
Look for the section with ``watchfrr_enable=...`` and ``zebra=...`` etc.
Enable the daemons as required by changing the value to ``yes``
Enable IP & IPv6 forwarding
~~~~~~~~~~~~~~~~~~~~~~~~~~~
^^^^^^^^^^^^^^^^^^^^^^^^^^^
Create a new file ``/etc/sysctl.d/90-routing-sysctl.conf`` with the
following content:
@ -140,7 +140,7 @@ Load the modifed sysctl's on the system:
sudo sysctl -p /etc/sysctl.d/90-routing-sysctl.conf
Install frr Service and redhat init files
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
::
@ -148,21 +148,21 @@ Install frr Service and redhat init files
sudo install -p -m 755 redhat/frr.init /usr/lib/frr/frr
Register the systemd files
~~~~~~~~~~~~~~~~~~~~~~~~~~
^^^^^^^^^^^^^^^^^^^^^^^^^^
::
sudo systemctl preset frr.service
Enable required frr at startup
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
::
sudo systemctl enable frr
Reboot or start FRR manually
~~~~~~~~~~~~~~~~~~~~~~~~~~~~
^^^^^^^^^^^^^^^^^^^^^^^^^^^^
::

View File

@ -32,7 +32,7 @@ Get FRR, compile it and install it (from Git)
using any packages**
Add frr groups and user
~~~~~~~~~~~~~~~~~~~~~~~
^^^^^^^^^^^^^^^^^^^^^^^
::
@ -43,7 +43,7 @@ Add frr groups and user
sudo usermod -a -G frrvty frr
Download Source, configure and compile it
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
(You may prefer different options on configure statement. These are just
an example.)
@ -80,7 +80,7 @@ an example.)
sudo make install
Create empty FRR configuration files
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
::
@ -99,7 +99,7 @@ Create empty FRR configuration files
sudo install -m 640 -o frr -g frrvty /dev/null /etc/frr/vtysh.conf
Enable IP & IPv6 forwarding
~~~~~~~~~~~~~~~~~~~~~~~~~~~
^^^^^^^^^^^^^^^^^^^^^^^^^^^
Edit ``/etc/sysctl.conf`` and uncomment the following values (ignore the
other settings)
@ -118,7 +118,7 @@ other settings)
system
Troubleshooting
~~~~~~~~~~~~~~~
^^^^^^^^^^^^^^^
**Local state directory**

View File

@ -19,7 +19,7 @@ Get FRR, compile it and install it (from Git)
using any packages**
Add frr groups and user
~~~~~~~~~~~~~~~~~~~~~~~
^^^^^^^^^^^^^^^^^^^^^^^
::
@ -30,7 +30,7 @@ Add frr groups and user
sudo usermod -a -G frrvty frr
Download Source, configure and compile it
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
(You may prefer different options on configure statement. These are just
an example.)
@ -68,7 +68,7 @@ an example.)
sudo make install
Create empty FRR configuration files
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
::
@ -88,7 +88,7 @@ Create empty FRR configuration files
sudo install -m 640 -o frr -g frrvty /dev/null /etc/frr/vtysh.conf
Enable IP & IPv6 forwarding
~~~~~~~~~~~~~~~~~~~~~~~~~~~
^^^^^^^^^^^^^^^^^^^^^^^^^^^
Edit ``/etc/sysctl.conf`` and uncomment the following values (ignore the
other settings)
@ -110,7 +110,7 @@ Troubleshooting
---------------
Shared library error
~~~~~~~~~~~~~~~~~~~~
^^^^^^^^^^^^^^^^^^^^
If you try and start any of the frrouting daemons you may see the below
error due to the frrouting shared library directory not being found:

View File

@ -24,7 +24,7 @@ Get FRR, compile it and install it (from Git)
using any packages**
Add frr groups and user
~~~~~~~~~~~~~~~~~~~~~~~
^^^^^^^^^^^^^^^^^^^^^^^
::
@ -34,7 +34,7 @@ Add frr groups and user
-c "FRR FRRouting suite" -d /var/run/frr frr
Download Source, configure and compile it
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
(You may prefer different options on configure statement. These are just
an example.)
@ -75,7 +75,7 @@ an example.)
sudo make install
Create empty FRR configuration files
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
::
@ -99,7 +99,7 @@ Create empty FRR configuration files
sudo chmod 640 /etc/frr/*.conf
Install daemon config file
~~~~~~~~~~~~~~~~~~~~~~~~~~
^^^^^^^^^^^^^^^^^^^^^^^^^^
::
@ -107,13 +107,13 @@ Install daemon config file
sudo chown frr:frr /etc/frr/daemons
Edit /etc/frr/daemons as needed to select the required daemons
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
Look for the section with ``watchfrr_enable=...`` and ``zebra=...`` etc.
Enable the daemons as required by changing the value to ``yes``
Enable IP & IPv6 forwarding (and MPLS)
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
Create a new file ``/etc/sysctl.d/90-routing-sysctl.conf`` with the
following content: (Please make sure to list all interfaces with
@ -155,7 +155,7 @@ And load the kernel modules on the running system:
sudo modprobe mpls-router mpls-iptunnel
Install frr Service and redhat init files
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
::
@ -163,14 +163,14 @@ Install frr Service and redhat init files
sudo install -p -m 755 redhat/frr.init /usr/lib/frr/frr
Enable required frr at startup
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
::
sudo systemctl enable frr
Reboot or start FRR manually
~~~~~~~~~~~~~~~~~~~~~~~~~~~~
^^^^^^^^^^^^^^^^^^^^^^^^^^^^
::

View File

@ -34,7 +34,7 @@ Get FRR, compile it and install it (from Git)
using any packages**
Add frr group and user
~~~~~~~~~~~~~~~~~~~~~~
^^^^^^^^^^^^^^^^^^^^^^
::
@ -76,7 +76,7 @@ an example)
sudo gmake install
Create empty FRR configuration files
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
::
@ -95,7 +95,7 @@ Create empty FRR configuration files
sudo chmod 640 /usr/local/etc/frr/*.conf
Enable IP & IPv6 forwarding
~~~~~~~~~~~~~~~~~~~~~~~~~~~
^^^^^^^^^^^^^^^^^^^^^^^^^^^
Add the following lines to the end of ``/etc/sysctl.conf``:

View File

@ -34,7 +34,7 @@ Get FRR, compile it and install it (from Git)
using any packages**
Add frr group and user
~~~~~~~~~~~~~~~~~~~~~~
^^^^^^^^^^^^^^^^^^^^^^
::
@ -76,7 +76,7 @@ an example)
sudo gmake install
Create empty FRR configuration files
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
::
@ -95,7 +95,7 @@ Create empty FRR configuration files
sudo chmod 640 /usr/local/etc/frr/*.conf
Enable IP & IPv6 forwarding
~~~~~~~~~~~~~~~~~~~~~~~~~~~
^^^^^^^^^^^^^^^^^^^^^^^^^^^
Add the following lines to the end of ``/etc/sysctl.conf``:

View File

@ -47,7 +47,7 @@ Get FRR, compile it and install it (from Git)
using any packages**
Add frr group and user
~~~~~~~~~~~~~~~~~~~~~~
^^^^^^^^^^^^^^^^^^^^^^
::
@ -89,7 +89,7 @@ an example)
sudo gmake install
Create empty FRR configuration files
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
::
@ -108,7 +108,7 @@ Create empty FRR configuration files
sudo chmod 640 /usr/local/etc/frr/*.conf
Enable IP & IPv6 forwarding
~~~~~~~~~~~~~~~~~~~~~~~~~~~
^^^^^^^^^^^^^^^^^^^^^^^^^^^
Add the following lines to the end of ``/etc/sysctl.conf``:

View File

@ -98,11 +98,11 @@ DAEMONS= or don't install unneded packages For example: zebra bgpd ldpd
isisd nhrpd ospfd ospf6d pimd ripd ripngd
Enable the serivce
~~~~~~~~~~~~~~~~~~
^^^^^^^^^^^^^^^^^^
- service frr enable
Start the service
~~~~~~~~~~~~~~~~~
^^^^^^^^^^^^^^^^^
- service frr start

View File

@ -44,7 +44,7 @@ Get FRR, compile it and install it (from Git)
---------------------------------------------
Add frr groups and user
~~~~~~~~~~~~~~~~~~~~~~~
^^^^^^^^^^^^^^^^^^^^^^^
::
@ -54,7 +54,7 @@ Add frr groups and user
-d /nonexistent -s /sbin/nologin frr
Download Source, configure and compile it
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
(You may prefer different options on configure statement. These are just
an example)
@ -89,7 +89,7 @@ an example)
sudo gmake install
Create empty FRR configuration files
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
::
@ -109,7 +109,7 @@ Create empty FRR configuration files
sudo chmod 640 /usr/pkg/etc/frr/*.conf
Enable IP & IPv6 forwarding
~~~~~~~~~~~~~~~~~~~~~~~~~~~
^^^^^^^^^^^^^^^^^^^^^^^^^^^
Add the following lines to the end of ``/etc/sysctl.conf``:
@ -123,7 +123,7 @@ Add the following lines to the end of ``/etc/sysctl.conf``:
system
Install rc.d init files
~~~~~~~~~~~~~~~~~~~~~~~
^^^^^^^^^^^^^^^^^^^^^^^
::
@ -131,7 +131,7 @@ Install rc.d init files
chmod 555 /etc/rc.d/*.sh
Enable FRR processes
~~~~~~~~~~~~~~~~~~~~
^^^^^^^^^^^^^^^^^^^^
(Enable the required processes only)

View File

@ -35,7 +35,7 @@ Get FRR, compile it and install it (from Git)
---------------------------------------------
Add frr groups and user
~~~~~~~~~~~~~~~~~~~~~~~
^^^^^^^^^^^^^^^^^^^^^^^
::
@ -45,7 +45,7 @@ Add frr groups and user
-d /nonexistent -s /sbin/nologin frr
Download Source, configure and compile it
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
(You may prefer different options on configure statement. These are just
an example)
@ -80,7 +80,7 @@ an example)
sudo gmake install
Create empty FRR configuration files
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
::
@ -99,7 +99,7 @@ Create empty FRR configuration files
sudo chmod 640 /usr/pkg/etc/frr/*.conf
Enable IP & IPv6 forwarding
~~~~~~~~~~~~~~~~~~~~~~~~~~~
^^^^^^^^^^^^^^^^^^^^^^^^^^^
Add the following lines to the end of ``/etc/sysctl.conf``:
@ -113,7 +113,7 @@ Add the following lines to the end of ``/etc/sysctl.conf``:
system
Install rc.d init files
~~~~~~~~~~~~~~~~~~~~~~~
^^^^^^^^^^^^^^^^^^^^^^^
::
@ -121,7 +121,7 @@ Install rc.d init files
chmod 555 /etc/rc.d/*.sh
Enable FRR processes
~~~~~~~~~~~~~~~~~~~~
^^^^^^^^^^^^^^^^^^^^
(Enable the required processes only)

View File

@ -9,7 +9,7 @@ OmniOS restrictions:
use without MPLS
Enable IP & IPv6 forwarding
~~~~~~~~~~~~~~~~~~~~~~~~~~~
^^^^^^^^^^^^^^^^^^^^^^^^^^^
::
@ -93,7 +93,7 @@ Get FRR, compile it and install it (from Git)
using any packages**
Add frr group and user
~~~~~~~~~~~~~~~~~~~~~~
^^^^^^^^^^^^^^^^^^^^^^
::
@ -138,7 +138,7 @@ an example)
sudo gmake install
Enable IP & IPv6 forwarding
~~~~~~~~~~~~~~~~~~~~~~~~~~~
^^^^^^^^^^^^^^^^^^^^^^^^^^^
::

View File

@ -30,7 +30,7 @@ Get FRR, compile it and install it (from Git)
using any packages**
Add frr group and user
~~~~~~~~~~~~~~~~~~~~~~
^^^^^^^^^^^^^^^^^^^^^^
::
@ -40,7 +40,7 @@ Add frr group and user
-d /nonexistent -s /sbin/nologin _frr
Download Source, configure and compile it
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
(You may prefer different options on configure statement. These are just
an example)
@ -75,7 +75,7 @@ an example)
doas gmake install
Create empty FRR configuration files
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
::
@ -100,7 +100,7 @@ Create empty FRR configuration files
doas chmod 640 /etc/frr/*.conf
Enable IP & IPv6 forwarding
~~~~~~~~~~~~~~~~~~~~~~~~~~~
^^^^^^^^^^^^^^^^^^^^^^^^^^^
Add the following lines to the end of ``/etc/rc.conf``:
@ -113,7 +113,7 @@ Add the following lines to the end of ``/etc/rc.conf``:
**Reboot** to apply the config to the system
Enable MPLS Forwarding
~~~~~~~~~~~~~~~~~~~~~~
^^^^^^^^^^^^^^^^^^^^^^
To enable MPLS forwarding on a given interface, use the following
command:
@ -132,7 +132,7 @@ Example:
inet 10.0.1.1 255.255.255.0 mpls
Install rc.d init files
~~~~~~~~~~~~~~~~~~~~~~~
^^^^^^^^^^^^^^^^^^^^^^^
(create them in /etc/rc.d - no example are included at this time with
FRR source)
@ -152,7 +152,7 @@ Example (for zebra - store as ``/etc/rc.d/frr_zebra.sh``)
rc_cmd $1
Enable FRR processes
~~~~~~~~~~~~~~~~~~~~
^^^^^^^^^^^^^^^^^^^^
(Enable the required processes only)

View File

@ -70,7 +70,7 @@ Get FRR, compile it and install it (from Git)
using any packages**
Add frr groups and user
~~~~~~~~~~~~~~~~~~~~~~~
^^^^^^^^^^^^^^^^^^^^^^^
::
@ -81,7 +81,7 @@ Add frr groups and user
sudo usermod -a -G frrvty frr
Download Source, configure and compile it
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
(You may prefer different options on configure statement. These are just
an example.)
@ -116,7 +116,7 @@ an example.)
sudo make install
Create empty FRR configuration files
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
::
@ -135,7 +135,7 @@ Create empty FRR configuration files
sudo install -m 640 -o frr -g frrvty /dev/null /etc/frr/vtysh.conf
Enable IP & IPv6 forwarding
~~~~~~~~~~~~~~~~~~~~~~~~~~~
^^^^^^^^^^^^^^^^^^^^^^^^^^^
Edit ``/etc/sysctl.conf`` and uncomment the following values (ignore the
other settings)
@ -154,7 +154,7 @@ other settings)
system
Install the init.d service
~~~~~~~~~~~~~~~~~~~~~~~~~~
^^^^^^^^^^^^^^^^^^^^^^^^^^
::
@ -164,7 +164,7 @@ Install the init.d service
sudo install -m 644 -o frr -g frr tools/etc/frr/vtysh.conf /etc/frr/vtysh.conf
Enable daemons
~~~~~~~~~~~~~~
^^^^^^^^^^^^^^
| Edit ``/etc/frr/daemons`` and change the value from "no" to "yes" for
those daemons you want to start by systemd.
@ -181,7 +181,7 @@ Enable daemons
isisd=yes
Start the init.d service
~~~~~~~~~~~~~~~~~~~~~~~~
^^^^^^^^^^^^^^^^^^^^^^^^
- /etc/init.d/frr start
- use ``/etc/init.d/frr status`` to check its status.

View File

@ -24,7 +24,7 @@ Get FRR, compile it and install it (from Git)
using any packages**
Add frr groups and user
~~~~~~~~~~~~~~~~~~~~~~~
^^^^^^^^^^^^^^^^^^^^^^^
::
@ -35,7 +35,7 @@ Add frr groups and user
sudo usermod -a -G frrvty frr
Download Source, configure and compile it
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
(You may prefer different options on configure statement. These are just
an example.)
@ -71,7 +71,7 @@ an example.)
sudo make install
Create empty FRR configuration files
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
::
@ -90,7 +90,7 @@ Create empty FRR configuration files
sudo install -m 640 -o frr -g frrvty /dev/null /etc/frr/vtysh.conf
Enable IP & IPv6 forwarding
~~~~~~~~~~~~~~~~~~~~~~~~~~~
^^^^^^^^^^^^^^^^^^^^^^^^^^^
Edit ``/etc/sysctl.conf`` and uncomment the following values (ignore the
other settings)
@ -106,7 +106,10 @@ other settings)
net.ipv6.conf.all.forwarding=1
**Reboot** or use ``sysctl -p`` to apply the same config to the running
system ### Install the init.d service
system
Install the init.d service
^^^^^^^^^^^^^^^^^^^^^^^^^^
::
@ -116,7 +119,7 @@ system ### Install the init.d service
sudo install -m 644 -o frr -g frr tools/etc/frr/vtysh.conf /etc/frr/vtysh.conf
Enable daemons
~~~~~~~~~~~~~~
^^^^^^^^^^^^^^
| Edit ``/etc/frr/daemons`` and change the value from "no" to "yes" for
those daemons you want to start by systemd.
@ -133,7 +136,7 @@ Enable daemons
isisd=yes
Start the init.d service
~~~~~~~~~~~~~~~~~~~~~~~~
^^^^^^^^^^^^^^^^^^^^^^^^
- /etc/init.d/frr start
- use ``/etc/init.d/frr status`` to check its status.

View File

@ -25,7 +25,7 @@ Get FRR, compile it and install it (from Git)
using any packages**
Add frr groups and user
~~~~~~~~~~~~~~~~~~~~~~~
^^^^^^^^^^^^^^^^^^^^^^^
::
@ -36,7 +36,7 @@ Add frr groups and user
sudo usermod -a -G frrvty frr
Download Source, configure and compile it
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
(You may prefer different options on configure statement. These are just
an example.)
@ -72,7 +72,7 @@ an example.)
sudo make install
Create empty FRR configuration files
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
::
@ -91,7 +91,7 @@ Create empty FRR configuration files
sudo install -m 640 -o frr -g frrvty /dev/null /etc/frr/vtysh.conf
Enable IPv4 & IPv6 forwarding
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
Edit ``/etc/sysctl.conf`` and uncomment the following values (ignore the
other settings)
@ -107,7 +107,7 @@ other settings)
net.ipv6.conf.all.forwarding=1
Enable MPLS Forwarding (with Linux Kernel >= 4.5)
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
Edit ``/etc/sysctl.conf`` and the following lines. Make sure to add a
line equal to ``net.mpls.conf.eth0.input`` or each interface used with
@ -122,7 +122,7 @@ MPLS
net.mpls.platform_labels=100000
Add MPLS kernel modules
~~~~~~~~~~~~~~~~~~~~~~~
^^^^^^^^^^^^^^^^^^^^^^^
Add the following lines to ``/etc/modules-load.d/modules.conf``:
@ -136,7 +136,7 @@ Add the following lines to ``/etc/modules-load.d/modules.conf``:
system
Install the systemd service (if rebooted from last step, change directory back to frr directory)
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
::
@ -148,7 +148,7 @@ Install the systemd service (if rebooted from last step, change directory back t
sudo install -m 644 -o frr -g frr tools/etc/frr/vtysh.conf /etc/frr/vtysh.conf
Enable daemons
~~~~~~~~~~~~~~
^^^^^^^^^^^^^^
| Edit ``/etc/frr/daemons`` and change the value from "no" to "yes" for
those daemons you want to start by systemd.
@ -165,12 +165,12 @@ Enable daemons
isisd=yes
Enable the systemd service
~~~~~~~~~~~~~~~~~~~~~~~~~~
^^^^^^^^^^^^^^^^^^^^^^^^^^
- systemctl enable frr
Start the systemd service
~~~~~~~~~~~~~~~~~~~~~~~~~
^^^^^^^^^^^^^^^^^^^^^^^^^
- systemctl start frr
- use ``systemctl status frr`` to check its status.

View File

@ -20,7 +20,7 @@ Get FRR, compile it and install it (from Git)
using any packages**
Add frr groups and user
~~~~~~~~~~~~~~~~~~~~~~~
^^^^^^^^^^^^^^^^^^^^^^^
::
@ -31,7 +31,7 @@ Add frr groups and user
sudo usermod -a -G frrvty frr
Download Source, configure and compile it
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
(You may prefer different options on configure statement. These are just
an example.)
@ -67,7 +67,7 @@ an example.)
sudo make install
Create empty FRR configuration files
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
::
@ -86,7 +86,7 @@ Create empty FRR configuration files
sudo install -m 640 -o frr -g frrvty /dev/null /etc/frr/vtysh.conf
Enable IPv4 & IPv6 forwarding
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
Edit ``/etc/sysctl.conf`` and uncomment the following values (ignore the
other settings)
@ -102,7 +102,7 @@ other settings)
net.ipv6.conf.all.forwarding=1
Enable MPLS Forwarding (with Linux Kernel >= 4.5)
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
Edit ``/etc/sysctl.conf`` and the following lines. Make sure to add a
line equal to ``net.mpls.conf.eth0.input`` or each interface used with
@ -117,7 +117,7 @@ MPLS
net.mpls.platform_labels=100000
Add MPLS kernel modules
~~~~~~~~~~~~~~~~~~~~~~~
^^^^^^^^^^^^^^^^^^^^^^^
Add the following lines to ``/etc/modules-load.d/modules.conf``:
@ -131,7 +131,7 @@ Add the following lines to ``/etc/modules-load.d/modules.conf``:
system
Install the systemd service (if rebooted from last step, change directory back to frr directory)
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
::
@ -143,7 +143,7 @@ Install the systemd service (if rebooted from last step, change directory back t
sudo install -m 644 -o frr -g frr tools/etc/frr/vtysh.conf /etc/frr/vtysh.conf
Enable daemons
~~~~~~~~~~~~~~
^^^^^^^^^^^^^^
| Edit ``/etc/frr/daemons`` and change the value from "no" to "yes" for
those daemons you want to start by systemd.
@ -160,12 +160,12 @@ Enable daemons
isisd=yes
Enable the systemd service
~~~~~~~~~~~~~~~~~~~~~~~~~~
^^^^^^^^^^^^^^^^^^^^^^^^^^
- systemctl enable frr
Start the systemd service
~~~~~~~~~~~~~~~~~~~~~~~~~
^^^^^^^^^^^^^^^^^^^^^^^^^
- systemctl start frr
- use ``systemctl status frr`` to check its status.

View File

@ -1,5 +1,6 @@
************
Building FRR
=========================
************
.. toctree::
:maxdepth: 2

View File

@ -12,26 +12,26 @@ the appropriate function signature (parameters) for the hook.
Example:
.. code-block:: c
:caption: mydaemon.h
:caption: mydaemon.h
#include "hook.h"
DECLARE_HOOK(some_update_event, (struct eventinfo *info), (info))
#include "hook.h"
DECLARE_HOOK(some_update_event, (struct eventinfo *info), (info))
.. code-block:: c
:caption: mydaemon.c
:caption: mydaemon.c
#include "mydaemon.h"
DEFINE_HOOK(some_update_event, (struct eventinfo *info), (info))
...
hook_call(some_update_event, info);
#include "mydaemon.h"
DEFINE_HOOK(some_update_event, (struct eventinfo *info), (info))
...
hook_call(some_update_event, info);
.. code-block:: c
:caption: mymodule.c
:caption: mymodule.c
#include "mydaemon.h"
static int event_handler(struct eventinfo *info);
...
hook_register(some_update_event, event_handler);
#include "mydaemon.h"
static int event_handler(struct eventinfo *info);
...
hook_register(some_update_event, event_handler);
Do not use parameter names starting with "hook", these can collide with
names used by the hook code itself.

View File

@ -1,5 +1,6 @@
libfrr library facilities
=========================
***************************
Library Facilities (libfrr)
***************************
.. toctree::
:maxdepth: 2

View File

@ -6,37 +6,37 @@ Memtypes
FRR includes wrappers arround ``malloc()`` and ``free()`` that count the number
of objects currently allocated, for each of a defined ``MTYPE``.
To this extent, there are `memory groups` and `memory types`. Each memory
To this extent, there are *memory groups* and *memory types*. Each memory
type must belong to a memory group, this is used just to provide some basic
structure.
Example:
.. code-block:: c
:caption: mydaemon.h
:caption: mydaemon.h
DECLARE_MGROUP(MYDAEMON)
DECLARE_MTYPE(MYNEIGHBOR)
DECLARE_MGROUP(MYDAEMON)
DECLARE_MTYPE(MYNEIGHBOR)
.. code-block:: c
:caption: mydaemon.c
:caption: mydaemon.c
DEFINE_MGROUP( MYDAEMON, "My daemon's memory")
DEFINE_MTYPE( MYDAEMON, MYNEIGHBOR, "Neighbor entry")
DEFINE_MTYPE_STATIC(MYDAEMON, MYNEIGHBORNAME, "Neighbor name")
DEFINE_MGROUP( MYDAEMON, "My daemon's memory")
DEFINE_MTYPE( MYDAEMON, MYNEIGHBOR, "Neighbor entry")
DEFINE_MTYPE_STATIC(MYDAEMON, MYNEIGHBORNAME, "Neighbor name")
struct neigh *neighbor_new(const char *name)
{
struct neigh *n = XMALLOC(MYNEIGHBOR, sizeof(*n));
n->name = XSTRDUP(MYNEIGHBORNAME, name);
return n;
}
struct neigh *neighbor_new(const char *name)
{
struct neigh *n = XMALLOC(MYNEIGHBOR, sizeof(*n));
n->name = XSTRDUP(MYNEIGHBORNAME, name);
return n;
}
void neighbor_free(struct neigh *n)
{
XFREE(MYNEIGHBORNAME, n->name);
XFREE(MYNEIGHBOR, n);
}
void neighbor_free(struct neigh *n)
{
XFREE(MYNEIGHBORNAME, n->name);
XFREE(MYNEIGHBOR, n);
}
Definition

View File

@ -100,7 +100,7 @@ Design
------
Modules
~~~~~~~
^^^^^^^
The core design introduces an "nht" (next hop tracking) module in BGP
and "rnh" (recursive nexthop) module in Zebra. The "nht" module
@ -178,7 +178,7 @@ The next hop notification control flow is the following:
zclient message format
~~~~~~~~~~~~~~~~~~~~~~
^^^^^^^^^^^^^^^^^^^^^^
ZEBRA_NEXTHOP_REGISTER and ZEBRA_NEXTHOP_UNREGISTER messages are
encoded in the following way:
@ -233,7 +233,7 @@ encoded in the following way:
BGP data structure
~~~~~~~~~~~~~~~~~~
^^^^^^^^^^^^^^^^^^
Legend:
::
@ -260,7 +260,7 @@ Legend:
Zebra data structure
~~~~~~~~~~~~~~~~~~~~
^^^^^^^^^^^^^^^^^^^^
RNH table::
@ -279,7 +279,7 @@ RNH table::
};
User interface changes
~~~~~~~~~~~~~~~~~~~~~~
^^^^^^^^^^^^^^^^^^^^^^
::
@ -338,7 +338,7 @@ User interface changes
+ no shut all links to r4
Future work
~~~~~~~~~~~
^^^^^^^^^^^
- route-policy for next hop validation (e.g. ignore default route)
- damping for rapid next hop changes

View File

@ -29,7 +29,7 @@ Implementation details
----------------------
Concepts
~~~~~~~~
^^^^^^^^
Segment Routing used 3 differents OPAQUE LSA in OSPF to carry the various
information:
@ -47,7 +47,7 @@ Segment Routing functions (see below) when an Extended Link / Prefix or Router
Information LSA s are received.
Overview
~~~~~~~~
^^^^^^^^
Following files where modified or added:
@ -113,7 +113,7 @@ The figure below shows the relation between the various files:
Figure 1: Overview of Segment Routing interaction
Module interactions
~~~~~~~~~~~~~~~~~~~
^^^^^^^^^^^^^^^^^^^
To process incoming LSA, the code is based on the capability to call `hook()`
functions when LSA are inserted or delete to / from the LSDB and the
@ -186,7 +186,7 @@ Configuration
-------------
Linux Kernel
~~~~~~~~~~~~
^^^^^^^^^^^^
In order to use OSPF Segment Routing, you must setup MPLS data plane. Up to
know, only Linux Kernel version >= 4.5 is supported.
@ -231,7 +231,7 @@ especially the `lo` one. For that purpose, disable RP filtering with:
sysctl -w net.ipv4.conf.lo.rp_filter=0
OSPFd
~~~~~
^^^^^
Here it is a simple example of configuration to enable Segment Routing. Note
that `opaque capability` and `router information` must be set to activate