KNOWLEDGE

AS / ASN / routage BGP : comprendre l'ossature d'Internet

Internet n'est pas un réseau unique : c'est plus de 87 000 systèmes autonomes (AS) interconnectés par le protocole BGP. Qu'est-ce qu'un numéro d'AS ? Comment fonctionne BGP ? Comment se produisent les fuites et les détournements de routes ?

En bref

Ce qu'on appelle « Internet », ce sont en réalité plus de 87 000 réseaux indépendants (AS, Autonomous System ou système autonome) interconnectés, chacun doté d'un numéro unique (ASN, p. ex. AS13335 = Cloudflare). Ces AS s'échangent des routes via BGP en annonçant « voici les blocs d'IP que je peux joindre », ce qui forme une table de routage mondiale (environ 1 million de préfixes IPv4 et 200 000 préfixes IPv6). Un paquet qui part de chez vous vers Google traverse généralement 4 à 15 AS. Voyons cela étape par étape.

I. Qu'est-ce qu'un AS (système autonome) ?

Un AS (Autonomous System, ou système autonome) est un réseau ou un ensemble de réseaux soumis à une même politique de routage, sous une administration unique. Le protocole de routage qu'un AS utilise en interne (OSPF / IS-IS) ne regarde que lui ; entre AS, en revanche, c'est BGP qui sert à annoncer publiquement les préfixes IP.

  • Un grand FAI est lui-même un AS (China Telecom AS4134, China Unicom AS4837, China Mobile AS9808)
  • Un grand fournisseur cloud est un AS (Google AS15169, Cloudflare AS13335, AWS AS16509)
  • Universités, administrations et grandes entreprises peuvent disposer de leur propre AS
  • L'IP d'un abonné résidentiel ordinaire est découpée dans l'AS de son FAI : l'utilisateur final n'a pas besoin de son propre AS

1.1 Qui attribue les ASN

