Ich habe zwei Standorte, A und B, in BGP AS 65000 und einen dritten Standort, C, in AS 65001. Alle drei Standorte sind über Carrier MPLS verbunden, und es besteht eine interne Verbindung zwischen den Standorten A und B. Ich versuche, BGP zu beeinflussen Der Datenverkehr von Standort A zu Standort C wird über die MPLS-Verbindung von Standort A weitergeleitet, und der Datenverkehr von Standort B zu Standort C wird über die MPLS-Verbindung von Standort B weitergeleitet. Die Topologie ähnelt der in diesem Beispiel beschriebenen .
Die Edge-Router an den Standorten A und B sehen beide ihre eigene MPLS-Verbindung als den besten Pfad, da EBGP-Routen gegenüber IBGP-Routen bevorzugt werden. Router, die sich weiter innerhalb des AS 65000 befinden, bevorzugen jedoch alle entweder die eine oder die andere Verbindung. Mein Ziel ist es, alle Router an beiden Standorten zu zwingen, die nächstgelegene Verbindung zu bevorzugen. (Leider kann ich die beiden Sites derzeit nicht in separate ASes aufteilen.)
Gibt es eine vernünftige Möglichkeit, dies zu erreichen, während die Failover-Konnektivität zu Standort C zwischen den Standort-A- und -B-Links weiterhin zulässig ist?
Edit: Ich hätte beachten sollen, dass hier kein IGP im Einsatz ist. Tatsächlich existieren die Netzwerke an jedem Standort innerhalb einer VRF als Teil eines viel, viel größeren Netzwerks. Daher muss sich jede Lösung ausschließlich auf BGP stützen.
Antworten:
Gibt es eine klare Definition zwischen Standort A und Standort B?
Wenn ja, dann würde ich versuchen, eine Richtlinie für die Edge-Router zu definieren, um eine Community einzuschleusen, wenn Routen vom Carrier MPLS empfangen werden.
Sobald diese Community mit den Präfixen versehen wurde (z. B. 100: 1 für Standort A und 100: 2 für Standort B), können Sie jedem Router von Standort A eine Richtlinie hinzufügen, um die LP für alle Routen mit Community 100: 1 und zu erhöhen ebenfalls für Standort B mit Community 100: 2.
Diese Lösung würde der Anforderung entsprechen, nur BGP zu verwenden, und wäre auch so flexibel, dass B weiterhin die Aufwärtsverbindung von A verwenden kann, wenn es seine eigene Aufwärtsverbindung zum Träger verliert.
quelle
Als ich etwas Ähnliches gemacht habe, habe ich kein eBGP zwischen den Routern verwendet. Ich ließ den BGP-sprechenden Router nur die Standardroute über OSPF an die Router von Standort A und Standort B senden und dann die OSPF-Routen in BGP umverteilen. Auf die Verbindung zwischen den beiden Standorten habe ich OSPF-Kosten angewendet.
Auf diese Weise kann Standort A über Routen zu seinen Netzwerken, zu Standort B und über eine Standardroute zum Verlassen von Standort A verfügen (die OSPF-Kosten behalten die Standardroute von Standort B als sekundäre Option bei, falls Sie die Verknüpfung zu Standort A verlieren). Standort A kommuniziert direkt mit Standort B und verwendet kein MPLS, es sei denn, es liegt ein Verbindungsfehler zwischen den Standorten vor.
Außerdem werden die OSPF-Kosten während der Neuverteilung in BGP MED umgerechnet, wodurch das MPLS-Netz des Betreibers den Verkehr von Standort A lieber direkt an Standort A sendet, aber auch Standort B verwendet, um bei Bedarf zu Standort A zu gelangen.
quelle
Ich habe das Gefühl, dass einige Informationen fehlen. Warum bevorzugen Edge-Router nicht bereits den besten Pfad?
Haben Sie ein vollmaschiges iBGP in 65000? Oder verwenden Sie Routenreflexion?
Wenn Sie über ein vollmaschiges iBGP verfügen, lernt jeder Edge-Router die Route von beiden [AB] und vergleicht die IGP-Kosten mit denen des nächsten Hops.
Wenn eine Routenreflexion vorhanden ist, wird nur die beste Route aus dem eigenen POV reflektiert, wodurch die Weiterleitung der besten Pfade möglicherweise aufgehoben wird. Dies kann auch behoben werden, indem eine weitere RR hinzugefügt wird, die die andere Route als die beste auswählt. Dann können Edge-Boxen erneut die beste Route auswählen. Wenn das Reparieren von RR nicht möglich ist. Sie könnten in beiden Loopbacks für Grenzrouten dieselbe IPV4-Adresse hinzufügen, und wenn Grenzrouter das Präfix für RR ankündigen, würden sie den nächsten Hop auf diese Anycast-Adresse setzen. Dann folgen Sie IGP auch nach dem Nachdenken bis zur nächsten Grenze.
quelle
Wenn Sie die Kontrolle über das IGP haben:
Was wir getan haben, ist, nur eBGP-Router im iBGP-Netz zu haben. Der Rest unserer internen Router sind OSPF-Router. Wir verteilen von BGP zu OSPF innerhalb jedes AS um. Unser Setup unterscheidet sich ein wenig von Ihrem, aber dies sollte es OSPF ermöglichen, die Kostenmetrik zu beeinflussen, indem der Pfadverkehr zum nächsten eBGP-Router geleitet wird.
Wenn Sie keine Kontrolle über das IGP haben:
Möglicherweise können Sie eine Importrichtlinie auf die internen Router anwenden, damit diese die Routenankündigungen des gewünschten eBGP-Ausgangsrouters statisch bevorzugen. Wenn iBGP zum Beispiel zwei Ansagen für ein bestimmtes Präfix enthält (eine vom Router für Standort A und eine vom Router für Standort B, aber nur eine ist in der RIB installiert), können Sie die gewünschte Ansage lokal einstellen Ich müsste es aufarbeiten, aber ich verstehe nicht, warum es nicht funktionieren würde.
quelle