Skillnaden mellan EBGP och IBGP

Skillnaden mellan EBGP och IBGP
Skillnaden mellan EBGP och IBGP

Video: Skillnaden mellan EBGP och IBGP

Video: Skillnaden mellan EBGP och IBGP
Video: Galvaniska celler och emk 2024, November
Anonim

EBGP vs IBGP

Både EBGP och IBGP är termer som används med routingprotokollet BGP. I teoretiska termer är den största skillnaden mellan de två att EBGP körs mellan två BGP-routrar i olika autonoma system (AS), men IBGP körs mellan två BGP-routrar i samma AS. Innan vi diskuterar skillnaderna mellan EBGP och IBGP, låt oss ha en grundläggande förståelse för EBGP och IBGP.

Vad är EBGP?

BGP körs mellan routrar i olika autonoma system. Som standard, i EBGP (peering i två olika AS), är IP TTL inställd på 1, vilket innebär att peers antas vara direkt anslutna.

I det här fallet, när paketet passerar en router, blir TTL 0 och då kommer paketet att släppas utöver det. I de fall där de två grannarna inte är direkt anslutna, till exempel peering med loopback-gränssnitt eller peering när enheter är flera hopp bort, måste vi lägga till kommandot "neighbor x.x.x.x ebgp-multihop"

Annars kommer BGP-grannskapet inte att upprättas. Dessutom kommer EBGP-peer att marknadsföra alla de bästa rutter som den känner till eller som den har lärt sig av sina peers (oavsett om den är EBGP-peer eller IBGP-peer), vilket inte är det när det gäller IBGP.

Vad är IBGP?

I IBGP finns det ingen begränsning att grannar måste anslutas direkt; dock kommer en IBGP-peer inte att annonsera prefixet den lärt sig från en IBGP-peer till en annan IBGP-peer. Denna begränsning är till för att undvika loopar inom samma AS. För att förtydliga detta, när en rutt skickas till en EBGP-peer, läggs det lokala AS-numret till prefixet i as-path, så om vi får samma paket tillbaka som anger vårt AS i as-path, vet vi att det är en loop, och det paketet tappas. Men när en rutt annonseras till en IBGP-peer, läggs inte det lokala AS-numret till i as-path, eftersom peers är i samma AS.

För att undvika loopar i samma AS, finns det två metoder som används.

1. Full Meshed Topology: I detta måste alla routrar i samma AS vara anslutna till varandra. Till exempel, om vi har N routrar, måste vi ha N (N-1)/2 IBGP-sessioner. Vi kan undvika detta genom att introducera Route Reflectors.

2. Användning av ruttreflektorer: Det är en alternativ metod för att övervinna full mesh-scenario. I detta fall upprättas IBGP-sessioner med en central punkt. Denna centrala punkt kallas Route Reflector och de andra IBGP-routrarna kallas route reflector-klienter.

Vad är skillnaden mellan eBGP och iBGP?

1. EBGP peering mellan två olika AS, medan IBGP är mellan samma AS (Autonomous System).

2. Rutter som lärts av eBGP-peer kommer att annonseras till andra peers (BGP eller IBGP); rutter som lärts av IBGP-peer kommer dock inte att annonseras för andra IBGP-peers.

3. Som standard är EBGP-peers inställda med TTL=1, vilket innebär att grannar antas vara direkt anslutna, vilket inte är fallet med IBGP. Vi kan ändra detta beteende för EBGP genom att använda kommandot "neighbor x.x.x.x ebgp-multihop". Multihop är termen som används endast i EBGP.

4. EBGP-rutter har administrativt avstånd på 20, medan IBGP har 200.

5. Nästa hopp förblir oförändrat när rutt annonseras till IBGP-peer; den ändras dock när den annonseras till EBGP-peer som standard.

Detta standardbeteende för IBGP kan ändras med kommandot "neighbor x.x.x.x next-hop-self"; detta ändrar nästa hopp, medan du annonserar, som en lokal rutt.

Rekommenderad: