Quagga (Software)
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 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 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
[Bearbeiten | Quelltext bearbeiten]Quagga besteht im Wesentlichen aus zwei Teilen, dem Zebra-Daemon und verschiedenen Routingprozessen, die mit dem Zebra-Daemon kommunizieren.
Zebra-Daemon
[Bearbeiten | Quelltext bearbeiten]Der Zebra-Daemon bildet eine Abstraktionsschicht zwischen Kernel und den Routingprozessen (Zserv-API).
Routingprozesse
[Bearbeiten | Quelltext bearbeiten]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
[Bearbeiten | Quelltext bearbeiten]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
[Bearbeiten | Quelltext bearbeiten]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]
Siehe auch
[Bearbeiten | Quelltext bearbeiten]Weblinks
[Bearbeiten | Quelltext bearbeiten]- Quagga-Website (englisch)
- IP Infusion-Website (englisch)
Einzelnachweise
[Bearbeiten | Quelltext bearbeiten]- ↑ 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)