Wie funktioniert BGP Anycast, wenn öffentliche IPs an einen einzelnen AS gebunden sind?


11

Es ist mein Verständnis , dass die öffentliche IP - Blöcke von zugeordnet sind IANA , die Unterblöcke zu zuweist RIR , die Abtretungsunterblöcke zu ISPs, die Abtretungsunterblöcke zu einzelnen ASen , wie in dieser Frage vor: Wie werden die IP - Adressen tatsächlich zugewiesen?

Dies (und Ressourcen wie diese Seite ) scheinen eine Zuordnung von 1 öffentlichen IP zu 1 AS zu implizieren.

Anycast scheint jedoch zu funktionieren, indem dieselbe öffentliche IP-Adresse von mehreren Standorten aus beworben wird und unterschiedliche Pfade zu dieser IP bereitgestellt werden. Beispielsweise:

Wie funktioniert Anycast, wenn öffentliche IPs in einen einzelnen AS aufgelöst werden sollen?


2
Es gibt auch keine strenge Regel für "1 AS pro Adresse" - sehen Sie sich nur 192.88.99.0/24 an, das von 6to4 verwendet wird. (Obwohl es sicherlich problematisch wird ...)
user1686

2
Haben Sie eine Referenz für die Behauptung, dass IPs ASs zugewiesen sind? Es ist ein paar Jahre her, aber ich habe nur IP-Adressblöcke gesehen, die Organisationen zugewiesen wurden. (Die Zuordnungen, auf die Sie verweisen, sagen Ihnen wahrscheinlich nur, welche AS (s) einen bestimmten Block bewerben, der beobachtet, was tatsächlich passiert, und nicht zuweist.)
David Schwartz

Wie Adressen einer Entität zugewiesen werden, hat wirklich nichts damit zu tun, wie Routen zu den Adressen im Internet angekündigt werden. Es ist möglich, dass jeder ISP, der das Internet umfasst , ankündigt, dass er eine Route zu einem bestimmten Präfix hat, und dass jeder von ihnen eine Route zu einem Präfix von einem anderen ISP gelernt hat. Routing ist nur ein Router, der einem anderen mitteilt, dass er den Datenverkehr an ein Netzwerk weiterleiten kann, und jeder Internet-Router kann zu Recht glauben, dass er einen kennt. Router, die mehrere Routen zu einem Netzwerk empfangen, wählen eine dieser Routen aus.
Ron Maupin

@DavidSchwartz Nein, keine Referenz für die Zuweisung von IP zu AS. Nachdem ich einige dieser Antworten und einige andere Artikel gelesen habe, denke ich, dass dies überhaupt nicht richtig ist, schien es nur in vielen Ressourcen enthalten zu sein (vielleicht, weil es der häufigste Fall ist).
Turtlemonvh

