I will give an example of installing Quagga in Ubuntu Server 18.04 (bionic).
Run the installation command:
1 | sudo apt install quagga |
I have installed version 1.2.4 and such packages: quagga quagga-bgpd quagga-core quagga-isisd quagga-ospf6d quagga-ospfd quagga-pimd quagga-ripd quagga-ripngd.
The services in /etc/systemd/system/multi-user.target.wants/ were configured, the user quagga and the group quagga, quaggatvy were created.
You can also install the documentation (you can find it in /usr/share/doc/quagga-doc):
1 | sudo apt install quagga-doc |
After installing quagga, we do not forget to enable packet forwarding and, if necessary, disable rp_filter, uncomment it in /etc/sysctl.conf (for IPv4):
1 | net.ipv4.ip_forward=1 |
Copy the sample configuration files and change to fit your needs:
1 2 3 4 5 6 | cp /usr/share/doc/quagga-core/examples/vtysh.conf.sample /etc/quagga/vtysh.conf cp /usr/share/doc/quagga-core/examples/zebra.conf.sample /etc/quagga/zebra.conf cp /usr/share/doc/quagga-core/examples/bgpd.conf.sample /etc/quagga/bgpd.conf sudo chown quagga:quagga /etc/quagga/*.conf sudo chown quagga:quaggavty /etc/quagga/vtysh.conf sudo chmod 640 /etc/quagga/*.conf |
To write logs:
1 2 3 4 | mkdir /var/log/quagga/ chown quagga:quagga /var/log/quagga/ touch /var/log/zebra.log chown quagga:quagga/var/log/zebra.log |
Run the necessary services:
1 2 3 4 | sudo service zebra start sudo service zebra status sudo service bgpd start sudo service bgpd status |
Check whether the services start at system startup:
1 2 3 4 | sudo systemctl is-enabled zebra.service sudo systemctl is-enabled bgpd.service sudo systemctl enable zebra.service sudo systemctl enable bgpd.service |
Disable unnecessary services:
1 2 3 4 5 6 7 8 9 10 11 12 13 | systemctl status ospfd systemctl is-enabled ospfd systemctl is-enabled ospf6d systemctl is-enabled ripd systemctl is-enabled ripngd systemctl is-enabled isisd systemctl disable ospfd systemctl disable ospf6d systemctl disable ripd systemctl disable ripngd systemctl disable isisd |
Connect to the vtysh, bgpd and zebra terminal as follows:
1 2 3 | sudo vtysh sudo telnet localhost 2605 sudo telnet localhost 2601 |
See also my articles:
- Setting up BGP in Quagga
- Configuring OSPF in Quagga
- Quagga. Setting up logging
- Installing and configuring BIRD (BGP)
- Solution ZEBRA: netlink-listen recvmsg overrun: No buffer space available
- Installing FRRouting on Ubuntu 18.04