Die Antwort ist kein einfaches "Ja" oder "Nein", aber ich denke im Wesentlichen, dass Ihre Beobachtung tatsächlich wahr ist, dass "das nicht so ist".
Aus Gründen der Kuration bevorzugt SE jedoch Antworten, bei denen es sich lediglich um Links zu anderen Seiten handelt. Daher werde ich hier einige davon reproduzieren, falls die Quelle eines Tages verschwindet oder sich ändert.
Wie der beste Pfadalgorithmus funktioniert
BGP weist den ersten gültigen Pfad als den aktuell besten Pfad zu. BGP vergleicht dann den besten Pfad mit dem nächsten Pfad in der Liste, bis BGP das Ende der Liste der gültigen Pfade erreicht. Diese Liste enthält die Regeln, anhand derer der beste Pfad ermittelt wird:
1) Bevorzugen Sie den Pfad mit dem höchsten GEWICHT.
Hinweis: WEIGHT ist ein Cisco-spezifischer Parameter. Es ist lokal für den Router, auf dem es konfiguriert ist.
2) Bevorzugen Sie den Pfad mit dem höchsten LOCAL_PREF.
Hinweis: Bei einem Pfad ohne LOCAL_PREF wurde der Wert mit dem Befehl bgp default local-priority festgelegt oder standardmäßig der Wert 100.
3) Bevorzugen Sie den Pfad, der lokal über ein Netzwerk oder einen aggregierten BGP-Unterbefehl oder durch Umverteilung von einem IGP erstellt wurde.
Lokale Pfade, die vom Netzwerk bezogen werden, oder Umverteilungsbefehle werden lokalen Aggregaten vorgezogen, die vom Befehl "Aggregatadresse" bezogen werden.
4) Bevorzugen Sie den Pfad mit dem kürzesten AS_PATH.
Hinweis: Beachten Sie diese Punkte:
Dieser Schritt wird übersprungen, wenn Sie den Befehl bgp bestpath as-path ignore konfiguriert haben.
Ein AS_SET zählt als 1, egal wie viele ASs in der Menge sind.
AS_CONFED_SEQUENCE und AS_CONFED_SET sind nicht in der Länge AS_PATH enthalten.
5) Bevorzugen Sie den Pfad mit dem niedrigsten Ursprungstyp.
Hinweis: IGP ist niedriger als EGP (Exterior Gateway Protocol) und EGP ist niedriger als INCOMPLETE.
6) Bevorzugen Sie den Pfad mit dem niedrigsten Multi-Exit-Diskriminator (MED).
Hinweis: Beachten Sie diese Punkte:
Dieser Vergleich findet nur statt, wenn der erste (der benachbarte) AS in beiden Pfaden gleich ist. Alle Konföderations-Sub-ASs werden ignoriert.
Mit anderen Worten, MEDs werden nur verglichen, wenn der erste AS in AS_SEQUENCE für mehrere Pfade gleich ist. Alle vorhergehenden AS_CONFED_SEQUENCE werden ignoriert.
Wenn bgp always-compare-med aktiviert ist, werden MEDs für alle Pfade verglichen.
Sie müssen diese Option für den gesamten AS deaktivieren. Andernfalls können Routing-Schleifen auftreten.
Wenn bgp bestpath med-confed aktiviert ist, werden MEDs für alle Pfade verglichen, die nur aus AS_CONFED_SEQUENCE bestehen.
Diese Pfade entstanden innerhalb der örtlichen Konföderation.
Die MED von Pfaden, die von einem Nachbarn mit einer MED von 4.294.967.295 empfangen werden, wird vor dem Einfügen in die BGP-Tabelle geändert. Die MED wechselt zu 4.294.967.294.
Pfade, die ohne MED empfangen wurden, erhalten eine MED von 0, es sei denn, Sie haben bgp bestpath med aktiviert, das als schlechtestes fehlt.
Wenn Sie bgp bestpath med failed-as-schlecht aktiviert haben, wird den Pfaden eine MED von 4.294.967.294 zugewiesen.
Der Befehl bgp deterministic-med kann diesen Schritt ebenfalls beeinflussen.
Eine Demonstration finden Sie unter Wie BGP-Router den Multi-Exit-Diskriminator für die beste Pfadauswahl verwenden.
7) Bevorzugen Sie eBGP gegenüber iBGP-Pfaden.
Wenn der beste Pfad ausgewählt ist, fahren Sie mit Schritt 9 (Mehrweg) fort.
Hinweis: Pfade, die AS_CONFED_SEQUENCE und AS_CONFED_SET enthalten, sind lokal für den Verbund. Daher werden diese Pfade als interne Pfade behandelt. Es gibt keinen Unterschied zwischen der externen und der internen Konföderation.
8) Bevorzugen Sie den Pfad mit der niedrigsten IGP-Metrik zum nächsten BGP-Hop.
Fahren Sie fort, auch wenn der beste Pfad bereits ausgewählt ist.
9) Stellen Sie fest, ob mehrere Pfade in der Routing-Tabelle für BGP Multipath installiert werden müssen.
Fahren Sie fort, wenn der beste Pfad noch nicht ausgewählt ist.
10) Wenn beide Pfade extern sind, bevorzugen Sie den Pfad, der zuerst empfangen wurde (den ältesten).
Dieser Schritt minimiert die Routenklappe, da ein neuerer Pfad einen älteren Pfad nicht ersetzt, selbst wenn der neuere Pfad die bevorzugte Route basierend auf den nächsten Entscheidungskriterien wäre (Schritte 11, 12 und 13).
Überspringen Sie diesen Schritt, wenn eines dieser Elemente zutrifft:
Sie haben den Befehl bgp best path compare-routerid aktiviert.
Hinweis: Die Cisco IOS-Softwareversionen 12.0.11S, 12.0.11SC, 12.0.11S3, 12.1.3, 12.1.3AA, 12.1.3.T und 12.1.3.E haben diesen Befehl eingeführt.
Die Router-ID ist für mehrere Pfade gleich, da die Routen von demselben Router empfangen wurden.
Es gibt derzeit keinen besten Pfad.
Der aktuell beste Pfad kann verloren gehen, wenn beispielsweise der Nachbar, der den Pfad anbietet, ausfällt.
11) Bevorzugen Sie die Route, die vom BGP-Router mit der niedrigsten Router-ID stammt.
Die Router-ID ist die höchste IP-Adresse auf dem Router, wobei Loopback-Adressen bevorzugt werden. Sie können auch den Befehl bgp router-id verwenden, um die Router-ID manuell festzulegen.
Hinweis: Wenn ein Pfad Routenreflektorattribute (RR-Attribute) enthält, wird die Router-ID bei der Pfadauswahl durch die Absender-ID ersetzt.
12) Wenn die Absender- oder Router-ID für mehrere Pfade identisch ist, bevorzugen Sie den Pfad mit der minimalen Länge der Clusterliste.
Dies ist nur in BGP RR-Umgebungen vorhanden. Es ermöglicht Clients, mit RRs oder Clients in anderen Clustern zu vergleichen. In diesem Szenario muss der Client das RR-spezifische BGP-Attribut kennen.
13) Bevorzugen Sie den Pfad, der von der niedrigsten Nachbaradresse stammt.
Diese Adresse ist die IP-Adresse, die in der BGP-Nachbarkonfiguration verwendet wird. Die Adresse entspricht dem Remote-Peer, der in der TCP-Verbindung mit dem lokalen Router verwendet wird.
Das heißt jedoch, ich könnte mich irren. Ich bin eher ein Neuling auf diesem Gebiet.