Quagga (Software)
Quagga ist ein unter der GPL lizenziertes Softwarepaket für unixoide Betriebssysteme, welches die IP-Routing-Protokolle OSPF 2, OSPF 3, RIP, IS-IS und BGP 4 unterstützt.
Quagga | |
---|---|
Basisdaten | |
Aktuelle Version | 1.2.4 (19. Februar 2018) |
Betriebssystem | diverse Unix-Derivate |
Programmiersprache | C[1] |
Kategorie | Systemsoftware, Daemon |
Lizenz | GPL |
http://www.nongnu.org/quagga/ |
Quagga ist aus dem von Kunihiro Ishiguro entwickelten GNU Zebra[2] hervorgegangen. Im Gegensatz zu Zebra wird Quagga von einer breiten Community entwickelt. Die kommerzialisierte Variante ZebOS wird von IP Infusion unter Mitwirkung von Chief Technology Officer and Co-Founder Kunihiro Ishiguro entwickelt und vermarktet.
Die Benutzerschnittstelle (vtysh) orientiert sich stark am IOS von Cisco.
Architektur
Quagga besteht im Wesentlichen aus zwei Teilen, dem Zebra-Daemon und verschiedenen Routingprozessen, die mit dem Zebra-Daemon kommunizieren.
Zebra-Daemon
Der Zebra-Daemon bildet eine Abstraktionsschicht zwischen Kernel und den Routingprozessen (Zserv-API).
Routingprozesse
Die Routingprozesse implementieren die verschiedenen Routing-Protokolle und veranlassen den Zebra-Daemon zu Routing-Updates.
Routingprozess | IPv4 | IPv6 | Telnet-Port | Routingprotokoll |
---|---|---|---|---|
zebra | x | 2601 | Zebra-Daemon | |
ripd | x | 2602 | RIP v1 und v2 | |
ripngd | x | 2603 | RIP v3 (IPv6) | |
ospfd | x | 2604 | OSPFv2 | |
bgpd | x | x | 2605 | BGPv4+ (einschließlich Unterstützung für Multicast- und IPv6-Adressfamilien) |
ospf6d | x | 2606 | OSPFv3 (IPv6) | |
isisd | x | 2608 | IS-IS | |
nhrpd | 2608 | Next Hop Routing Protocol (NHRP) |
Es gibt bereits auch schon Erweiterungen von Quagga zur Unterstützung der Routingprotokolle Babel (Protokoll)[3] und Protocol Independent Multicast[4].
Konfiguration
Die einzelnen Protokolle laufen in unterschiedlichen Prozessen, die jeweils an einen lokalen TCP-Port gebunden sind, welche per lokalen Telnet-Client erreichbar sind. Über die Telnet-Verbindung sind nur die Befehle des jeweiligen Routing-Prozesses sichtbar. Alternativ kann auch das Konsolenkommando vtysh verwendet werden, mit welchem in einer Oberfläche alle Routingprozesse gleichzeitig konfiguriert werden können.
Einsatz
Quagga wird vor allem von Firmen und Internetprovidern als preiswerte und leistungsfähige Alternative für dedizierte Router genutzt. Außerdem ist Quagga gut geeignet, in Schulungen Routing-Szenarien zu simulieren und zu testen.
Quagga wird bei Backbone-Providern auch als BGP-Router für den Dienst Looking Glass verwendet. Dieser Router dient ausschließlich zur Ermittlung von Routingeinträgen, ist aber selbst nicht am Routing beteiligt.[5]
ZebOS wird unter anderem von F5 Networks für die Produktserie Big-IP verwendet.
Ebenso findet sich Quagga in VyOS, einem Fork des Debian-basierten Router Betriebssystems Vyatta, als Routing-Lösung.
Weiterhin ist Quagga Ursprung für den Fork FRRouting, der als Collaborative Project von der Linux Software Foundation unterstützt wird.[6]
Weblinks
- Quagga-Website (englisch)
- IP Infusion-Website (englisch)
Einzelnachweise
- The quagga Open Source Project on Open Hub: Languages Page. In: Open Hub. (abgerufen am 30. Oktober 2018).
- GNU Zebra. Abgerufen am 22. Oktober 2011.
- Babel – a loop-avoiding distance-vector routing protocol
- qpimd – PIM Daemon for Quagga
- RIPE NCC – Looking Glass mit Abfrage der Software-Version eines BGP-Servers
- FRRouting (FRR)