KNOWLEDGE

AS / ASN / BGP-routering — de ruggengraat van het internet begrijpen

Het internet is niet één netwerk — het zijn 87.000+ autonome systemen (AS) die via het BGP-protocol met elkaar verbonden zijn. Wat is een AS-nummer? Hoe werkt BGP? Hoe ontstaan routelekken en kapingen?

In het kort

Het “internet” bestaat eigenlijk uit 87.000+ onafhankelijke netwerken (AS, Autonomous System) die met elkaar verbonden zijn, elk met een uniek nummer (ASN, bijv. AS13335 = Cloudflare). Deze AS'en wisselen routes met elkaar uit via BGP en kondigen aan “deze IP-blokken kan ik bereiken”, waardoor een wereldwijde routeringstabel ontstaat (ongeveer 1 miljoen IPv4-prefixen en 200.000 IPv6-prefixen). Een pakket van jouw huis naar Google gaat doorgaans door 4-15 AS'en. We leggen het stap voor stap uit.

I. Wat is een AS — Autonomous System

Een AS (Autonomous System) is een netwerk of groep netwerken onder één beheerd routeringsbeleid. Welk routeringsprotocol een AS intern gebruikt (OSPF / IS-IS) is zijn eigen zaak, maar tussen AS'en wordt BGP gebruikt om IP-prefixen publiekelijk aan te kondigen.

  • Een grote provider is zelf een AS (China Telecom AS4134, China Unicom AS4837, China Mobile AS9808)
  • Een grote cloudprovider is een AS (Google AS15169, Cloudflare AS13335, AWS AS16509)
  • Universiteiten, overheidsinstanties en grote bedrijven kunnen een eigen AS hebben
  • Het IP-adres van een gewone gebruiker met een thuisverbinding komt uit het AS van de provider — eindgebruikers hebben geen eigen AS nodig

1.1 Wie wijst ASN's toe

ASN's (AS-nummers) worden beheerd door 5 regionale internetregisters (RIR's):

RIRRegioTypisch ASN-bereik
ARINNoord-AmerikaAS1-AS6655 + deels
RIPE NCCEuropa / Midden-OostenAS6656-AS9215 + deels
APNICAzië-PacificAS17676-AS18431 + deels
LACNICLatijns-AmerikaAS27648-AS28671 + deels
AFRINICAfrikaAS36864-AS37887 + deels

ASN's waren oorspronkelijk 16-bits (0-65535, wat na 1996 krap begon te worden); tegenwoordig zijn ze 32-bits (0-4294967295, RFC 6793). Wereldwijd zijn er momenteel ongeveer 120.000 echt in gebruik.

1.2 Een ASN lezen — notaties

AS13335 // oude notatie (16-bits)
AS393227 // nieuwe, puur numerieke notatie (32-bits)
AS6.10 // oude puntnotatie (= 6×65536+10 = 393226; RFC 5396 maakt asplain de voorkeursnotatie)

Tegenwoordig gebruik je gewoon de puur numerieke notatie. Het prefix “AS” mag je weglaten, maar het uitschrijven is duidelijker.

II. BGP — het “postcodesysteem” van het internet

BGP (Border Gateway Protocol), RFC 4271, is het enige routeringsprotocol dat tussen AS'en wordt gebruikt. Elk AS gebruikt BGP om aan naburige AS'en aan te kondigen: “Deze IP-prefixen kan ik bereiken, en via mij bereik je deze AS'en verderop.”

2.1 De kern van een BGP-aankondiging: prefix + AS-PATH

BGP-routeringstabel (fragment uit RIPE RIS)
Prefix                Next Hop          AS-PATH
104.16.0.0/13    203.0.113.1   AS3356 AS13335   ← via Lumen naar Cloudflare
104.16.0.0/13    198.51.100.5   AS6939 AS13335   ← via HE.net naar Cloudflare
8.8.8.0/24      203.0.113.1   AS3356 AS15169   ← naar Google DNS
202.106.0.0/16  198.51.100.5   AS6939 AS4847 AS4134 ← naar China Telecom Peking

Het AS-PATH somt elk AS op dat wordt doorlopen van het origin-AS (de eigenaar van het prefix) tot de huidige router. Lees het van rechts naar links — het meest rechtse AS is de origin, het meest linkse de buur.

2.2 Hoe BGP het beste pad kiest