Les ASN (numéros d'AS) sont gérés par 5 registres Internet régionaux (RIR) :

RIRRégionPlage d'ASN typique
ARINAmérique du NordAS1-AS6655 + autres plages
RIPE NCCEurope / Moyen-OrientAS6656-AS9215 + autres plages
APNICAsie-PacifiqueAS17676-AS18431 + autres plages
LACNICAmérique latineAS27648-AS28671 + autres plages
AFRINICAfriqueAS36864-AS37887 + autres plages

À l'origine, les ASN étaient codés sur 16 bits (0-65535, qui ont commencé à se raréfier après 1996) ; ils sont aujourd'hui codés sur 32 bits (0-4294967295, RFC 6793). Environ 120 000 sont réellement utilisés dans le monde à ce jour.

1.2 Lire un ASN : les différents formats

AS13335 // ancien format (16 bits)
AS393227 // nouveau format purement numérique (32 bits)
AS6.10 // ancien format pointé (= 6×65536+10 = 393226 ; la RFC 5396 fait d'asplain la notation recommandée)

Aujourd'hui, on utilise simplement le format numérique. Le préfixe « AS » peut être omis, mais l'écrire est plus clair.

II. BGP, le « système de codes postaux » d'Internet

BGP (Border Gateway Protocol), défini par la RFC 4271, est le seul protocole de routage utilisé entre AS. Chaque AS se sert de BGP pour annoncer à ses AS voisins : « Je peux joindre ces préfixes IP, et par moi vous pouvez atteindre ces AS plus loin. »

2.1 Le cœur d'une annonce BGP : préfixe + AS-PATH

Table de routage BGP (extrait de RIPE RIS)
Prefix                Next Hop          AS-PATH
104.16.0.0/13    203.0.113.1   AS3356 AS13335   ← via Lumen vers Cloudflare
104.16.0.0/13    198.51.100.5   AS6939 AS13335   ← via HE.net vers Cloudflare
8.8.8.0/24      203.0.113.1   AS3356 AS15169   ← vers Google DNS
202.106.0.0/16  198.51.100.5   AS6939 AS4847 AS4134 ← vers China Telecom Pékin

L'AS-PATH liste tous les AS traversés depuis l'AS d'origine (le titulaire du préfixe) jusqu'au routeur courant. Il se lit de droite à gauche : l'AS le plus à droite est l'origine, le plus à gauche est le voisin.

2.2 Comment BGP choisit le meilleur chemin

Quand plusieurs chemins existent pour un même préfixe, BGP en retient un selon cet ordre de priorité (résumé) :

  1. LOCAL_PREF : la plus élevée l'emporte — préférence interne à l'AS (quel chemin est utilisé en premier)
  2. L'AS-PATH le plus court l'emporte — moins il y a d'AS traversés, mieux c'est
  3. Origin : IGP (interne) > EGP > Incomplete
  4. MED (Multi-Exit Discriminator) : le plus bas l'emporte — indication transmise d'un AS à l'autre
  5. eBGP > iBGP
  6. Coût IGP : le plus bas l'emporte
  7. Router ID : le plus bas l'emporte (départage final)

Attention : BGP ne choisit pas forcément le chemin le plus rapide. Un AS-PATH plus court ne signifie pas une latence physique plus faible. Une route intercontinentale qui traverse 1 AS peut être plus lente qu'une route intra-urbaine qui en traverse 3.

III. Tier 1 / Tier 2 / Tier 3 : la hiérarchie des FAI

Tous les AS se répartissent en trois niveaux, selon qu'ils doivent ou non acheter du transit à un opérateur amont :

NiveauDéfinitionExemples typiques
Tier 1Ne paie personne : atteint le monde entier uniquement grâce au peeringAT&T AS7018, Verizon AS701, Lumen/Level3 AS3356, NTT AS2914, Telia AS1299, Tata AS6453, GTT AS3257, China Telecom AS4134 (selon certaines définitions), China Unicom AS4837
Tier 2Pair de quelques Tier 1, mais paie pour une partie de son accèsLa plupart des FAI nationaux / grands fournisseurs cloud (Google AS15169, Microsoft AS8075, Cloudflare AS13335)
Tier 3Doit payer un opérateur amont pour atteindre les autres réseauxPetits FAI locaux / opérateurs d'accès

Chemin typique d'un paquet depuis une connexion résidentielle : chez vous → petit FAI local (Tier 3) → réseau provincial / métropolitain (Tier 2) → dorsale de China Telecom (Tier 1) → Tier 1 à l'étranger → réseau de destination.

IV. Testez vous-même : quels AS entre chez vous et Google ?

Utilisez mtr -bz (BSD : traceroute -A) pour voir le numéro d'AS de chaque saut :

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   (réseau privé, pas d'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  dorsale 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  nœud avant la sortie
6.  211.95.x.x                 0.0%   10 156.4 158.2  AS4134  passerelle internationale
7.  72.14.215.x                0.0%   10 158.1 159.8  AS15169 réseau Google
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

D'après cette trace mtr :

  • Domicile → réseau local de China Telecom (AS4134, sauts 2-3) : < 10 ms
  • Dorsale China Telecom (AS4134, sauts 4-6) : 5-150 ms
  • Passage de la passerelle internationale vers Google (AS15169, saut 7) : bond soudain à plus de 150 ms ← latence de la sortie internationale
  • À l'intérieur de Google (AS15169, sauts 8-9) : < 5 ms

D'une connexion résidentielle en Chine jusqu'à Google, on ne traverse que 2 AS (un AS-PATH extrêmement court), et pourtant la latence physique est élevée. C'est exactement ce que nous voulons dire par « la longueur BGP n'est pas la latence physique ».

V. Les deux cauchemars de sécurité de BGP : fuites et détournements de routes

5.1 Fuite de routes (route leak)

Un AS transmet par erreur à un opérateur amont ou à un voisin des routes qui n'auraient jamais dû remonter, ce qui envoie le trafic mondial sur le mauvais chemin. Exemple classique : un FAI prend les routes d'un client pour ses propres routes et les annonce à tout le monde.

Incident notable : en novembre 2017, une fuite de routes de Level3 (AS3356) a perturbé un grand nombre de clients en aval, chez Comcast et Verizon notamment.

5.2 Détournement BGP (BGP hijack)

Un AS malveillant annonce des préfixes IP qui ne lui appartiennent pas. Dès que d'autres AS acceptent l'annonce, le trafic est redirigé vers l'auteur du détournement, ce qui permet une attaque de l'homme du milieu (MITM), un déni de service ou un empoisonnement DNS.

Incidents notables :

  • 2008 : PTCL (Pakistan) annonce le préfixe de YouTube, et le trafic YouTube mondial est redirigé vers le Pakistan pendant 2 heures
  • 2018 : eNet (AS10297) annonce des préfixes DNS d'Amazon Route 53 et détourne ainsi le trafic des utilisateurs de MyEtherWallet pendant environ 2 heures
  • 2022 : l'opérateur russe RTCOMM détourne brièvement un préfixe de Twitter

5.3 La défense : RPKI signe les routes

RPKI (Resource Public Key Infrastructure), décrite par la série de RFC 6480, permet au titulaire légitime d'un préfixe IP de signer cryptographiquement « ce préfixe ne peut avoir pour origine que cet AS ». Les routeurs BGP compatibles RPKI rejettent les routes non signées ou mal signées.

Environ la moitié des préfixes IPv4 mondiaux sont désormais signés via RPKI, et la proportion continue d'augmenter. Lorsque vous recherchez une IP sur cleanip.io, la carte « Informations ASN » affiche son statut RPKI : valid / invalid / not-found.

VI. Comment savoir à quel ASN appartient une IP ou un domaine

6.1 Recherche directe sur cleanip.io

Rendez-vous simplement sur https://cleanip.io/8.8.8.8 ou https://cleanip.io/AS15169 : nous affichons les informations complètes de l'ASN, sa date d'enregistrement, ses plages d'IP, ses opérateurs amont et clients aval, et sa répartition géographique.

6.2 Visualisation BGP sur cleanip.io

/asn-graph trace la topologie BGP de n'importe quel ASN, de l'origine jusqu'aux Tier 1 en passant par les Tier 2 : vous voyez d'un coup d'œil qui fait du peering avec qui.

/asn-history affiche l'historique des titulaires d'une IP ou d'un CIDR : à quels AS un CIDR a appartenu au fil du temps, et quand cela a changé.

6.3 Outils en ligne de commande

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. Aide-mémoire des ASN courants

ASNNomType
AS13335CloudflareCDN / DNS
AS15169GoogleCloud / recherche
AS16509Amazon AWSCloud
AS8075Microsoft / AzureCloud
AS32934Facebook (Meta)Réseau social
AS13414Twitter / XRéseau social
AS2906NetflixVidéo
AS4134China TelecomFAI (Tier 1 partiel)
AS4837China UnicomISP
AS9808China MobileISP
AS37963Alibaba / Alibaba CloudCloud
AS45102Alibaba Cloud InternationalCloud
AS132203Tencent CloudCloud
AS9009M247 (dorsale majeure des services VPN)IDC
AS62371Proton AG (ProtonVPN)VPN
AS24940HetznerVPS allemand
AS16276OVHVPS français
AS20473Choopa (Vultr)VPS
AS14061DigitalOceanVPS

VIII. Pourquoi c'est important, même pour l'utilisateur ordinaire

  • Les systèmes de contrôle des risques tiennent compte de l'ASN pour évaluer la réputation d'une IP : les ASN de datacenter (fournisseurs cloud / VPN) obtiennent généralement des scores plus bas ; les ASN résidentiels (China Telecom / Unicom) sont mieux notés
  • Pour choisir un CDN destiné à un trafic transfrontalier, regardez la distance en AS entre l'ASN de vos utilisateurs cibles et les nœuds du CDN : une seule recherche sur cleanip.io vous indique à quel AS appartient une IP
  • Lors d'une attaque DDoS, l'ASN est le premier indice pour remonter à la source, p. ex. « la majeure partie du trafic d'attaque provenait du datacenter AS46562 Performive »
  • Pour choisir un VPN, vérifiez l'ASN du datacenter qui l'héberge — voir l'article Traçage VPN pour plus de détails

Pour aller plus loin

mimetic
mimetic
mimetic