Hallo, ich heiße Alexander Azimov. Bei Yandex entwickle ich verschiedene Überwachungssysteme sowie eine Transportnetzarchitektur. Aber heute werden wir über BGP sprechen.

Vor einer Woche hat Yandex ROV (Route Origin Validation) an den Kreuzungen mit allen Peer-Partnern sowie mit Verkehrsaustauschpunkten aufgenommen. Lesen Sie weiter unten, warum dies getan wurde und wie sich dies auf die Interaktion mit Telekommunikationsbetreibern auswirkt.
BGP und was ist daran falsch?
Sie wissen wahrscheinlich, dass BGP als domänenübergreifendes Routing-Protokoll konzipiert wurde. Während der Reise konnte die Anzahl der Benutzerfälle jedoch zunehmen: Heute hat sich BGP dank zahlreicher Erweiterungen zu einem Nachrichtenbus entwickelt, der Aufgaben vom VPN des Betreibers bis zum jetzt modischen SD-WAN abdeckt, und sogar als Transportmittel für den SDN-ähnlichen Controller verwendet, der sich dreht Entfernungsvektor BGP in etwas Ähnliches wie das Verbindungszustandsprotokoll.

Warum hat BGP so viele Verwendungen erhalten (und erhält sie auch weiterhin)? Es gibt zwei Hauptgründe:
- BGP ist das einzige Protokoll, das zwischen autonomen Systemen (AS) funktioniert.
- BGP unterstützt Attribute im TLV-Format (Typ-Länge-Wert). Ja, das Protokoll ist damit nicht allein, aber da es an den Verbindungsstellen zwischen Telekommunikationsbetreibern nichts zu ersetzen gibt, ist es immer rentabler, ein Funktionselement mehr daran zu befestigen, als ein zusätzliches Routing-Protokoll zu unterstützen.
Was ist los mit ihm? Kurz gesagt, dem Protokoll fehlen integrierte Mechanismen zur Überprüfung der Richtigkeit der empfangenen Informationen. Das heißt, BGP ist ein Protokoll von vornherein: Wenn Sie der Welt mitteilen möchten, dass Sie jetzt ein Netzwerk von Rostelecom, MTS oder Yandex besitzen, bitte!
IRRDB-Filter - Das Beste vom Schlimmsten
Es stellt sich die Frage, warum das Internet in einer solchen Situation immer noch funktioniert. Ja, es funktioniert die meiste Zeit, aber es explodiert regelmäßig und macht ganze nationale Segmente unzugänglich. Trotz der Tatsache, dass die Hacking-Aktivität in BGP ebenfalls zunimmt, treten die meisten Anomalien immer noch aufgrund von Fehlern auf. Ein Beispiel für dieses Jahr ist der
Fehler eines kleinen Betreibers in Belarus, der eine halbe Stunde lang einen erheblichen Teil des Internets für MegaFon-Benutzer unzugänglich machte. Ein weiteres Beispiel: Der
wütende BGP-Optimierer hat eines der größten CDN-Netzwerke der Welt zerstört.

