‘BGP. De zwakste schakel van het internet’

Gisteren lag het vaste en mobiele telefonienetwerk van KPN er voor ongeveer 3 uur uit. Hierdoor was tevens het alarmnummer 112 niet meer bereikbaar. 

In Nieuwsuur verklaarde Joost Farwerck – lid van de Raad van Bestuur van KPN – dat KPN nog druk bezig is met het onderzoek naar oorzaak van de verstoring, maar dat het in elk geval te maken heeft met veel verkeer dat verkeerd gerouteerd is.

Enkele weken geleden ging het ook al mis bij een landelijke PIN storing, wat later om een routeringsprobleem (BGP Hijack) bleek te gaan.

Vrijwel tegelijk met de storing bij KPN gisteren ging het ook in de VS bij internetprovider Verizon mis. Daar ging een gedeelte van het internet offline.

Een mogelijke oorzaak? Het Border Gateway Protocol, de zwakste schakel van het internet.

Wat is het Border Gateway Protocol?

Het Border Gateway Protocol (BGP) is het belangrijkste routeringsprotocol van het internet. Het wordt gebruikt tussen providers om alle autonome systemen (AS) en netwerken aan elkaar te knopen en om ervoor te zorgen dat deze met elkaar kunnen communiceren. Zonder BGP zou het internet dus heel gelimiteerd zijn.

Het BGP is dan ook wel in zekere zin te vergelijken met het DNS (Domain Name System). DNS koppelt een gemakkelijk te onthouden websiteadres aan een IP adres van de bijbehorende webserver. BGP doet hetzelfde, alleen koppelt het BGP de verschillende IP adressen aan de verschillende providers. Zo kan er dus met elkaar worden gecommuniceerd.

Hoe kan zo’n routeringprobleem plots ontstaan?

Het BGP is gebaseerd op het ‘trust among systems’ principe. Dit betekent dat elke BGP router zijn eigen IP tabel kan vermelden, en deze kan doorvertellen aan andere BGP routers waarmee deze verbonden is (peers). Op hun beurt, vertellen deze BGP routers dit ook weer door aan hun ‘peers’ of ‘buren’.

Hier ontstaat dan ook het probleem. BGP is een oud protocol dat voor het eerst in zijn huidige vorm werd gebruikt in 1994. Wat de opstellers van BGP destijds niet konden voorzien, is hoe groot het internet ging worden. Omdat BGP zo’n fundamenteel deel uitmaakt van het hedendaagse internet, kan deze ook niet zomaar worden vervangen. Hier zijn wereldwijd aanpassingen voor vereist.

Een van de meest voorkomende problemen met BGP is een BGP Hijack. Bij een BGP Hijack meldt een provider een IP-reeks die eigenlijk niet in zijn of haar bezit is. Hierdoor kan deze melding verspreid worden naar andere BGP routers en zodoende over het gehele internet. Tot het moment dat iemand dit opvalt en de routes hersteld worden door deze opnieuw te vermelden, zal al het verkeer naar een andere provider gestuurd worden. Hierdoor kan een systeem een dusdanige hoeveelheid verkeer ontvangen dat deze dit niet kan verwerken en dus uitvalt. Dit heet ook wel een DoS (oftewel: Denial of Service).

Een BGP Hijack hoeft niet bewust te gebeuren. Met een simpele typefout kan de schade al veroorzaakt zijn.

Waar ging het gisteren mis?

Waar de routering gister mis is gegaan, is tot op heden nog niet bekend. Of het probleem dan ook gerelateerd is aan BGP is nog niet te zeggen. Wel is het een goed moment te kijken naar BGP en te realiseren hoe fragiel ons internet eigenlijk is.

Tijdens de PIN storing enkele weken geleden bleek het in ieder geval wel om een BGP Hijack te gaan waarbij een Zwitsers bedrijf de IP adressen van KPN omleidde via China Telecom (bron).

Overigens gaat het niet alleen bij KPN en andere internetproviders mis. Ook Google ging in 2017 de fout in waardoor een groot gedeelte van Japan niet meer bereikbaar was. Vice versa heeft Pakistan het in 2008 voor elkaar gekregen YouTube wereldwijd te blokkeren. Een ongeluk zit in een klein hoekje.

Het is dan ook duidelijk dat er iets moet gebeuren met het Border Gateway Protocol. Hiervoor zijn al verschillende initiatieven zoals RPKI. Echter zijn wereldwijd aanpassingen vereist en is samenwerking noodzakelijk om BGP tot een veilig protocol te maken.

Ook op de hoogte blijven van de laatste IT ontwikkelingen?

Vul hieronder uw e-mail adres in en abonneer uzelf op onze nieuwsbrief!