@ RonMaupin Ich verstehe die Trennung von Routing und IP-Blockzuweisung. BGP-Routenankündigungen enthalten jedoch einen Abschnitt AS_PATH, der für Routingentscheidungen verwendet wird (siehe: tools.ietf.org/html/rfc4271#section-4.3 ). Meine Frage bezieht sich wirklich auf das Verhalten, wenn diese Routenansagen von vielen AS stammen und jeder AS sagt, dass es der einzige AS im Pfad ist, dh sie haben einen direkten Pfad zur IP-Adresse ohne zusätzliches externes Routing.
Turtlemonvh

Antworten:


5

Es ist nicht erforderlich, dass IP-Adressen oder Internetrouten für ein Präfix von einem einzelnen AS stammen. Lieferavise werden Organisationen zugewiesen, und Adressen werden auch Organisationen zugewiesen. Registrare wie ARIN verknüpfen meine Adresszuweisung nicht mit meiner ASN-Zuweisung. Selbst in neuen Systemen wie der Resource Public Key Infrastructure können mehrere AS eine Route zu einem Netzwerk erstellen . Die Team Cymru-Seite sagt dies in den FAQs:

In einigen Fällen wird ein Netzwerkpräfix von mehreren, aber unterschiedlichen Netzwerken oder autonomen Systemen angekündigt. Der wahrscheinlichste Grund dafür ist das sogenannte "Multihoming". Das ist völlig normal. Abhängig von Ihrer Ansicht zur Internet-Topologie und den Richtlinien des Ursprungsnetzwerks ist eines dieser Ursprungsnetzwerke der bevorzugte Pfad zum Senden und Empfangen von Datenverkehr mit dem betreffenden Netzblock.

Hier ist eine (lange) Liste von Netzwerken , die derzeit von mehreren AS angekündigt werden.

Wie es dahin kommt, wohin es geht: Routen werden mithilfe eines BGP-Pfadauswahlalgorithmus ausgewählt , der einen Pfad basierend auf den Informationen auswählt, über die jeder Router, den der Verkehr durchläuft, Bescheid weiß. Jeder Router im Internet hat eine eigene Ansicht der Routing-Tabelle, sodass der Datenverkehr in einem Teil des Internets an einem anderen Ort und an einem anderen Ort als der Datenverkehr in einem anderen Teil des Internets enden kann. Es ist nicht einmal erforderlich, dass jedes Paket in einem Flow an denselben Ort gesendet wird, was bei Anycasting oder Multihoming offensichtlich interessant sein kann.


Danke dk1. Die Idee, dass die öffentliche IP-zu-AS-Zuordnung 1: N und nicht 1: 1 ist, war für mich der entscheidende Punkt. Dieser Artikel war auch hilfreich: serverfault.com/questions/137257/… sowie zusätzliche Artikel zum Thema AS-Peering, z . B .: Umbrella.cisco.com/blog/blog/2013/01/10/… . Dieser OpenDNS-Artikel zeigt auch, dass ihr AS global verteilt ist.
Turtlemonvh

11

Ein AS muss nicht unbedingt auf einen einzelnen physischen Standort beschränkt sein.

Beim Anycasting führen Sie Router an vielen physischen Standorten aus, wobei jeder mit unterschiedlichen ISPs als demselben AS arbeitet und eine Route zu den anycasted IP-Adressen ankündigt.

Aus Sicht von BGP unterscheidet es sich nicht wesentlich von dem, was Sie für die Redundanz mit mehreren ISPs von einem AS an einem Standort tun würden. In der Situation "Ein Standort, mehrere ISPs" sendet ein Router "Ich bin AS X und habe den IP-Bereich Y!" an mehrere ISPs; In Anycast weisen Sie nur geografisch unterschiedliche Router an, alle ihre eigenen nahezu identischen "Ich bin AS X und ich habe IP-Bereich Y!" Nachricht an ihre eigenen ISPs, die Ihren AS und Ihren Anycast-Bereich beansprucht und BGP den besten ISP auswählen lässt, an den der Datenverkehr gesendet werden soll.

Die ISPs wissen es nicht anders. Das Internet hat keinen Sinn dafür, dass die verschiedenen verfügbaren Pfade nicht nur zu derselben hochredundanten Site führen.


Mit anderen Worten, das Internet weiß nicht, dass es nicht über Ihr milliardenschweres geheimes unterirdisches Glasfasernetz mit demselben Server kommuniziert.
user253751

@immibis Das ist eine gute Sichtweise, aber ein Trottel: In diesem Fall (Routing zurück zu einem zentralen Server über Ihr eigenes internes Netzwerk) würden wir technisch nicht mehr unter die Definition von Anycast fallen, da die Anfrage dies nicht tun würde tatsächlich in den geografisch unterschiedlichen Standorten gehandhabt werden. In dem von mir beschriebenen Fall hätten Sie an jedem Standort nahezu identische Server anstelle des geheimen Backend-Netzwerks, um zum richtigen Server zu gelangen.
Shane Madden

Das ist kein Trottel, das ist der Punkt. Es ist absolut gültig, ein privates Netzwerk zwischen verschiedenen Standorten zu haben. Und Internet-Routing-Protokolle können nicht den Unterschied zwischen einem privaten Netzwerk und dem Vorgeben eines solchen Netzwerks erkennen und stattdessen Anycast verwenden.
user253751

Es ist definitiv gültig, ein privates Netzwerk zwischen Standorten zu haben. Ich habe nur gesagt, dass Sie Anycast nicht auf diese Weise bereitstellen möchten (derselbe Server), da es sich selbst besiegen würde. Aber ich stimme Ihrem Standpunkt zu: Aus der Sicht des Internets würden sie gleich aussehen.
Shane Madden

Dies ist eine großartige Antwort. Können Sie einige Links zu Standarddokumenten oder anderen externen Ressourcen hinzufügen, um zu zeigen, dass das, was Sie gesagt haben, wahr ist? (dh, dass Anycast und Multi-Homing im Grunde das gleiche sind)
Turtlemonvh

2

Dies (und Ressourcen wie diese Seite) scheinen eine Zuordnung von 1 öffentlichen IP zu 1 AS zu implizieren.

Ja. Das ist wahr.

Anycast scheint jedoch zu funktionieren, indem dieselbe öffentliche IP-Adresse von mehreren Standorten aus beworben wird.

Einfach genau durch "einfach machen". Ein AS ist die Entität, die international ihr eigenes Routing definiert. Es kann dieselbe IP-Adresse mit mehreren Standorten verbinden - solange sich das Routing während einer Verbindung nicht ändert, ist dies in Ordnung.

Sei einfach für einen Moment unwissend (denn hier funktioniert Unwissenheit).

Wenn Sie in den USA nach IP x fragen, wenden Sie sich gemäß den AS BGP-Regeln an ein Rechenzentrum in den USA. Wenn Sie dies in Australien tun, landen Sie in einem Rechenzentrum in Australien. Fertig. Es gibt nichts, was besagt, dass eine IP nicht so lange wiederverwendet werden kann, wie die Route stabil ist.

Dies ist weniger ein BGP-Hack als eine normale Verwendung von BGP.


1
BGP verwendet keine geopolitischen Abteilungen, um zu entscheiden, wohin ein Paket gesendet werden soll, und es ist nicht wahr, dass Adressen zu einem AS gehören.
dk1

Sie erwähnen "Solange sich das Routing während einer Verbindung nicht ändert, ist das in Ordnung". Ich dachte, dass solche Routing-Änderungen ein bekanntes Problem in Anycast-Konfigurationen sind, und das ist ein Teil des Grundes, warum Anycast verwendet wird. reserviert für verbindungslose Protokolle wie udp? Siehe: blog.cloudflare.com/…
turtlemonvh
Durch die Nutzung unserer Website bestätigen Sie, dass Sie unsere Cookie-Richtlinie und Datenschutzrichtlinie gelesen und verstanden haben.
Licensed under cc by-sa 3.0 with attribution required.