Abb. 2. Abfangen des Cloudflare-Verkehrs
Aber warum treten solche Anomalien alle sechs Monate und nicht jeden Tag auf? Weil Telekommunikationsbetreiber externe Routing-Informationsdatenbanken verwenden, um zu überprüfen, was ihre Nachbarn von BGP erhalten. Es gibt viele solcher Datenbanken, einige von ihnen werden von Registraren (RIPE, APNIC, ARIN, AFRINIC) verwaltet, einige sind unabhängige Akteure (die bekanntesten - RADB) und es gibt auch eine ganze Reihe von Registraren, die großen Unternehmen gehören (Level3, NTT usw.). Dank dieser Datenbanken behält das domänenübergreifende Routing die relative Stabilität seiner Arbeit bei.
Es gibt jedoch Nuancen. Routeninformationen werden basierend auf den Objekten ROUTE-OBJECTS und AS-SET überprüft. Und wenn erstere eine Autorisierung für den IRRDB-Teil implizieren, fehlt die Autorisierung als Klasse für die zweite Klasse. Das heißt, jeder kann jeden zu seinen Sets hinzufügen und dadurch die Filter höherer Lieferanten umgehen. Darüber hinaus kann die Eindeutigkeit der AS-SET-Benennung zwischen verschiedenen IRR-Basen nicht garantiert werden, was zu erstaunlichen Effekten mit einem plötzlichen Verbindungsverlust beim Telekommunikationsbetreiber führen kann, der seinerseits nichts geändert hat.
Ein weiteres Problem ist das AS-SET-Nutzungsmodell. Es gibt zwei Punkte:
- Wenn ein Bediener einen neuen Client hat, fügt er ihn seinem AS-SET hinzu, entfernt ihn jedoch fast nie.
- Filter selbst werden nur an Junctions mit Clients konfiguriert.
Infolgedessen verschlechtert das moderne Format von BGP-Filtern die Filter an den Schnittstellen zu Kunden allmählich und vertraut a priori auf das, was von Peer-to-Peer-Partnern und IP-Transitanbietern kommt.
Was ersetzt Präfixfilter basierend auf AS-SET? Das Interessanteste ist, dass kurzfristig nichts. Es gibt jedoch zusätzliche Mechanismen, die den Betrieb von auf IRRDB basierenden Filtern ergänzen, und zuallererst handelt es sich natürlich um RPKI.
RPKI
Vereinfacht können Sie sich die RPKI-Architektur als verteilte Datenbank vorstellen, deren Datensätze kryptografisch überprüft werden können. Im Fall von ROA (Route Object Authorization) ist der Eigentümer des Adressraums der Unterzeichner, und der Datensatz selbst ist ein Tripel (Präfix, asn, max_length). Tatsächlich postuliert dieser Eintrag Folgendes: Der Eigentümer des Adressraum-Präfixes $ erlaubte dem AS mit der Nummer $ asn, Präfixe mit einer Länge von nicht mehr als $ max_length anzukündigen. Router, die den RPKI-Cache verwenden, können unterwegs die Konformität mit zwei
Präfix-First-Lautsprechern überprüfen.
Abbildung 3. RPKI-Architektur
ROA-Objekte sind seit langem standardisiert, blieben aber bis vor kurzem tatsächlich nur auf dem Papier des IETF-Journals. Meiner Meinung nach klingt der Grund dafür beängstigend - schlechtes Marketing. Nach Abschluss der Standardisierung wurde argumentiert, dass ROAs vor BGP-Hijacking schützen - und das stimmte nicht. Angreifer können ROA-Filter leicht umgehen, indem sie am Anfang des Pfads die richtige Lautsprechernummer eingeben. Und sobald dieses Bewusstsein kam, war der nächste logische Schritt die Ablehnung der Verwendung von ROA. Und warum brauchen wir Technologie, wenn sie nicht funktioniert?
Warum ist es Zeit, deine Meinung zu ändern? Weil das nicht die ganze Wahrheit ist. ROA schützt nicht vor Hacking-Aktivitäten in BGP, sondern
vor versehentlichem Entführen von Datenverkehr , z. B. vor statischen Lecks in BGP, die immer häufiger auftreten. Im Gegensatz zu IRR-basierten Filtern kann ROV nicht nur an Schnittstellen zu Kunden, sondern auch an Schnittstellen zu Kollegen und höheren Lieferanten verwendet werden. Das heißt, mit der Einführung von RPKI verlässt BGP allmählich a priori das Vertrauen.
Jetzt wird die ROA-basierte Routenprüfung schrittweise von den Hauptakteuren eingeführt: Die größten europäischen IX verwerfen bereits falsche Routen. Unter den Tier-1-Betreibern ist AT & T hervorzuheben, das an den Kreuzungen mit seinen Peering-Partnern Filter aktiviert hat. Auch die größten Inhaltsanbieter sind für die Shell geeignet. Und Dutzende mittelgroßer Transitunternehmen haben es bereits leise umgesetzt, ohne es jemandem zu sagen. Warum implementieren all diese Betreiber RPKI? Die Antwort ist einfach: Schützen Sie Ihren ausgehenden Verkehr vor Fehlern anderer. Aus diesem Grund ist Yandex einer der ersten in der Russischen Föderation, der ROV an der Grenze seines Netzwerks einbezieht.
Was wird als nächstes passieren?
Jetzt haben wir die Routing-Informationen an den Kreuzungen mit Verkehrsaustauschpunkten und privatem Peer-to-Peer überprüft. In naher Zukunft wird die Überprüfung auch bei vorgelagerten Verkehrsanbietern durchgeführt.

Was ändert sich für Sie? Wenn Sie die Sicherheit des Verkehrsroutings zwischen Ihrem Netzwerk und Yandex erhöhen möchten, empfehlen wir:
- Das Signieren Ihres Adressraums im RIPE-Portal ist einfach und dauert durchschnittlich 5-10 Minuten. Dies schützt unsere Konnektivität für den Fall, dass jemand unfreiwillig Ihren Adressraum entführt (und dies wird früher oder später geschehen).
- Das Einfügen eines der Open-Source-RPKI-Caches ( Ripe-Validator , Routinator ) und das Aktivieren der Routenprüfung an der Netzwerkgrenze dauert länger, verursacht jedoch keine technischen Schwierigkeiten.
Yandex unterstützt auch die Entwicklung eines Filtersystems basierend auf dem neuen RPKI-Objekt -
ASPA (Autonomous System Provider Authorization). Filter, die auf ASPA- und ROA-Objekten basieren, können nicht nur „undichte“ AS-SETs ersetzen, sondern auch MiTM-Angriffe mit BGP schließen.
Ich werde in einem Monat auf der Next Hop-Konferenz ausführlich über ASPA sprechen. Es wird auch Kollegen von Netflix, Facebook, Dropbox, Juniper, Mellanox und Yandex geben. Wenn Sie sich für den Netzwerkstapel und seine zukünftige Entwicklung interessieren, ist die
Registrierung offen .