Was ist BGP und wie steuert es das Routing?

Autor: Veröffentlicht

Kurz erklärt: BGP (Border Gateway Protocol) ist ein Protokoll, mit dem die Netze des Internets Informationen über verfügbare Routen zu IP-Adressen austauschen. Es ermöglicht Betreibern, anhand ihrer Regeln und Vereinbarungen festzulegen, durch welche Netze der Datenverkehr fließen soll – nicht allein nach der Geschwindigkeit der Verbindung. Fehler in diesen Informationen können dazu führen, dass eine funktionierende Website für manche Nutzer nicht mehr erreichbar ist.

Welche Rolle spielt BGP im Internet?

Das Internet besteht aus vielen miteinander verbundenen Netzen, die von Telekommunikationsanbietern, Hostingunternehmen, Hochschulen oder Cloudanbietern verwaltet werden. Die grundlegende Einheit beim BGP-Routing ist das autonome System (AS): ein Netz oder eine Gruppe von Netzen mit einer gemeinsamen Richtlinie für die Routenwahl. Es wird durch eine ASN identifiziert.

Routing bezeichnet die Auswahl der Wege, über die Datenpakete übertragen werden können. Router, die BGP verwenden, teilen einander die Erreichbarkeit von IP-Präfixen, also Adressblöcken, mit. Eine solche Ankündigung besagt vereinfacht: „Über mein Netz kannst du diesen Adressbereich erreichen.“

BGP überträgt weder Website-Inhalte noch E-Mails. Es liefert Informationen, aus denen Router Routingtabellen erstellen. Diese Tabellen dienen dazu, Pakete weiterzuleiten. BGP organisiert also den Kommunikationsweg, nicht den Dienst an dessen Ende.

Wie wählt BGP eine Route aus?

Router bauen BGP-Sitzungen auf, also Verbindungen zum Austausch von Routeninformationen. Wenn eine neue Route hinzukommt oder eine bisherige nicht mehr verfügbar ist, können sie die Änderung ankündigen oder eine frühere Ankündigung zurückziehen. Dabei müssen sie nicht jedes Mal sämtliche bekannten Routen übertragen.

Neben dem Präfix enthält eine Ankündigung Attribute, die die Route beschreiben. Eines davon ist AS_PATH: eine Liste der Nummern der autonomen Systeme, über die die Routeninformation weitergegeben wurde. Diese Liste hilft unter anderem, Schleifen zu erkennen: Ein Netz kann eine Route ablehnen, wenn es seine eigene Nummer in der Liste findet.

BGP sucht nicht automatisch den Weg mit der geringsten Latenz. Ein Betreiber kann einen bestimmten Anbieter aufgrund der Kosten, vertraglicher Vereinbarungen oder eigener Regeln zur Verkehrssteuerung bevorzugen. Ein kürzerer AS_PATH kann ein Auswahlkriterium sein, ist aber weder das einzige noch immer das wichtigste. Der genaue Ablauf hängt von der Konfiguration und Implementierung ab.

Man unterscheidet zwei Einsatzbereiche desselben Protokolls:

iBGP ersetzt nicht alle Mechanismen des internen Routings. In größeren Netzen arbeitet es mit Protokollen zusammen, die die Erreichbarkeit der Router innerhalb der Infrastruktur des Betreibers sicherstellen.

Beispiel: Hosting mit zwei Internetanbindungen

Angenommen, ein Hostingunternehmen betreibt ein eigenes autonomes System und ist mit zwei Netzbetreibern verbunden: A und B. Es kündigt seinen IP-Adressblock über BGP bei beiden Betreibern an. So können die übrigen Netze mehr als einen Weg zu den Hostingservern kennenlernen.

Das Hostingunternehmen kann für ausgehenden Datenverkehr Betreiber A bevorzugen und B als Reserve nutzen. Fällt die Verbindung zu A aus und werden die entsprechenden Routen zurückgezogen, kann der Datenverkehr über B fließen. Die Umstellung erfolgt nicht unbedingt sofort: Das Erkennen des Ausfalls und die Neuberechnung der Routen brauchen Zeit. Während der Umschaltung können Pakete verloren gehen.

