1 Using the FRRouting Snap
2 ===============================
4 After installing the Snap, the priviledged plug need to be connected:
6 snap connect frr:network-control core:network-control
8 Enabling/Disabling FRRouting Daemons
9 -------------------------------------------
11 By default (at this time), all FRRouting daemons will be enabled
12 on installation. If you want to disable a specific daemon, then use
13 the systemctl commands
15 ie for `ospf6d` (OSPFv3):
17 systemctl disable snap.frr.ospf6d.service
18 systemctl enable snap.frr.ospf6d.service
20 The daemons are: `ripd`, `ripngd`, `ospfd`, `ospf6d`, `isisd`, `bgpd`,
21 `pimd`, `pim6d`, `ldpd`, `eigrpd`, `babeld`, `nhrpd`, `bfdd`, `vrrpd`,
22 `pbrd`, `pathd`, `fabricd`, `staticd`, `zebra`
24 Commands defined by this snap
25 -----------------------------
28 FRRouting VTY Shell (configuration tool)
30 Returns output of `zebra --version` to display version and configured
33 Returns this document `cat README_usage.md`
35 Allows to enable `FPM` and/or disable RPKIi module. See Module section below
37 and for debugging defined at this time (May get removed later - do not
38 depend on them). These are mainly intended to debug the Snap
41 Starts zebra daemon in foreground
43 Starts ripd daemon in foreground
45 Starts ripng daemon in foreground
47 Starts ospfd daemon in foreground
49 Starts ospf6d daemon in foreground
51 Starts isisd daemon in foreground
53 Starts bgpd daemon in foreground
55 Starts pimd daemon in foreground
57 Starts pim6d daemon in foreground
59 Starts ldpd daemon in foreground
61 Starts nhrpd daemon in foreground
63 Starts babeld daemon in foreground
65 Starts eigrpd daemon in foreground
67 Starts pbrd daemon in foreground
68 - `frr.staticd-debug`:
69 Starts staticd daemon in foreground
71 Starts bfdd daemon in foreground
72 - `frr.fabricd-debug`:
73 Starts fabricd daemon in foreground
77 The MPLS forwarding requires a Linux Kernel version 4.5 or newer and
78 specific MPLS kernel modules loaded. It will be auto-detected by
79 FRR. You can check the detected setup with the `show mpls status`
80 command from within `frr.vtysh`
82 The following kernel modules `mpls-router` and `mpls-iptunnel`
83 need to be loaded. On Ubuntu 16.04, this can be done by editing
84 '/etc/modules-load.d/modules.conf' and add the following lines:
86 # Load MPLS Kernel Modules
90 For other distributions, please check the documentation on loading
91 modules. You need to either reboot or use `modprobe` to manually load
92 the modules as well before MPLS will be available.
94 In addition to this, the MPLS Label-Processing needs to be enabled
95 with `sysctl` on the required interfaces. Assuming the interfaces
96 are named `eth0`, `eth1` and `eth2`, then the additional lines in
97 `/etc/sysctl.conf` will enable it on a Ubuntu 16.04 system:
99 # Enable MPLS Label processing on all interfaces
100 net.mpls.conf.eth0.input=1
101 net.mpls.conf.eth1.input=1
102 net.mpls.conf.eth2.input=1
103 net.mpls.platform_labels=100000
105 These settings require either a reboot or a manual configuration with
110 The `frr.set` allows to turn FPM module ond the RPKI module on or off.
112 frr.set fpm {disable|protobuf|netlink}
114 Disables FPM or enables FPM with selected mode (default: disabled)
116 By default, the FPM module is disabled, but installed with netlink and
117 protobuf support. To enable the FPM module, use the `frr.set fpm protobuf`
118 or `frr.set fpm netlink` command. The command will only enable the mode
119 for the next restart of zebra. Please reboot or restart zebra after
120 changing the mode to become effective.
122 frr.set rpki {enable|disable}
124 Disables or enables BGP RPKI (default: enabled)
126 By default, the RPKI module is enabled. To disable the RPKI module
127 use the `frr.set rpki disable` command. The command will only enable
128 the module after the next restart of the bgp daemon. Please reboot or
129 restart bgpd after changing the mode to become effective.
130 (Normally, there is no need to disable the module as it has no effect
131 if there are no RPKI configurations in BGP)
135 - frr.vtysh displays `--MORE--` on long output. How to suppress this?
136 - Define `VTYSH_PAGER` to `cat` (default is `more`). (Ie add
137 `export VTYSH_PAGER=cat` to the end of your `.profile`)
139 - bfdd / ospfd / ospf6d / nhrpd are not running after installation
140 - Installing a new snap starts the daemons, but at this time they
141 may not have the required privileged access. Make sure you
142 issue the `snap connect` command as given above (can be verified
143 with `snap interfaces`) and **THEN** restart the daemons (or
145 This is a limitation of any snap package at this time which
146 requires privileged interfaces (ie to manipulate routing tables)
148 - Can I run vtysh directly without the "frr." prefix?
149 - Yes, enable the vtysh alias in the frr snap package by:
150 sudo snap alias frr vtysh
155 The source for this SNAP is available as part of the FRRouting
156 Source Code Distribution under `GPLv2 or later`
158 <https://github.com/frrouting/frr.git>
160 Instructions for rebuilding the snap are in `snapcraft/README.snap_build.md`
162 *Please checkout the desired branch before following the instructions
163 as they may have changed between versions of FRR*
165 Official Webpage for FRR
166 ========================
168 Official webpage for FRR is at <https://www.frrouting.org/>
173 Please send Feedback about this snap to Martin Winter at
174 `mwinter@opensourcerouting.org`