Ich habe openbgpd seit Jahren nicht mehr verwendet, daher gebe ich Ihnen eine Theorie, die Sie auf Ihre Konfiguration anwenden können.
Ein Anbieter kann Ihnen Routen senden. Normalerweise senden sie "Standard", "Kunden" oder "Voll". Eine Standardroute ist genau das. 0.0.0.0/0 wird Ihnen angekündigt und Sie wissen, dass Sie über sie 0.0.0.0/0 (jede IP) erreichen können. In Ihrer Situation klingt es so, als würden beide Anbieter Ihnen eine Standardroute übergeben, und höchstwahrscheinlich erhält derjenige mit dem niedrigeren ASN den gesamten Datenverkehr (ASN ist der Tiebreaker, wenn ein Paket an mehrere Ziele gesendet werden kann und die AS-Pfade gleich sind Länge usw.).
Bei einem Kundenfeed würden sie jede Route ankündigen, die direkt mit ihnen verbunden ist. Wenn Sie einen Anbieter wie Level3 haben, sehen Sie wahrscheinlich die Hälfte des Internets über diesen Feed. Wenn Ihr anderer Anbieter einen niedrigeren Lieferavis hat, erhält er Datenverkehr, der nicht direkt mit dem Peer verbunden war, der Ihnen seine Kundenrouten mitteilt.
Ein "vollständiger" Feed enthält Routenankündigungen für jede Site, zu der ein Anbieter zu gelangen weiß - nicht nur für diejenigen, die direkt verbunden sind.
Sie sollten in der Lage sein, etwas zu tun wie:
show ip bgp summary (IOS-Befehl)
Hier sollte die Anzahl der irgendwo empfangenen Präfixe aufgeführt sein.
Wenn Ihnen beide vorhandenen Anbieter eine Standardroute senden, ist Ihre Verbindung derzeit für das Failover eingerichtet. Anbieter A fällt aus, Sie würden dann zu Anbieter B weiterleiten. Wenn Sie Kundenfeeds von beiden zusammen mit der Standardroute verwenden, würde der Datenverkehr zu dem Anbieter fließen, der den kürzesten AS-Pfad zum Erreichen einer bestimmten Adresse hat, und auf den Standard zurückgreifen Route, wenn die Adresse nicht gefunden werden konnte. Wenn Sie von beiden einen vollständigen Feed erhalten würden, würden Sie abhängig von der Überschneidung zwischen den Anbietern Datenverkehr über den "besten" Pfad an jeden senden.
Auf einem unserer Grenzrouter zeige ich 310540 aktive Routen an, stelle sicher, dass Sie über genügend RAM verfügen, und habe den Computer so konfiguriert, dass er die Routen beider Anbieter verarbeitet, wenn Sie vollständige Routen verwenden. Sie können damit experimentieren, Kundenrouten von beiden zu nehmen, bis Sie sich wohler fühlen. Oder nehmen Sie Kundenrouten vom kleineren Anbieter der beiden und sehen Sie, wie sich die Dinge ändern.
Dies führt immer noch nicht zu einem Lastausgleich oder einer gleichmäßigen Aufteilung des Datenverkehrs, abhängig von Ihrem Datenverkehr. Möglicherweise stellt ein Anbieter immer noch den Löwenanteil des Datenverkehrs fest. Zu diesem Zeitpunkt müssten Sie einige Präfix- / Routenkarten erstellen, um den Datenverkehr so anzupassen, dass der eine oder andere Peer bevorzugt wird.
Sobald Sie Routenkarten oder eine ASN-Übereinstimmung eingerichtet haben, um Ihren Datenverkehr zu verschieben. Wenn der Zielstandort ausfällt und die Route von diesem Anbieter entfernt wird, sendet Ihr Router den Datenverkehr weiterhin über die andere Verbindung. BGP ist etwas selbstheilend.
Was wir getan haben, ist, dass wir einige Karten definiert haben, die basierend auf dem Lieferavis übereinstimmen.
PROVIDER_A_TO PROVIDER_A_THROUGH PROVIDER_B_TO PROVIDER_B_THROUGH
Juniper macht dies einfacher als die Verwendung von Communitys. Sie können dies jedoch auch tun.
Unsere Präfixlisten sehen, ob das Ziel ein bestimmter Lieferavis ist, und wenn ja, durchläuft es die _TO-Karte. Wenn der Lieferavis in _THROUGH aufgeführt ist, wird dieser Anbieter bevorzugt. Da einer unserer Anbieter eine direkte Verbindung zu AT & T hat, stimmt PROVIDER_B_THROUGH mit 7018 | 7019 (und einigen anderen Lieferavisen) überein, sodass der AT & T-Verkehr standardmäßig mit Anbieter B verbunden ist. Obwohl AT & T von beiden erreichbar ist, senden wir ihn lieber über Anbieter B. .
Ich bin sicher, openbgpd hat ähnliche Methoden.