Der Rückweg muss nicht derselbe sein. Über die Route vom Nutzer zum Hostinganbieter entscheiden auch andere Netze mit ihren eigenen Regeln. Zwei Anbindungen bedeuten deshalb nicht automatisch eine gleichmäßige Verteilung des Datenverkehrs oder volle Kontrolle über dessen Verlauf.

Wie entstehen BGP-Ausfälle und Sicherheitsrisiken?

BGP bietet in seiner Grundform allein keine verlässliche Bestätigung dafür, dass ein Netz berechtigt ist, ein bestimmtes Präfix anzukündigen. Eine fehlerhafte Konfiguration oder ein gezielter Eingriff kann daher auch den Datenverkehr außerhalb des Netzes beeinflussen, in dem das Problem entstanden ist.

Eine Präfixübernahme, auch BGP hijacking genannt, ist die unberechtigte Ankündigung eines fremden Adressbereichs. Ein Routenleck, auch route leak genannt, entsteht, wenn Routeninformationen über die Grenzen hinaus weitergegeben werden, die die Richtlinien für Verbindungen zwischen den Netzen vorsehen. Beide Fälle können Dienste unerreichbar machen und unter bestimmten Umständen den Datenverkehr durch ein unerwünschtes Netz leiten.

Eine Schutzmaßnahme ist RPKI: eine Infrastruktur, mit der sich die Berechtigung eines autonomen Systems zur Ankündigung eines Präfixes kryptografisch bestätigen lässt. Betreiber können auf dieser Grundlage den Ursprung von Routen prüfen und ungültige Ankündigungen ablehnen. Dabei wird jedoch nicht der gesamte AS_PATH geprüft, und RPKI schützt nicht vor jedem Routenleck. Zusätzlich sind Filter, Konfigurationsprüfungen und Monitoring erforderlich.

Was bedeutet BGP für Website-Betreiber?

Wenn du gewöhnliches Hosting nutzt, konfigurierst du BGP in der Regel nicht selbst. Dafür ist der Infrastrukturanbieter oder sind dessen Netzbetreiber zuständig. Der bloße Kauf einer Domain, eines TLS-Zertifikats oder eines VPS-Servers erfordert keine eigene ASN.

BGP wird gelegentlich mit DNS verwechselt, dem System zur Übersetzung von Domainnamen in IP-Adressen. DNS hilft dabei, die Adresse des Servers zu ermitteln; Routing ermöglicht es, ihn zu erreichen. Eine korrekte DNS-Antwort beweist daher nicht, dass die Netzwerkverbindung funktioniert.

Wenn sich eine Website über das mobile Internet öffnen lässt, aber nicht über deinen Internetanschluss zu Hause, prüfe sie aus beiden Netzen und notiere den Zeitpunkt des Problems. Gib die Ergebnisse an deinen Hostinganbieter weiter und, wenn du damit umgehen kannst, auch eine traceroute- oder MTR-Messung, die den Verbindungsweg zeigt. Die unterschiedliche Erreichbarkeit beweist keinen BGP-Ausfall, gibt den Administratoren aber einen konkreten Ansatzpunkt für die Prüfung des Routings.

Siehe auch: Was ist CDN?

Lesen Sie auch

Wie PHP-FPM PHP-Anfragen verarbeitet, sich vom Webserver unterscheidet und wie du Prozesse an Last und Hosting-Ressourcen anpasst.
BIND ist offene DNS-Serversoftware. Erfahre, welche Aufgaben sie übernimmt und wann sich der Betrieb eines eigenen Servers lohnt.
Was Polens REGON-Register und seine Kennnummer bedeuten, wie sie sich von NIP und KRS unterscheiden und wie Sie Unternehmensdaten prüfen.