in sommige opzichten is BGP mooi en eenvoudig. Er is bijvoorbeeld maar één BGP: BGP versie 4. Veel netwerkprofessionals hebben zich de vraag gesteld of de BGP versie 4 binnenkort zal worden vervangen door BGP 5. Er is echter niets om je zorgen over te maken. Vandaag de dag draaien we nog steeds BGP versie 4 als ons Exterior Gateway Protocol (EGP). Zelfs als de huidige BGP4 allerlei dingen doet die de BGP4 van 20 jaar geleden niet kon doen, zoals IPv6, multicast en VPN ‘ s routeren of communities gebruiken. BGP heeft bewezen zeer uitbreidbaar te zijn, maar het is allemaal nog steeds BGP—en een enkel BGP-proces. Maar BGP behandelt alleen de buitenkant van de routing-er is ook interieur routing.

Interior Gateway protocollen
en er is veel meer keuze in Interior Gateway protocollen (IGP ‘ s). Een oude favoriet is RIP, het Routing Information Protocol. Zelfs de verbeterde RIPv2 is tegenwoordig te eenvoudig voor de meeste netwerken, net als RIPng (next generation) voor IPv6. Als zodanig, Cisco creëerde zijn eigen Interior Gateway Routing Protocol (IGRP) en vervolgens een verbeterde versie toepasselijk genaamd Enhanced IGRP (EIGRP). Echter, de meest gebruikte IGP is OSPF: Open kortste pad eerst. OSPF is een “open” implementatie van het kortste pad eerst of Dijkstra ‘ s algoritme. (De naam verwijst niet naar de mogelijke openheid van het kortste pad.) OSPF versie 2 wordt gebruikt voor IPv4; OSPF versie 3 voor IPv6. Netwerken die beide IP-versies draaien en OSPF gebruiken als hun IGP moeten dus zowel OSPFv2 als OSPFv3 draaien.

in de late jaren 1980, toen OSPF werd ontwikkeld, was de OSI (Open Systems Interconnect) familie van netwerkprotocollen nog steeds in discussie, en veel technologie werd geleend / gestolen door OSI van IP en door IP van OSI. Als gevolg hiervan heeft OSI het is-is-routeringsprotocol voor OSI CLNP-routering, dat in veel opzichten erg lijkt op OSPF (of andersom). IS-IS staat voor Intermediate System to Intermediate System, waarbij ” intermediate system “”router” betekent. IS-IS werd later uitgebreid om eerst IPv4 en daarna ook IPv6 te ondersteunen en wordt voornamelijk gebruikt in zeer grote IP-netwerken.

met die introductie uit de weg, wil ik me concentreren op het meest voorkomende geval: een netwerk dat BGP draait als EGP en OSPF als IGP en kijken hoe de routeringstaken verdeeld zijn over beide protocollen en hoe de twee interageren.

herverdeling
met OSPF is een IGP en BGP is een EGP suggereert een duidelijke taakverdeling: OSPF behandelt de interne routering, BGP de routering naar externe bestemmingen. Het is echter niet zo eenvoudig. Ja, OSPF is verantwoordelijk voor de interne routing. Deze routes worden weergegeven als ” o “routes in de uitvoer van” show ip route ” op een Cisco router. Als het netwerk is opgesplitst in meerdere OSPF—gebieden—niet echt nodig deze dagen, tenzij u honderden routers hebt-kunt u ook inter-area “o IA” routes zien.

o en o IA routes zijn alleen de adresblokken die worden gebruikt op routerinterfaces die daadwerkelijk OSPF draaien. Dat omvat geen interfaces naar servers of PC ’s en andere eindgebruikersapparaten, of, in het geval van ISP’ s, klanten. Om deze adressen te laten verschijnen in OSPF, moeten we verbonden subnetten herverdelen en/of statische routes herverdelen:

!
router OSPF 1
verbonden subnetten herverdelen
statische subnetten herverdelen
!

de 1 in “router OSPF 1” is het OSPF proces of instantie nummer. Het is mogelijk om meerdere OSPF—instanties op dezelfde router te draaien-wat natuurlijk een zorgvuldige planning vereist om alles recht te houden. Als de herverdeling van alle verbonden en/of statische routes in OSPF meer is dan u nodig hebt, kunt u “route-map <route-map-name>” toevoegen en vervolgens de aangegeven routekaart gebruiken om de ongewenste routes te filteren om te voorkomen dat ze opnieuw worden verdeeld.

standaard worden herverdeelde routes extern type 2 gemaakt en weergegeven als “O E2”. Het is ook mogelijk om te herverdelen als extern type 1 (met “metric-type 1”). Het verschil is dat bij O E1-routes de OSPF-kosten van de route de kosten van de verbindingen omvatten om de externe route te bereiken, terwijl bij O E2-routes De kosten van de interne verbindingen buiten beschouwing worden gelaten.

iBGP
uiteraard behandelt BGP de routes naar externe netwerken die geschikt zijn voor BGP. Het zou echter een beetje gênant zijn als alle BGP-routers in het netwerk hun externe buren totaal verschillende dingen zouden vertellen. Dus alle BGP routers in het netwerk moeten met elkaar praten om een consistent verhaal te vertellen aan externe netwerken. Dit is waar internal BGP (iBGP) voor is. De” reguliere ” BGP is dus externe BGP (eBGP). Als Ik zeg alle BGP routers, bedoel ik echt allemaal: als je netwerk 100 BGP routers heeft, moet elk van deze iBGP sessies onderhouden met de andere 99. Tenzij je route Reflectoren gebruikt, maar dat is een verhaal voor een andere dag.