Als er meerdere paden zijn voor hetzelfde prefix, kiest BGP er een in deze volgorde van prioriteit (samengevat):

  1. LOCAL_PREF: hoger is beter — interne voorkeur binnen het AS (wat als eerste wordt gebruikt)
  2. Korter AS-PATH is beter — minder doorlopen AS'en wint
  3. Origin: IGP (intern) > EGP > Incomplete
  4. MED (Multi-Exit Discriminator): lager is beter — een hint die tussen AS'en wordt doorgegeven
  5. eBGP > iBGP
  6. IGP-kosten: lager is beter
  7. Router-ID: lager is beter (laatste beslissende factor)

Let op: BGP kiest niet per se het snelste pad. Een korter AS-PATH betekent geen lagere fysieke latentie. Een intercontinentale route via 1 AS kan trager zijn dan een route binnen dezelfde stad via 3 AS'en.

III. Tier 1 / Tier 2 / Tier 3 — hiërarchie van providers

Alle AS'en vallen in drie lagen, afhankelijk van of ze moeten betalen voor upstream-transit:

LaagDefinitieTypische voorbeelden
Tier 1Betaalt niemand — bereikt de hele wereld puur via peeringAT&T AS7018, Verizon AS701, Lumen/Level3 AS3356, NTT AS2914, Telia AS1299, Tata AS6453, GTT AS3257, China Telecom AS4134 (volgens sommige definities), China Unicom AS4837
Tier 2Peert met enkele Tier 1's, maar betaalt voor een deel van de toegangDe meeste nationale providers / grote cloudproviders (Google AS15169, Microsoft AS8075, Cloudflare AS13335)
Tier 3Moet een upstream-provider betalen om andere netwerken te bereikenKleine lokale providers / toegangsproviders

Typisch pad van een pakket op een thuisverbinding: je huis → kleine lokale provider (Tier 3) → provinciaal / stedelijk netwerk (Tier 2) → backbone van China Telecom (Tier 1) → buitenlandse Tier 1 → doelnetwerk.

IV. Zelf testen — welke AS'en liggen tussen thuis en Google

Gebruik mtr -bz (BSD: traceroute -A) om het AS-nummer van elke hop te zien:

mtr -bz www.google.com (Linux)
HOST: xxx                Loss%   Snt   Last  Avg   ASN
1.  192.168.1.1                0.0%   10   0.5  0.6   (privénetwerk, geen ASN)
2.  61.183.x.x                 0.0%   10   3.2  3.5   AS4134  China Telecom
3.  202.97.x.x                 0.0%   10   5.1  5.4   AS4134  backbone van China Telecom
4.  202.97.x.x                 0.0%   10  15.2  16.1  AS4134
5.  202.97.x.x                 0.0%   10  45.3  46.0  AS4134  node vóór de uitgang
6.  211.95.x.x                 0.0%   10 156.4 158.2  AS4134  internationale gateway
7.  72.14.215.x                0.0%   10 158.1 159.8  AS15169 Google-netwerk
8.  142.250.x.x                0.0%   10 159.8 161.2  AS15169 Google
9.  142.250.x.x (www.google.com)  0.0%   10 160.2 162.0  AS15169

Uit deze mtr-trace blijkt:

  • Thuis → lokaal netwerk van China Telecom (AS4134, hops 2-3): < 10ms
  • Backbone van China Telecom (AS4134, hops 4-6): 5-150ms
  • Hop van de internationale gateway naar Google (AS15169, hop 7): plotselinge sprong naar 150+ms ← latentie van de internationale uitgang
  • Binnen Google (AS15169, hops 8-9): < 5ms

Van een Chinese thuisverbinding naar Google gaat het door slechts 2 AS'en — een extreem kort AS-PATH — en toch is de fysieke latentie hoog. Precies dat bedoelen we met “BGP-lengte is geen fysieke latentie”.

V. De twee beveiligingsnachtmerries van BGP — routelekken en routekaping

5.1 Routelek (route leak)

Een AS geeft per ongeluk routes die niet naar een upstream horen door aan een upstream of buur, waardoor wereldwijd verkeer het verkeerde pad op gaat. Een klassiek voorbeeld: een provider ziet routes van een klant aan voor zijn eigen routes en kondigt ze aan iedereen aan.

Bekend incident: in november 2017 verstoorde een routelek bij Level3 (AS3356) grote aantallen downstreamklanten van Comcast en Verizon.

5.2 BGP-kaping

Een kwaadwillend AS kondigt IP-prefixen aan die het niet bezit. Zodra andere AS'en de aankondiging accepteren, wordt verkeer naar de kaper omgeleid, wat MITM, denial of service of DNS-vergiftiging mogelijk maakt.

