]> git.proxmox.com Git - mirror_frr.git/blame - doc/developer/building-frr-for-ubuntu1404.rst
Merge pull request #3899 from ton31337/fix/remove_private_as_with_local_as
[mirror_frr.git] / doc / developer / building-frr-for-ubuntu1404.rst
CommitLineData
08440234
QY
1Ubuntu 14.04 LTS
2================
278fb111 3
08440234
QY
4This document describes installation from source. If you want to build a
5``deb``, see :ref:`packaging-debian`.
ae32b152 6
08440234
QY
7Installing Dependencies
8-----------------------
278fb111 9
08440234 10.. code-block:: console
d1890d04 11
08440234 12 apt-get update
b0252580 13 apt-get install \
7d9a2e6d 14 git autoconf automake libtool make libreadline-dev texinfo \
08440234
QY
15 pkg-config libpam0g-dev libjson-c-dev bison flex python-pytest \
16 libc-ares-dev python3-dev python3-sphinx install-info build-essential \
17 libsnmp-dev perl
eb651bbc 18
fc5a4adc
RW
19.. include:: building-libyang.rst
20
08440234
QY
21Building & Installing FRR
22-------------------------
d1890d04 23
08440234 24Add FRR user and groups
75ca3b11 25^^^^^^^^^^^^^^^^^^^^^^^
eb651bbc 26
08440234 27.. code-block:: console
278fb111 28
79871dbf 29 sudo groupadd -r -g 92 frr
eb651bbc 30 sudo groupadd -r -g 85 frrvty
02f3b051 31 sudo adduser --system --ingroup frr --home /var/run/frr/ \
278fb111 32 --gecos "FRR suite" --shell /sbin/nologin frr
02f3b051 33 sudo usermod -a -G frrvty frr
278fb111 34
08440234
QY
35Compile
36^^^^^^^
d1890d04 37
08440234 38.. include:: include-compile.rst
eb651bbc 39
08440234
QY
40Install FRR configuration files
41^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
d1890d04 42
08440234
QY
43.. code-block:: console
44
45 sudo install -m 775 -o frr -g frr -d /var/log/frr
46 sudo install -m 775 -o frr -g frrvty -d /etc/frr
47 sudo install -m 640 -o frr -g frrvty tools/etc/frr/vtysh.conf /etc/frr/vtysh.conf
48 sudo install -m 640 -o frr -g frr tools/etc/frr/frr.conf /etc/frr/frr.conf
49 sudo install -m 640 -o frr -g frr tools/etc/frr/daemons.conf /etc/frr/daemons.conf
50 sudo install -m 640 -o frr -g frr tools/etc/frr/daemons /etc/frr/daemons
51
52Tweak sysctls
53^^^^^^^^^^^^^
54
55Some sysctls need to be changed in order to enable IPv4/IPv6 forwarding and
56MPLS (if supported by your platform). If your platform does not support MPLS,
57skip the MPLS related configuration in this section.
58
59Edit :file:`/etc/sysctl.conf` and uncomment the following values (ignore the
60other settings):
d1890d04
QY
61
62::
278fb111 63
08440234
QY
64 # Uncomment the next line to enable packet forwarding for IPv4
65 net.ipv4.ip_forward=1
66
67 # Uncomment the next line to enable packet forwarding for IPv6
68 # Enabling this option disables Stateless Address Autoconfiguration
69 # based on Router Advertisements for this host
70 net.ipv6.conf.all.forwarding=1
71
72Reboot or use ``sysctl -p`` to apply the same config to the running system.
73
74Add MPLS kernel modules
75"""""""""""""""""""""""
76
77.. warning::
78
79 MPLS is not supported on Ubuntu 14.04 with the default kernel. MPLS requires
80 kernel 4.5 or higher. LDPD can be built, but may have limited use without
81 MPLS. For an updated Ubuntu Kernel, see
82 http://kernel.ubuntu.com/~kernel-ppa/mainline/
83
84Ubuntu 18.04 ships with kernel 4.15. MPLS modules are present by default. To
85enable, add the following lines to :file:`/etc/modules-load.d/modules.conf`:
278fb111 86
d1890d04
QY
87::
88
08440234
QY
89 # Load MPLS Kernel Modules
90 mpls_router
91 mpls_iptunnel
92
93
94And load the kernel modules on the running system:
95
96.. code-block:: console
97
98 sudo modprobe mpls-router mpls-iptunnel
99
100Enable MPLS Forwarding
101""""""""""""""""""""""
278fb111 102
08440234
QY
103Edit :file:`/etc/sysctl.conf` and the following lines. Make sure to add a line
104equal to :file:`net.mpls.conf.eth0.input` for each interface used with MPLS.
278fb111 105
08440234
QY
106::
107
108 # Enable MPLS Label processing on all interfaces
109 net.mpls.conf.eth0.input=1
110 net.mpls.conf.eth1.input=1
111 net.mpls.conf.eth2.input=1
112 net.mpls.platform_labels=100000
75ca3b11
QY
113
114Install the init.d service
115^^^^^^^^^^^^^^^^^^^^^^^^^^
d1890d04 116
08440234 117.. code-block:: console
500e13fe 118
08440234 119 sudo install -m 755 tools/frr /etc/init.d/frr
500e13fe 120
d1890d04 121Enable daemons
75ca3b11 122^^^^^^^^^^^^^^
d1890d04 123
08440234
QY
124Open :file:`/etc/frr/daemons` with your text editor of choice. Look for the
125section with ``watchfrr_enable=...`` and ``zebra=...`` etc. Enable the daemons
126as required by changing the value to ``yes``.
d1890d04
QY
127
128Start the init.d service
75ca3b11 129^^^^^^^^^^^^^^^^^^^^^^^^
d1890d04 130
08440234
QY
131.. code-block:: console
132
133 /etc/init.d/frr start
134
135Use ``/etc/init.d/frr status`` to check its status.