<<BR>>Install the Quagga routing daemon:
<<BR>>`sudo apt-get install quagga && sudo mkdir -p /var/log/quagga && sudo chown quagga:quagga /var/log/quagga`
<<BR>>
<<BR>>Enable IPv6 Forwarding:
<<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>>Enable IPv4 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>>`sudo sysctl -p`
<<BR>>
<<BR>>Enable IPv4 Multicast Forwarding:
<<BR>>`echo "net.ipv4.conf.all.mc_forwarding=1" | sudo tee -a /etc/sysctl.conf`
<<BR>>`echo "net.ipv4.conf.default.mc_forwarding=1" | sudo tee -a /etc/sysctl.conf`
<<BR>>`sudo sysctl -p`
<<BR>>
<<BR>>Create the configuration files:
<<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/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>>Prevent a daemon from running:
<<BR>>`sudo unlink /etc/systemd/system/multi-user.target.wants/bgpd.service`
<<BR>>`sudo unlink /etc/systemd/system/multi-user.target.wants/isisd.service`
<<BR>>`sudo unlink /etc/systemd/system/multi-user.target.wants/ospf6d.service`
<<BR>>`sudo unlink /etc/systemd/system/multi-user.target.wants/ospfd.service`
<<BR>>`sudo unlink /etc/systemd/system/multi-user.target.wants/pimd.service`
<<BR>>`sudo unlink /etc/systemd/system/multi-user.target.wants/ripd.service`
<<BR>>`sudo unlink /etc/systemd/system/multi-user.target.wants/ripngd.service`
<<BR>>`sudo unlink /etc/systemd/system/multi-user.target.wants/zebra.service`
<<BR>>
<<BR>>Reinstate a daemon to run:
<<BR>>`sudo ln -st /etc/systemd/system/multi-user.target.wants /lib/systemd/system/bgpd.service`
<<BR>>`sudo ln -st /etc/systemd/system/multi-user.target.wants /lib/systemd/system/isisd.service`
<<BR>>`sudo ln -st /etc/systemd/system/multi-user.target.wants /lib/systemd/system/ospf6d.service`
<<BR>>`sudo ln -st /etc/systemd/system/multi-user.target.wants /lib/systemd/system/ospfd.service`
<<BR>>`sudo ln -st /etc/systemd/system/multi-user.target.wants /lib/systemd/system/pimd.service`
<<BR>>`sudo ln -st /etc/systemd/system/multi-user.target.wants /lib/systemd/system/ripd.service`
<<BR>>`sudo ln -st /etc/systemd/system/multi-user.target.wants /lib/systemd/system/ripngd.service`
<<BR>>`sudo ln -st /etc/systemd/system/multi-user.target.wants /lib/systemd/system/zebra.service`
<<BR>>
<<BR>>Restart the daemons:
<<BR>>`sudo systemctl restart zebra.service`
<<BR>>`sudo systemctl restart bgpd.service`
<<BR>>`sudo systemctl restart pimd.service`
<<BR>>`sudo systemctl restart ripd.service`
<<BR>>`sudo systemctl restart ripngd.service`
<<BR>>`sudo systemctl restart ospf6d.service`
<<BR>>`sudo systemctl restart isisd.service`
<<BR>>`sudo systemctl restart ospfd.service`
<<BR>>
<<BR>>
----
''[[http://Jonathan-Ferguson.au/|Jonathan Ferguson]], [[https://wiki.edubuntu.org/JonathanFerguson|Ubuntu Wiki]], [[https://wiki.edubuntu.org/JonathanFerguson/Quagga|Quagga Routing Daemon]], [[https://wiki.edubuntu.org/JonathanFerguson/Quagga]]''
----