Bekende incidenten:

  • 2008: het Pakistaanse PTCL kondigde het prefix van YouTube aan, waardoor wereldwijd YouTube-verkeer 2 uur lang naar Pakistan werd omgeleid
  • 2018: eNet (AS10297) kondigde DNS-prefixen van Amazon Route 53 aan en kaapte zo ongeveer 2 uur lang verkeer van MyEtherWallet-gebruikers
  • 2022: het Russische RTCOMM kaapte kort een prefix van Twitter

5.3 Verdediging — RPKI ondertekent routes

RPKI (Resource Public Key Infrastructure), de RFC 6480-reeks, laat de rechtmatige houder van een IP-prefix cryptografisch ondertekenen dat “dit prefix alleen van dit AS mag komen”. BGP-routers die RPKI ondersteunen, laten routes vallen die niet of verkeerd zijn ondertekend.

Ongeveer de helft van alle IPv4-prefixen wereldwijd is nu met RPKI ondertekend, en dat aandeel blijft stijgen. Zoek je een IP-adres op via cleanip.io, dan toont de kaart “AS-info” de RPKI-status: valid / invalid / not-found.

VI. Opzoeken bij welk ASN een IP-adres of domein hoort

6.1 Rechtstreeks opzoeken op cleanip.io

Ga gewoon naar https://cleanip.io/8.8.8.8 of https://cleanip.io/AS15169 — we tonen de volledige ASN-informatie, registratiedatum, IP-bereiken, upstream/downstream en geografische spreiding.

6.2 BGP-visualisatie op cleanip.io

/asn-graph tekent de BGP-topologie voor elk ASN — van origin via Tier 2 tot Tier 1, zodat je in één oogopslag ziet wie met wie peert.

/asn-history toont het historische eigendom van een IP / CIDR — bij welke AS'en een CIDR door de tijd heen hoorde en wanneer dat veranderde.

6.3 Opdrachtregeltools

terminal — ASN lookup
$ whois -h whois.cymru.com " -v 8.8.8.8"
AS      | IP        | BGP Prefix    | CC | Registry | Allocated  | AS Name
15169   | 8.8.8.8   | 8.8.8.0/24    | US | arin     | 1992-12-01 | GOOGLE, US

$ curl https://api.bgpview.io/ip/8.8.8.8 | jq
{
  "data": {
    "ip": "8.8.8.8",
    "prefixes": [{
      "asn": { "asn": 15169, "name": "Google LLC" },
      "prefix": "8.8.8.0/24"
    }]
  }
}

VII. Snelnaslag van gangbare ASN's

ASNNaamType
AS13335CloudflareCDN / DNS
AS15169GoogleCloud / zoeken
AS16509Amazon AWSCloud
AS8075Microsoft / AzureCloud
AS32934Facebook (Meta)Sociaal
AS13414Twitter / XSociaal
AS2906NetflixVideo
AS4134China TelecomProvider (deels Tier 1)
AS4837China UnicomISP
AS9808China MobileISP
AS37963Alibaba / Alibaba CloudCloud
AS45102Alibaba Cloud InternationalCloud
AS132203Tencent CloudCloud
AS9009M247 (grote VPN-backboneprovider)IDC
AS62371Proton AG (ProtonVPN)VPN
AS24940HetznerDuitse VPS
AS16276OVHFranse VPS
AS20473Choopa (Vultr)VPS
AS14061DigitalOceanVPS

VIII. Waarom dit ook voor gewone gebruikers belangrijk is

  • Fraudedetectiesystemen kijken naar het ASN bij het beoordelen van de IP-reputatie — datacenter-ASN's (cloud-/VPN-providers) scoren meestal lager; ASN's van thuisverbindingen (China Telecom / Unicom) scoren hoger
  • Kies je een CDN voor grensoverschrijdend verkeer, kijk dan naar de AS-afstand tussen het ASN van je doelgebruikers en de nodes van het CDN — cleanip.io vertelt je met één opzoeking bij welk AS een IP-adres hoort
  • Tijdens een DDoS-aanval is het ASN het eerste aanknopingspunt om de bron te traceren — bijv. “het meeste aanvalsverkeer kwam van het datacenter AS46562 Performive”
  • Kies je een VPN, kijk dan op het ASN van welk IDC hij draait — zie VPN-tracering voor details

Verder lezen

mimetic
mimetic
mimetic