Quagga (Software)
# 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 ist aus dem von Kunihiro Ishiguro entwickelten GNU Zebra 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) und Protocol Independent Multicast.

### 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.

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.

