EBGP vs IBGP
Både EBGP og IBGP er udtryk, der bruges sammen med routingprotokollen BGP. Teoretisk set er den største forskel mellem de to EBGP-kørsler mellem to BGP-routere i forskellige autonome systemer (AS), men IBGP kører imidlertid mellem to BGP-routere i samme AS. Før vi diskuterer forskellene mellem EBGP og IBGP, lad os have en grundlæggende forståelse af EBGP og IBGP.
Hvad er EBGP?
BGP kører mellem routere i forskellige autonome systemer. Som standard er IP TTL i EBGP (peering i to forskellige AS) sat til 1, hvilket betyder, at peers antages at være direkte forbundet.
I dette tilfælde, når pakke krydser en router, bliver TTL 0, og derefter tabes pakken ud over det. I tilfælde, hvor de to naboer ikke er direkte tilsluttet, for eksempel peering med loopback-grænseflader eller peering, når enheder er flere humle væk, er vi nødt til at tilføje kommandoen "nabo xxxx ebgp-multihop"
Ellers etableres ikke BGP-naboskab. Derudover vil EBGP-peer reklamere for alle de bedste ruter, den kender, eller som den har lært af sine kolleger (hvad enten EBGP-peer eller IBGP-peer), hvilket ikke er tilfældet for IBGP.
Hvad er IBGP?
I IBGP er der ingen begrænsning for, at naboer skal forbindes direkte; en IBGP-peer vil dog ikke reklamere for det præfiks, den har lært fra en IBGP-peer til en anden IBGP-peer. Denne begrænsning er der for at undgå sløjfer inden for samme AS. For at afklare dette, når en rute sendes til en EBGP-peer, tilføjes det lokale AS-nummer til præfikset i-sti, så hvis vi modtager den samme pakke tilbage med vores AS i as-sti, ved vi, at det er en løkke, og den pakke bliver droppet. Når en rute bliver annonceret til en IBGP-peer, føjes det lokale AS-nummer imidlertid ikke til as-path, da peers er i samme AS.
For at undgå sløjfer i samme AS er der to metoder, der anvendes.
1. Full Meshed Topology: I dette skal alle routere i samme AS være forbundet til hinanden. For eksempel, hvis vi har N-routere, skal vi have N (N-1) / 2 IBGP-sessioner. Vi kan undgå dette ved at introducere rutereflektorer.
2. Brug af rutereflektorer: Det er en alternativ metode til at overvinde fuldmaskscenarie. I dette tilfælde etableres IBGP-sessioner med et centralt punkt. Dette centrale punkt kaldes rutereflektor, og de andre IBGP-routere kaldes rutereflekterende klienter.
Hvad er forskellen mellem eBGP og iBGP? 1. EBGP kigger mellem to forskellige AS, mens IBGP er mellem samme AS (Autonomous System). 2. Ruter, der læres af eBGP-peer, vil blive annonceret for andre peers (BGP eller IBGP); ruter, der læres af IBGP-peer, vil dog ikke blive annonceret til andre IBGP-peers. 3. Som standard er EBGP-peers indstillet med TTL = 1, hvilket betyder, at naboer antages at være direkte forbundet, hvilket ikke er tilfældet med IBGP. Vi kan ændre denne adfærd for EBGP ved at bruge kommandoen "nabo xxxx ebgp-multihop". Multihop er kun det udtryk, der anvendes i EBGP. 4. EBGP-ruter har en administrativ afstand på 20, mens IBGP har 200. 5. Næste hop forbliver uændret, når ruten annonceres for IBGP-peer; det ændres dog, når det som standard annonceres for EBGP-peer. Denne standardadfærd for IBGP kan ændres med kommandoen "nabo xxxx næste hop-selv"; dette ændrer det næste hop, mens det reklameres, som en lokal rute. |