Hoe BGP (Border Gateway Protocol) te begrijpen

📅
🕑 4 minuten lezen

BGP, oftewel Border Gateway Protocol, is een van die kernprotocollen die het internet draaiende houdt, maar eerlijk gezegd is het best vreemd om te begrijpen als je niet de hele dag aan het netwerken bent. In principe is het verantwoordelijk voor het uitwisselen van routeringsinformatie tussen verschillende netwerken – een beetje zoals een verkeersagent die aangeeft waar data naartoe moet. Als je router of netwerkconfiguratie BGP-configuraties gebruikt of als je met routeringsconfiguraties aan het rommelen bent, kan het je later veel stress besparen als je begrijpt hoe het werkt. Het wordt gebruikt voor zowel routering van openbaar internet (eBGP) als interne routering binnen hetzelfde grote netwerk (iBGP).In sommige configuraties kom je BGP misschien tegen zonder dat je precies weet wat er aan de hand is, of misschien probeer je te achterhalen waarom je routes niet correct worden bijgewerkt. Weten hoe BGP-sessies tot stand komen, welke statussen ze doorlopen en de verschillen tussen eBGP en iBGP kan echt een verschil maken. Bovendien zul je deze concepten constant in netwerklogs of -configuraties zien opduiken. Dus, dit onder de knie krijgen is niet alleen een kwestie van nerds, het is ook praktisch. Laten we nu eens kijken naar een aantal praktische oplossingen of inzichten die je nodig kunt hebben bij BGP-problemen of wanneer je gewoon probeert te begrijpen wat er onder de motorkap gebeurt.—

Problemen met BGP-verbindingen en -routering oplossen

Controleer of BGP-peers correct zijn ingesteld

  • Als je BGP-peers geen sessies tot stand brengen, is de kans groot dat er een probleem is met de netwerkconnectiviteit of een verkeerde configuratie. Op routers met Cisco IOS kun je show ip bgp summaryde huidige status van elke peer bekijken. Als je een status ziet zoals Inactief of Actief, betekent dit waarschijnlijk dat er geen goede verbinding is.
  • Voor Juniper of andere besturingssystemen kan de opdracht zijn show bgp neighbor:.Als peers niet de status ‘Gevestigd’ hebben, controleer dan uw IP-adressen, ASN’s en het netwerkbeleid.
  • Soms is een firewall of ACL die TCP-poort 179 blokkeert de boosdoener. Zorg ervoor dat poort 179 niet geblokkeerd wordt voor inkomende of uitgaande verbindingen tussen peers.

Met deze informatie kunt u zien of de sessie überhaupt plaatsvindt. Zo niet, dan is het de eerste aanwijzing dat er iets mis is met de connectiviteit of de configuratie.

Controleer Keepalive- en Hold-timers

  • Omdat BGP afhankelijk is van keepalive-berichten, kan de sessie mislukken als deze niet correct worden uitgewisseld. Controleer uw timers: deze staan ​​standaard op 30 seconden ( timers bgp 30 180in Cisco of vergelijkbaar).
  • In sommige configuraties kunnen verkeerd afgestelde timers – bijvoorbeeld als de externe peer 20 seconden verwacht, maar je router nog steeds op 30 staat – leiden tot haperingen of sessieonderbrekingen. Zorg ervoor dat de timers overeenkomen (of in ieder geval verstandig zijn geconfigureerd).Pas aan met.neighbor timers 20 60
  • Soms kan het tijdelijk verhogen van de hold-timer helpen om instabiele sessies te stabiliseren, maar vergeet niet om deze later weer terug te zetten.

In mijn eigen configuraties heb ik gemerkt dat het aanpassen van de timers soms alleen de verbinding vertraagt, maar soms is dat ook nodig om sessies langer actief te houden.

BGP-configuraties en -beleid inspecteren

  • Controleer de opdrachten van je buren en zorg ervoor dat de externe AS overeenkomt met wat verwacht wordt. Een kleine typefout kan de hele sessie doen mislukken.
  • Zorg ervoor dat uw netwerkverklaringen of route-reflectoren correct zijn ingesteld. Soms worden routes niet weergegeven vanwege onjuiste filters of ontbrekende netwerkverklaringen.
  • Op Cisco geven opdrachten zoals show run | include neighborof show ip protocolsaan of je configuraties correct zijn. Voor Junipers show configuration protocols bgphelpt dat.

Soms kan een simpele typefout of ontbrekende toestemming de hoofdoorzaak zijn, vooral als configuraties handmatig zijn bewerkt of teruggedraaid.

Gebruik BGP-foutopsporingshulpmiddelen

  • Schakel debuggen in met debug ip bgpof show transactions. Wees voorzichtig: op drukke routers kan debuggen enorme logs genereren. Gebruik het indien mogelijk in een testopstelling.
  • Zoek naar fouten zoals ‘Verbinding geweigerd’, ‘Route niet beschikbaar ‘ of ‘Buurman gereset’. Deze geven aanwijzingen over wat er ontbreekt.
  • Zodra u het probleem hebt geïdentificeerd, schakelt u de foutopsporing uit undebug allom prestatievermindering te voorkomen.

Met deze stap kunt u vreemde problemen aan het licht brengen, zoals ASN- of BGP-versieverschillen die in eerste instantie onduidelijk lijken.

Wanneer u moet overwegen om firmware of BGP-software bij te werken

Als alle configuraties en connectiviteit er goed uitzien, maar BGP nog steeds niet goed functioneert, denk dan aan firmwarebugs of compatibiliteitsproblemen. Controleer de firmwareversies van de leverancier, houd updates in de gaten of zoek naar bekende problemen in de release notes van het besturingssysteem van je router. Soms worden bizarre problemen met verbinding of route-advertising opgelost door firmware of softwarepatches te upgraden, die met geen enkele aanpassing van de configuratie kunnen worden opgelost.

BGP aan de praat krijgen kan soms voelen als het najagen van spoken: sessies vallen weg, routes worden niet doorgegeven of configuraties sluiten gewoon niet op elkaar aan. Maar begrijpen wat elke status, timer of opdracht doet, kan het oplossen van problemen minder gissen en methodischer maken. Een beetje vreemd, maar als je de basis eenmaal onder de knie hebt, wordt het een stuk minder stressvol.

Samenvatting

  • Controleer de peerstatus show ip bgp summaryen verifieer de verbindingsstatus.
  • Controleer de keepalive- en hold-timers en pas deze indien nodig aan.
  • Zorg ervoor dat de configuraties overeenkomen en dat er geen firewalls zijn die poort 179 blokkeren.
  • Wees voorzichtig met het gebruik van foutopsporingsopdrachten om sessieproblemen te identificeren.
  • Werk de firmware bij als BGP crasht of consequent geen verbinding kan maken.

Afronding

Het is niet iedereen gegeven om zich te verdiepen in BGP-probleemoplossing, maar weten waar je op moet letten – zoals sessiestatussen, timers en configuraties – kan een hoop giswerk besparen. Soms is het gewoon een kwestie van een typefout corrigeren, andere keren ben je bezig met het opsporen van een bug in de firmware. Hoe dan ook, met een beetje geduld is het mogelijk om die routes weer aan de praat te krijgen. Ik hoop dat dit iemand helpt om hun BGP-chaos op te lossen – tenminste voor nu.