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`, `ldpd`, `eigrpd`, `babeld`, `nhrpd`, `bfdd`, `vrrpd`, `pbrd`,
22 `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 ldpd daemon in foreground
59 Starts nhrpd daemon in foreground
61 Starts babeld daemon in foreground
63 Starts eigrpd daemon in foreground
65 Starts pbrd daemon in foreground
66 - `frr.staticd-debug`:
67 Starts staticd daemon in foreground
69 Starts bfdd daemon in foreground
70 - `frr.fabricd-debug`:
71 Starts fabricd daemon in foreground
75 The MPLS forwarding requires a Linux Kernel version 4.5 or newer and
76 specific MPLS kernel modules loaded. It will be auto-detected by
77 FRR. You can check the detected setup with the `show mpls status`
78 command from within `frr.vtysh`
80 The following kernel modules `mpls-router` and `mpls-iptunnel`
81 need to be loaded. On Ubuntu 16.04, this can be done by editing
82 '/etc/modules-load.d/modules.conf' and add the following lines:
84 # Load MPLS Kernel Modules
88 For other distributions, please check the documentation on loading
89 modules. You need to either reboot or use `modprobe` to manually load
90 the modules as well before MPLS will be available.
92 In addition to this, the MPLS Label-Processing needs to be enabled
93 with `sysctl` on the required interfaces. Assuming the interfaces
94 are named `eth0`, `eth1` and `eth2`, then the additional lines in
95 `/etc/sysctl.conf` will enable it on a Ubuntu 16.04 system:
97 # Enable MPLS Label processing on all interfaces
98 net.mpls.conf.eth0.input=1
99 net.mpls.conf.eth1.input=1
100 net.mpls.conf.eth2.input=1
101 net.mpls.platform_labels=100000
103 These settings require either a reboot or a manual configuration with
108 The `frr.set` allows to turn FPM module ond the RPKI module on or off.
110 frr.set fpm {disable|protobuf|netlink}
112 Disables FPM or enables FPM with selected mode (default: disabled)
114 By default, the FPM module is disabled, but installed with netlink and
115 protobuf support. To enable the FPM module, use the `frr.set fpm protobuf`
116 or `frr.set fpm netlink` command. The command will only enable the mode
117 for the next restart of zebra. Please reboot or restart zebra after
118 changing the mode to become effective.
120 frr.set rpki {enable|disable}
122 Disables or enables BGP RPKI (default: enabled)
124 By default, the RPKI module is enabled. To disable the RPKI module
125 use the `frr.set rpki disable` command. The command will only enable
126 the module after the next restart of the bgp daemon. Please reboot or
127 restart bgpd after changing the mode to become effective.
128 (Normally, there is no need to disable the module as it has no effect
129 if there are no RPKI configurations in BGP)
133 - frr.vtysh displays `--MORE--` on long output. How to suppress this?
134 - Define `VTYSH_PAGER` to `cat` (default is `more`). (Ie add
135 `export VTYSH_PAGER=cat` to the end of your `.profile`)
137 - bfdd / ospfd / ospf6d / nhrpd are not running after installation
138 - Installing a new snap starts the daemons, but at this time they
139 may not have the required privileged access. Make sure you
140 issue the `snap connect` command as given above (can be verified
141 with `snap interfaces`) and **THEN** restart the daemons (or
143 This is a limitation of any snap package at this time which
144 requires privileged interfaces (ie to manipulate routing tables)
146 - Can I run vtysh directly without the "frr." prefix?
147 - Yes, enable the vtysh alias in the frr snap package by:
148 sudo snap alias frr vtysh
153 The source for this SNAP is available as part of the FRRouting
154 Source Code Distribution under `GPLv2 or later`
156 <https://github.com/frrouting/frr.git>
158 Instructions for rebuilding the snap are in `snapcraft/README.snap_build.md`
160 *Please checkout the desired branch before following the instructions
161 as they may have changed between versions of FRR*
163 Official Webpage for FRR
164 ========================
166 Official webpage for FRR is at <https://www.frrouting.org/>
171 Please send Feedback about this snap to Martin Winter at
172 `mwinter@opensourcerouting.org`