Quagga

Differences between revisions 1 and 30 (spanning 29 versions)
Revision 1 as of 2008-01-22 07:24:06
Size: 40
Editor: 123-2-46-70
Comment:
Revision 30 as of 2017-07-30 11:09:02
Size: 5373
Comment: Jonathan Ferguson
Deletions are marked like this. Additions are marked like this.
Line 1: Line 1:
Describe JonathanFerguson/Quagga here. <<BR>>Install the Quagga routing daemon:
<<BR>>`sudo apt-get install quagga`
<<BR>>
<<BR>>Enable IPv4 and IPv6 Unicast Forwarding:
<<BR>>`echo "net.ipv4.conf.all.forwarding=1" | sudo tee -a /etc/sysctl.conf`
<<BR>>`echo "net.ipv4.conf.default.forwarding=1" | sudo tee -a /etc/sysctl.conf`
<<BR>>`sed 's/#net.ipv6.conf.all.forwarding=1/net.ipv6.conf.all.forwarding=1/g' /etc/sysctl.conf | sudo tee /etc/sysctl.conf`
<<BR>>`echo "net.ipv6.conf.default.forwarding=1" | sudo tee -a /etc/sysctl.conf`
<<BR>>`sudo sysctl -p`
<<BR>>
<<BR>>Create the configuration files:
<<BR>>`sudo nano `[[attachment:babeld.conf|/etc/quagga/babeld.conf]]
<<BR>>`sudo nano `[[attachment:bgpd.conf|/etc/quagga/bgpd.conf]]
<<BR>>`sudo nano `[[attachment:isisd.conf|/etc/quagga/isisd.conf]]
<<BR>>`sudo nano `[[attachment:ospf6d.conf|/etc/quagga/ospf6d.conf]]
<<BR>>`sudo nano `[[attachment:ospfd.conf|/etc/quagga/ospfd.conf]]
<<BR>>`sudo nano `[[attachment:pimd.conf|/etc/quagga/pimd.conf]]
<<BR>>`sudo nano `[[attachment:ripd.conf|/etc/quagga/ripd.conf]]
<<BR>>`sudo nano `[[attachment:ripngd.conf|/etc/quagga/ripngd.conf]]
<<BR>>`sudo nano `[[attachment:vtysh.conf|/etc/quagga/vtysh.conf]]
<<BR>>`sudo nano `[[attachment:zebra.conf|/etc/quagga/zebra.conf]]
<<BR>>
<<BR>>Change the owner and the mode of the configuration files:
<<BR>>`sudo chown quagga:quagga /etc/quagga/babeld.conf && sudo chmod 640 /etc/quagga/babeld.conf`
<<BR>>`sudo chown quagga:quagga /etc/quagga/bgpd.conf && sudo chmod 640 /etc/quagga/bgpd.conf`
<<BR>>`sudo chown quagga:quagga /etc/quagga/isisd.conf && sudo chmod 640 /etc/quagga/isisd.conf`
<<BR>>`sudo chown quagga:quagga /etc/quagga/ospf6d.conf && sudo chmod 640 /etc/quagga/ospf6d.conf`
<<BR>>`sudo chown quagga:quagga /etc/quagga/ospfd.conf && sudo chmod 640 /etc/quagga/ospfd.conf`
<<BR>>`sudo chown quagga:quagga /etc/quagga/pimd.conf && sudo chmod 640 /etc/quagga/pimd.conf`
<<BR>>`sudo chown quagga:quagga /etc/quagga/ripd.conf && sudo chmod 640 /etc/quagga/ripd.conf`
<<BR>>`sudo chown quagga:quagga /etc/quagga/ripngd.conf && sudo chmod 640 /etc/quagga/ripngd.conf`
<<BR>>`sudo chown quagga:quaggavty /etc/quagga/vtysh.conf && sudo chmod 660 /etc/quagga/vtysh.conf`
<<BR>>`sudo chown quagga:quagga /etc/quagga/zebra.conf && sudo chmod 640 /etc/quagga/zebra.conf`
<<BR>>
<<BR>>Edit which routing protocols are to run:
<<BR>>`sudo nano /etc/quagga/daemons`
<<BR>>zebra=''yes''
<<BR>>bgpd=''yes''
<<BR>>ospfd=''yes''
<<BR>>ospf6d=''yes''
<<BR>>ripd=''yes''
<<BR>>ripngd=''yes''
<<BR>>isisd=''yes''
<<BR>>babeld=''yes''
<<BR>>__How to prevent a daemon from running since Quagga version 1.1.1__
<<BR>>`sudo unlink /etc/systemd/system/network.target.wants/bgpd.service`
<<BR>>`sudo unlink /etc/systemd/system/network.target.wants/isisd.service`
<<BR>>`sudo unlink /etc/systemd/system/network.target.wants/ospf6d.service`
<<BR>>`sudo unlink /etc/systemd/system/network.target.wants/ospfd.service`
<<BR>>`sudo unlink /etc/systemd/system/network.target.wants/pimd.service`
<<BR>>`sudo unlink /etc/systemd/system/network.target.wants/ripd.service`
<<BR>>`sudo unlink /etc/systemd/system/network.target.wants/ripngd.service`
<<BR>>`sudo unlink /etc/systemd/system/network.target.wants/zebra.service`
<<BR>>__How to reinstate a daemon to run since Quagga version 1.1.1__
<<BR>>`sudo ln -st /etc/systemd/system/network.target.wants /lib/systemd/system/bgpd.service`
<<BR>>`sudo ln -st /etc/systemd/system/network.target.wants /lib/systemd/system/isisd.service`
<<BR>>`sudo ln -st /etc/systemd/system/network.target.wants /lib/systemd/system/ospf6d.service`
<<BR>>`sudo ln -st /etc/systemd/system/network.target.wants /lib/systemd/system/ospfd.service`
<<BR>>`sudo ln -st /etc/systemd/system/network.target.wants /lib/systemd/system/pimd.service`
<<BR>>`sudo ln -st /etc/systemd/system/network.target.wants /lib/systemd/system/ripd.service`
<<BR>>`sudo ln -st /etc/systemd/system/network.target.wants /lib/systemd/system/ripngd.service`
<<BR>>`sudo ln -st /etc/systemd/system/network.target.wants /lib/systemd/system/zebra.service`
<<BR>>
<<BR>>Edit telnet access and the retaining of routes over restarts — necessary for Quagga versions prior to 1.1.1:
<<BR>>`sudo nano /etc/quagga/debian.conf`
<<BR>>vtysh_enable=yes
<<BR>>zebra_options=" --daemon -A 127.0.0.1 ''-P 2601'' ''-u quagga'' ''-g quagga''"
<<BR>>bgpd_options=" --daemon -A 127.0.0.1 ''-P 2605'' ''-u quagga'' ''-g quagga'' ''--retain'' ''-p 179''"
<<BR>>ospfd_options=" --daemon -A 127.0.0.1 ''-P 2604'' ''-u quagga'' ''-g quagga''"
<<BR>>ospf6d_options=" --daemon -A ::1 ''-P 2606'' ''-u quagga'' ''-g quagga''"
<<BR>>ripd_options=" --daemon -A 127.0.0.1 ''-P 2602'' ''-u quagga'' ''-g quagga''"
<<BR>>ripngd_options=" --daemon -A ::1 ''-P 2603'' ''-u quagga'' ''-g quagga''"
<<BR>>isisd_options=" --daemon -A 127.0.0.1 ''-P 2608'' ''-u quagga'' ''-g quagga''"
<<BR>>babeld_options=" --daemon -A 127.0.0.1 ''-P 2609'' ''-u quagga'' ''-g quagga''"
<<BR>>
<<BR>>Restart the daemon:
<<BR>>`sudo /etc/init.d/quagga restart || sudo systemctl restart zebra`
<<BR>>
<<BR>>
----
''[[http://Jonathan-Ferguson.tk/|Jonathan Ferguson]], [[https://wiki.edubuntu.org/JonathanFerguson|Ubuntu Wiki]], [[https://wiki.edubuntu.org/JonathanFerguson/Quagga|Quagga Routing Daemon]], [[https://wiki.edubuntu.org/JonathanFerguson/Quagga]]''
----


Install the Quagga routing daemon:
sudo apt-get install quagga

Enable IPv4 and IPv6 Unicast Forwarding:
echo "net.ipv4.conf.all.forwarding=1" | sudo tee -a /etc/sysctl.conf
echo "net.ipv4.conf.default.forwarding=1" | sudo tee -a /etc/sysctl.conf
sed 's/#net.ipv6.conf.all.forwarding=1/net.ipv6.conf.all.forwarding=1/g' /etc/sysctl.conf | sudo tee /etc/sysctl.conf
echo "net.ipv6.conf.default.forwarding=1" | sudo tee -a /etc/sysctl.conf
sudo sysctl -p

Create the configuration files:
sudo nano /etc/quagga/babeld.conf
sudo nano /etc/quagga/bgpd.conf
sudo nano /etc/quagga/isisd.conf
sudo nano /etc/quagga/ospf6d.conf
sudo nano /etc/quagga/ospfd.conf
sudo nano /etc/quagga/pimd.conf
sudo nano /etc/quagga/ripd.conf
sudo nano /etc/quagga/ripngd.conf
sudo nano /etc/quagga/vtysh.conf
sudo nano /etc/quagga/zebra.conf

Change the owner and the mode of the configuration files:
sudo chown quagga:quagga /etc/quagga/babeld.conf && sudo chmod 640 /etc/quagga/babeld.conf
sudo chown quagga:quagga /etc/quagga/bgpd.conf && sudo chmod 640 /etc/quagga/bgpd.conf
sudo chown quagga:quagga /etc/quagga/isisd.conf && sudo chmod 640 /etc/quagga/isisd.conf
sudo chown quagga:quagga /etc/quagga/ospf6d.conf && sudo chmod 640 /etc/quagga/ospf6d.conf
sudo chown quagga:quagga /etc/quagga/ospfd.conf && sudo chmod 640 /etc/quagga/ospfd.conf
sudo chown quagga:quagga /etc/quagga/pimd.conf && sudo chmod 640 /etc/quagga/pimd.conf
sudo chown quagga:quagga /etc/quagga/ripd.conf && sudo chmod 640 /etc/quagga/ripd.conf
sudo chown quagga:quagga /etc/quagga/ripngd.conf && sudo chmod 640 /etc/quagga/ripngd.conf
sudo chown quagga:quaggavty /etc/quagga/vtysh.conf && sudo chmod 660 /etc/quagga/vtysh.conf
sudo chown quagga:quagga /etc/quagga/zebra.conf && sudo chmod 640 /etc/quagga/zebra.conf

Edit which routing protocols are to run:
sudo nano /etc/quagga/daemons
zebra=yes
bgpd=yes
ospfd=yes
ospf6d=yes
ripd=yes
ripngd=yes
isisd=yes
babeld=yes
How to prevent a daemon from running since Quagga version 1.1.1
sudo unlink /etc/systemd/system/network.target.wants/bgpd.service
sudo unlink /etc/systemd/system/network.target.wants/isisd.service
sudo unlink /etc/systemd/system/network.target.wants/ospf6d.service
sudo unlink /etc/systemd/system/network.target.wants/ospfd.service
sudo unlink /etc/systemd/system/network.target.wants/pimd.service
sudo unlink /etc/systemd/system/network.target.wants/ripd.service
sudo unlink /etc/systemd/system/network.target.wants/ripngd.service
sudo unlink /etc/systemd/system/network.target.wants/zebra.service
How to reinstate a daemon to run since Quagga version 1.1.1
sudo ln -st /etc/systemd/system/network.target.wants /lib/systemd/system/bgpd.service
sudo ln -st /etc/systemd/system/network.target.wants /lib/systemd/system/isisd.service
sudo ln -st /etc/systemd/system/network.target.wants /lib/systemd/system/ospf6d.service
sudo ln -st /etc/systemd/system/network.target.wants /lib/systemd/system/ospfd.service
sudo ln -st /etc/systemd/system/network.target.wants /lib/systemd/system/pimd.service
sudo ln -st /etc/systemd/system/network.target.wants /lib/systemd/system/ripd.service
sudo ln -st /etc/systemd/system/network.target.wants /lib/systemd/system/ripngd.service
sudo ln -st /etc/systemd/system/network.target.wants /lib/systemd/system/zebra.service

Edit telnet access and the retaining of routes over restarts — necessary for Quagga versions prior to 1.1.1:
sudo nano /etc/quagga/debian.conf
vtysh_enable=yes
zebra_options=" --daemon -A 127.0.0.1 -P 2601 -u quagga -g quagga"
bgpd_options=" --daemon -A 127.0.0.1 -P 2605 -u quagga -g quagga --retain -p 179"
ospfd_options=" --daemon -A 127.0.0.1 -P 2604 -u quagga -g quagga"
ospf6d_options=" --daemon -A ::1 -P 2606 -u quagga -g quagga"
ripd_options=" --daemon -A 127.0.0.1 -P 2602 -u quagga -g quagga"
ripngd_options=" --daemon -A ::1 -P 2603 -u quagga -g quagga"
isisd_options=" --daemon -A 127.0.0.1 -P 2608 -u quagga -g quagga"
babeld_options=" --daemon -A 127.0.0.1 -P 2609 -u quagga -g quagga"

Restart the daemon:
sudo /etc/init.d/quagga restart || sudo systemctl restart zebra


Jonathan Ferguson, Ubuntu Wiki, Quagga Routing Daemon, https://wiki.edubuntu.org/JonathanFerguson/Quagga


JonathanFerguson/Quagga (last edited 2019-12-09 03:33:15 by jonathan-ferguson)