EBGP gegen IBGP
Sowohl EBGP als auch IBGP sind Begriffe, die mit dem Routing-Protokoll BGP verwendet werden. Theoretisch besteht der Hauptunterschied zwischen beiden darin, dass EBGP zwischen zwei BGP-Routern in verschiedenen autonomen Systemen (AS) ausgeführt wird. IBGP wird jedoch zwischen zwei BGP-Routern in demselben AS ausgeführt. Bevor wir die Unterschiede zwischen EBGP und IBGP diskutieren, wollen wir ein grundlegendes Verständnis von EBGP und IBGP haben.
Was ist EBGP?
BGP läuft zwischen Routern in verschiedenen autonomen Systemen. Standardmäßig wird in EBGP (Peering in zwei verschiedenen AS) IP TTL auf 1 gesetzt, was bedeutet, dass angenommen wird, dass Peers direkt verbunden sind.
In diesem Fall wird TTL zu 0, wenn das Paket einen Router kreuzt, und das Paket wird darüber hinaus verworfen. In Fällen, in denen die beiden Nachbarn nicht direkt miteinander verbunden sind, z. B. beim Peering mit Loopback-Schnittstellen oder beim Peering, wenn Geräte mehrere Hops entfernt sind, müssen wir den Befehl "neighbour xxxx ebgp-multihop" hinzufügen.
Andernfalls wird keine BGP-Nachbarschaft hergestellt. Darüber hinaus wird der EBGP-Peer die besten Routen bewerben, die er kennt oder von seinen Peers gelernt hat (ob EBGP-Peer oder IBGP-Peer), was im Fall von IBGP nicht der Fall ist.
Was ist IBGP?
In IBGP gibt es keine Einschränkung, dass Nachbarn direkt verbunden werden müssen. Ein IBGP-Peer gibt jedoch das von einem IBGP-Peer erlernte Präfix nicht an einen anderen IBGP-Peer weiter. Diese Einschränkung dient dazu, Schleifen innerhalb desselben AS zu vermeiden. Um dies zu verdeutlichen, wird beim Übergeben einer Route an einen EBGP-Peer die lokale AS-Nummer dem Präfix in as-path hinzugefügt. Wenn wir also dasselbe Paket zurückerhalten, in dem unser AS in as-path angegeben ist, wissen wir, dass es sich um eine handelt Schleife, und das Paket wird verworfen. Wenn jedoch eine Route einem IBGP-Peer angekündigt wird, wird die lokale AS-Nummer nicht zum As-Pfad hinzugefügt, da sich die Peers in demselben AS befinden.
Um Schleifen in demselben AS zu vermeiden, werden zwei Methoden verwendet.
1. Vollständig vermaschte Topologie: In diesem Fall müssen alle Router in demselben AS miteinander verbunden sein. Wenn wir beispielsweise N Router haben, müssen wir N (N-1) / 2 IBGP-Sitzungen haben. Wir können dies vermeiden, indem wir Routenreflektoren einführen.
2. Verwendung von Routenreflektoren: Dies ist eine alternative Methode zur Überwindung eines vollständigen Maschenszenarios. In diesem Fall werden IBGP-Sitzungen mit einem zentralen Punkt eingerichtet. Dieser zentrale Punkt wird als Routenreflektor bezeichnet, und die anderen IBGP-Router werden als Routenreflektor-Clients bezeichnet.
Was ist der Unterschied zwischen eBGP und iBGP? 1. EBGP späht zwischen zwei verschiedenen AS, während IBGP zwischen demselben AS (Autonomous System) liegt. 2. Von eBGP-Peers gelernte Routen werden anderen Peers (BGP oder IBGP) angekündigt. Von IBGP-Peers gelernte Routen werden jedoch nicht für andere IBGP-Peers angekündigt. 3. Standardmäßig werden EBGP-Peers mit TTL = 1 festgelegt, was bedeutet, dass angenommen wird, dass Nachbarn direkt verbunden sind, was bei IBGP nicht der Fall ist. Wir können dieses Verhalten für EBGP mit dem Befehl "Nachbar xxxx ebgp-multihop" ändern. Multihop ist der Begriff, der nur in EBGP verwendet wird. 4. EBGP-Routen haben eine administrative Entfernung von 20, während IBGP 200 hat. 5. Der nächste Hop bleibt unverändert, wenn die Route dem IBGP-Peer angekündigt wird. Es wird jedoch geändert, wenn es standardmäßig an EBGP Peer angekündigt wird. Dieses Standardverhalten von IBGP kann durch den Befehl "Nachbar xxxx next-hop-self" geändert werden. Dies ändert den nächsten Sprung während der Werbung als lokale Route. |