als u gewend bent aan eBGP, moet iBGP even wennen. In tegenstelling tot eBGP, iBGP is gewoon prima
werken over veel hops. Dit voegt echter een complicatie toe. Overweeg het volgende netwerk:
loopback interfaces

stel dat de iBGP-sessie van router A naar router D wordt ingesteld naar router D ‘ S adres op de link tussen B en D. Dan, wanneer de koppeling tussen routers B en D omlaag gaat, D ‘ S adres op de interface die verbinding maakt met die link naar beneden gaat, en daarmee, de iBGP sessie geconfigureerd naar het adres van die interface. Dus in plaats van iBGP sessies naar interface adressen te configureren, zetten we loopback interfaces hiervoor in. In tegenstelling tot de loopback interface op een server of andere host, die altijd adres 127.0.0.1 gebruikt, gebruiken routers “echte” adressen op hun loopback interfaces, wat als volgt werkt:

!
interface loopback0
ip-adres 192.0.2.65 255.255.255.255
!
router BGP 9000
neighbor 192.0.2.67 remote-as 9000
neighbor 192.0.2.67 update-source loopback0
!

In tegenstelling tot andere interfaces kunnen loopback interfaces een /32-voorvoegsellengte hebben, zodat ze slechts één adres gebruiken. De remote AS voor buurman 192.0.2.67 is hetzelfde als de local AS (9000), waardoor deze BGP sessie een iBGP sessie is. De regel “update-source loopback0” zorgt ervoor dat het bronadres in uitgaande BGP-pakketten het IP-adres is dat is geconfigureerd op interface loopback0, dus het komt overeen met het adres waarnaar de externe router op zoek is. Als nu één pad tussen de twee iBGP routers naar beneden gaat, kunnen de iBGP pakketten worden omgeleid over een ander pad en is er geen impact op BGP. Merk op dat om dit te laten werken, de loopback interface adressen need2 aanwezig moeten zijn in de IGP—typisch, verbonden routes zullen worden herverdeeld om dit te laten gebeuren.
BGP in grote netwerken eBook
In tegenstelling tot eBGP werkt iBGP het as-pad of het volgende hop-adres niet bij. Dit betekent dat het volgende hop-adres in iBGP-updates nog steeds wijst naar het IP-adres van de router in het naburige netwerk waarvan de route is geleerd. Dit adres bevindt zich in een point-to-point subnet tussen uw eBGP router en de BGP router van het naburige netwerk. Uw eBGP router zal dit adres kennen omdat het aanwezig is op een direct verbonden interface, maar zonder verdere actie zullen de rest van uw routers dit adres niet kennen, dus het volgende hop adres voor iBGP routes zal niet worden opgelost en de iBGP routes kunnen niet worden gebruikt. Opnieuw, het herverdelen van verbonden netwerken in OSPF (of uw IGP van keuze) lost dit op. U kunt ook “next-hop-self” configureren op uw iBGP-sessies en de router zal het volgende hop-adres in iBGP-updates vervangen door een eigen adres.

BGP redistributie
Het is ook mogelijk om routes naar BGP te herverdelen. Bijvoorbeeld, in een groot ISP netwerk mag je verbonden en statische routes in BGP herdistribueren in plaats van in IS-IS, omdat dit is-is lean en mean zal houden. De extra BGP routes zijn relatief onbelangrijk, en een mooi voordeel is dat als ze intern worden omgeleid, dit geen BGP-updates veroorzaakt. Integendeel, de volgende hop adressen worden anders opgelost na een is-IS verandering, die elke router onafhankelijk kan doen. Natuurlijk vereist dit goede filters die ervoor zorgen dat de grote aantallen kleine voorvoegsels gebruikt door klanten niet lekken in de wereldwijde BGP tabel. Een goede manier om een dergelijke filtering te bereiken is door een gemeenschap toe te voegen aan de routes die kunnen worden gepropageerd in eBGP en vervolgens te filteren op basis van die gemeenschap.

vroeger was het niet ongewoon om alle BGP routes te herverdelen naar OSPF. Met een half miljoen voorvoegsels in BGP is deze praktijk minder gebruikelijk geworden. Als je echt op de rand wilt leven, kun je BGP herverdelen naar OSPF en OSPF naar BGP. Dan, als Uw filters zijn niet perfect, routes kunnen round-trip tussen BGP en OSPF, met het resultaat dat de as pad wordt verwijderd. Dus nu adverteer je via BGP een hele hoop routes die niet van jou zijn, maar met een one-hop als pad, dus veel van je buren zullen je verkeer sturen voor deze routes.

administratieve afstand
Last but not least, wat gebeurt er als dezelfde route aanwezig is in zowel BGP als OSPF? Uiteraard is het moeilijk om een BGP lokale voorkeur te vergelijken met een OSPF-metriek. Dus wat een (Cisco) router doet is een “administratieve afstand” toewijzen aan elk routeringsprotocol. De route met de laagste afstand wint dan. OSPF heeft een afstand van 110. BGP routes hebben een afstand van 20 (beter dan OSPF en andere IGP ‘s) wanneer ze geleerd via eBGP en 200 (slechter dan OSPF en andere IGP’ s) wanneer ze geleerd via iBGP. Statische routes hebben standaard een afstand van 1, maar u kunt dit wijzigen door een afstandwaarde op te nemen aan het einde van het commando “ip route…”. Een afstandwaarde van 250 houdt ze uit de weg van routeringsprotocollen. De administratieve afstand is het eerste nummer tussen vierkante haken in” show ip route ” uitvoer.