Quagga (Software)

Softwarepaket für unixoide Betriebssysteme

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
Programmier­sprache 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

Bearbeiten

Quagga besteht im Wesentlichen aus zwei Teilen, dem Zebra-Daemon und verschiedenen Routingprozessen, die mit dem Zebra-Daemon kommunizieren.

Zebra-Daemon

Bearbeiten

Der Zebra-Daemon bildet eine Abstraktionsschicht zwischen Kernel und den Routingprozessen (Zserv-API).

Routingprozesse

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

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.

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
Bearbeiten

Einzelnachweise

Bearbeiten
  1. The quagga Open Source Project on Open Hub: Languages Page. In: Open Hub. (abgerufen am 30. Oktober 2018).
  2. GNU Zebra. Abgerufen am 22. Oktober 2011.
  3. Babel – a loop-avoiding distance-vector routing protocol
  4. qpimd – PIM Daemon for Quagga
  5. RIPE NCC – Looking Glass mit Abfrage der Software-Version eines BGP-Servers
  6. FRRouting (FRR)