Quagga (Software)

aus Wikipedia, der freien Enzyklopädie
(Weitergeleitet von GNU Zebra)
Zur Navigation springen Zur Suche springen
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]

Einzelnachweise[Bearbeiten | Quelltext 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)