]>
Commit | Line | Data |
---|---|---|
447a8fe9 | 1 | Using the FRRouting Snap |
3ab11ecc MW |
2 | =============================== |
3 | ||
4 | After installing the Snap, the priviledged plug need to be connected: | |
5 | ||
f4c14c3a | 6 | snap connect frr:network-control core:network-control |
3ab11ecc | 7 | |
447a8fe9 | 8 | Enabling/Disabling FRRouting Daemons |
3ab11ecc MW |
9 | ------------------------------------------- |
10 | ||
447a8fe9 | 11 | By default (at this time), all FRRouting daemons will be enabled |
3ab11ecc MW |
12 | on installation. If you want to disable a specific daemon, then use |
13 | the systemctl commands | |
14 | ||
15 | ie for `ospf6d` (OSPFv3): | |
16 | ||
17 | systemctl disable snap.frr.ospf6d.service | |
18 | systemctl enable snap.frr.ospf6d.service | |
19 | ||
20 | The daemons are: `ripd`, `ripngd`, `ospfd`, `ospf6d`, `isisd`, `bgpd`, | |
64a6fb03 | 21 | `pimd`, `ldpd`, `eigrpd`, `babeld`, `nhrpd`, `bfdd`, `zebra` |
3ab11ecc MW |
22 | |
23 | Commands defined by this snap | |
24 | ----------------------------- | |
25 | ||
26 | - `frr.vtysh`: | |
447a8fe9 | 27 | FRRouting VTY Shell (configuration tool) |
3ab11ecc MW |
28 | - `frr.version`: |
29 | Returns output of `zebra --version` to display version and configured | |
30 | options | |
31 | - `frr.readme`: | |
32 | Returns this document `cat README_usage.md` | |
d851b2fc MW |
33 | - `frr.set`: |
34 | Allows to enable `FPM` module. See FPM section below | |
3ab11ecc MW |
35 | |
36 | and for debugging defined at this time (May get removed later - do not | |
37 | depend on them). These are mainly intended to debug the Snap | |
38 | ||
39 | - `frr.zebra-debug`: | |
40 | Starts zebra daemon in foreground | |
41 | - `frr.ripd-debug`: | |
42 | Starts ripd daemon in foreground | |
43 | - `frr.ripngd-debug`: | |
44 | Starts ripng daemon in foreground | |
45 | - `frr.ospfd-debug`: | |
46 | Starts ospfd daemon in foreground | |
47 | - `frr.ospf6d-debug`: | |
48 | Starts ospf6d daemon in foreground | |
49 | - `frr.isisd-debug`: | |
50 | Starts isisd daemon in foreground | |
51 | - `frr.bgpd-debug`: | |
52 | Starts bgpd daemon in foreground | |
53 | - `frr.pimd-debug`: | |
54 | Starts pimd daemon in foreground | |
55 | - `frr.ldpd-debug`: | |
64a6fb03 MW |
56 | Starts ldpd daemon in foreground |
57 | - `frr.nhrpd-debug`: | |
58 | Starts nhrpd daemon in foreground | |
59 | - `frr.babeld-debug`: | |
60 | Starts babeld daemon in foreground | |
61 | - `frr.eigrpd-debug`: | |
62 | Starts eigrpd daemon in foreground | |
63 | - `frr.pbrd-debug`: | |
64 | Starts pbrd daemon in foreground | |
65 | - `frr.staticd-debug`: | |
66 | Starts staticd daemon in foreground | |
67 | - `frr.bfdd-debug`: | |
68 | Starts bfdd daemon in foreground | |
3ab11ecc | 69 | |
f4c14c3a MW |
70 | MPLS (LDP) |
71 | ---------- | |
72 | The MPLS forwarding requires a Linux Kernel version 4.5 or newer and | |
73 | specific MPLS kernel modules loaded. It will be auto-detected by | |
74 | FRR. You can check the detected setup with the `show mpls status` | |
75 | command from within `frr.vtysh` | |
76 | ||
77 | The following kernel modules `mpls-router` and `mpls-iptunnel` | |
78 | need to be loaded. On Ubuntu 16.04, this can be done by editing | |
79 | '/etc/modules-load.d/modules.conf' and add the following lines: | |
80 | ||
81 | # Load MPLS Kernel Modules | |
82 | mpls-router | |
83 | mpls-iptunnel | |
84 | ||
85 | For other distributions, please check the documentation on loading | |
86 | modules. You need to either reboot or use `modprobe` to manually load | |
87 | the modules as well before MPLS will be available. | |
88 | ||
89 | In addition to this, the MPLS Label-Processing needs to be enabled | |
90 | with `sysctl` on the required interfaces. Assuming the interfaces | |
91 | are named `eth0`, `eth1` and `eth2`, then the additional lines in | |
92 | `/etc/sysctl.conf` will enable it on a Ubuntu 16.04 system: | |
93 | ||
94 | # Enable MPLS Label processing on all interfaces | |
95 | net.mpls.conf.eth0.input=1 | |
96 | net.mpls.conf.eth1.input=1 | |
97 | net.mpls.conf.eth2.input=1 | |
98 | net.mpls.platform_labels=100000 | |
99 | ||
100 | These settings require either a reboot or a manual configuration with | |
101 | `sysctl` as well. | |
102 | ||
d851b2fc MW |
103 | FPM Module |
104 | ---------- | |
105 | The `frr.set` allows to turn FPM module on or off. | |
106 | ||
107 | frr.set fpm {disable|protobuf|netlink} | |
108 | ||
109 | Disables FPM or enables FPM with selected mode | |
110 | ||
111 | By default, the FPM module is disabled, but installed with netlink and | |
112 | protobuf support. To enable the FPM module, use the `frr.set fpm protobuf` | |
113 | or `frr.set fpm netlink` command. The command will only enable the mode | |
114 | for the next restart of zebra. Please reboot or restart zebra after | |
115 | changing the mode to become effective. | |
116 | ||
3ab11ecc MW |
117 | FAQ |
118 | --- | |
119 | - frr.vtysh displays `--MORE--` on long output. How to suppress this? | |
120 | - Define `VTYSH_PAGER` to `cat` (default is `more`). (Ie add | |
121 | `export VTYSH_PAGER=cat` to the end of your `.profile`) | |
122 | ||
64a6fb03 | 123 | - bfdd / ospfd / ospf6d / nhrpd are not running after installation |
7ce9737d | 124 | - Installing a new snap starts the daemons, but at this time they |
f8c7b8a4 | 125 | may not have the required privileged access. Make sure you |
7ce9737d JAG |
126 | issue the `snap connect` command as given above (can be verified |
127 | with `snap interfaces`) and **THEN** restart the daemons (or | |
128 | reboot the system). | |
129 | This is a limitation of any snap package at this time which | |
f8c7b8a4 | 130 | requires privileged interfaces (ie to manipulate routing tables) |
7ce9737d JAG |
131 | |
132 | - Can I run vtysh directly without the "frr." prefix? | |
133 | - Yes, enable the vtysh alias in the frr snap package by: | |
134 | sudo snap alias frr vtysh | |
f4c14c3a | 135 | |
3ab11ecc MW |
136 | Sourcecode available |
137 | ==================== | |
138 | ||
447a8fe9 | 139 | The source for this SNAP is available as part of the FRRouting |
f4c14c3a MW |
140 | Source Code Distribution under `GPLv2 or later` |
141 | ||
142 | <https://github.com/frrouting/frr.git> | |
143 | ||
144 | Instructions for rebuilding the snap are in `snapcraft/README.snap_build.md` | |
3ab11ecc | 145 | |
f4c14c3a MW |
146 | *Please checkout the desired branch before following the instructions |
147 | as they may have changed between versions of FRR* | |
3ab11ecc | 148 | |
f4c14c3a MW |
149 | Official Webpage for FRR |
150 | ======================== | |
151 | ||
152 | Official webpage for FRR is at <https://www.frrouting.org/> | |
3ab11ecc MW |
153 | |
154 | Feedback welcome | |
155 | ================ | |
156 | ||
157 | Please send Feedback about this snap to Martin Winter at | |
158 | `mwinter@opensourcerouting.org` |