Première rédaction de cet article le 29 mars 2025
Dans les discussions au sujet du réseau Internet, on voit souvent passer des demandes sur l'AS associé à une adresse IP ou bien le contraire. Mais les questions simples du genre « de quel AS dépend une adresse IP ? » sont… trop simples.
Il n'y a en effet pas d'association simple : une adresse IP peut être annoncée via BGP par plusieurs AS (même si ce n'est pas le cas le plus courant) et, surtout, surtout, il faut différencier l'association administrative (quel opérateur s'est fait allouer quelle adresse IP) et l'association technique (que voit-on avec BGP).
Commençons par la partie administrative. Un opérateur réseau est
  typiquement LIR, membre d'un RIR, un registre d'adresses IP, dont
  il obtient des adresses IP (ou plus exactement des préfixes
  regroupant de nombreuses adresses). On peut obtenir l'information
  sur ces allocations de préfixe avec des protocoles comme
  whois ou RDAP (comme
  pour les noms de domaine) ou simplement via le site Web du
  registre. whois est très ancien, a plusieurs limites sérieuses (pas
  de jeu de caractères normalisé, zéro
  sécurité, il n'est même pas chiffré, etc). RDAP convient
  mieux pour programmer. Ici, comme je suis vieux et
  conservateur, je vais utiliser whois, d'autant plus que, dans
  certains RIR, de l'information sur l'AS d'origine est distribuée en
  whois mais pas en RDAP (qui n'a pas de réponse normalisée pour cette
  information). Je me demande quel opérateur a
  obtenu l'adresse 18.220.219.93 (choisie car
  elle héberge un ramasseur d'une boite d'IA, qui vient de passer
  sur ce blog).
  
% whois 18.220.219.93 … NetRange: 18.32.0.0 - 18.255.255.255 CIDR: 18.128.0.0/9, 18.64.0.0/10, 18.32.0.0/11 Organization: Amazon Technologies Inc. (AT-88-Z) …
OK, c'est une machine d'AWS. Je connais donc l'opérateur. La base de l'ARIN ne stockait apparemment pas le numéro d'AS de AWS. Celle du RIPE-NCC est en général de meilleure qualité donc on va réessayer avec une adresse européenne (un autre visiteur de ce blog, un ramasseur pour un moteur de recherche).
% whois 91.242.162.6 … inetnum: 91.242.162.0 - 91.242.162.255 netname: QWANT-NET org-name: QWANT SAS … route: 91.242.162.0/24 descr: QWANT SAS origin: AS199064
  Cette fois, dans l'objet de type route (qui,
  comme indiqué plus haut, n'est pas encore disponible pour RDAP), on a le
  numéro de l'AS
  associé à cette adresse. On peut obtenir des informations sur cet AS
  via whois (whois AS199064…), RDAP, etc. Cette
  information peut être utilisée pour bâtir automatiquement des règles
  de filtrage pour les routeurs BGP (on utilise alors la base du RIR
  comme IRR, Internet Routing
  Registry) en considérant que seul cet AS peut annoncer ce
  préfixe 91.242.162.0/24. Un exemple d'IRR
  public, qui agrège les informations des RIR et en ajoute certaines,
  est celui de
  NTT. Rappelez-vous que toutes ces bases de données sont de
  qualité… variable.
Mais tout ceci, c'est purement administratif. Ce sont des bases
  de données relativement statiques qui sont stockées par les
  RIR. Dans l'Internet vivant et dynamique, c'est autre chose. Là, il
  faut regarder ce que contiennent les tables BGP, remplies par ce protocole de
  routage. Là, ce sera bien plus dynamique (mais pas plus
  « réel »). On peut consulter ces tables si on gère un routeur BGP
  situé dans la DFZ
  mais, comme ce n'est probablement pas le cas de la majorité des
  lecteurices de ce blog, on va utiliser les
  outils disponibles en ligne. Servons-nous par exemple du
  service en bgp.bortzmeyer.org.
  
% curl -s https://bgp.bortzmeyer.org/18.220.219.93 18.220.0.0/14 16509
  L'adresse IP allouée à Amazon est annoncée en
  BGP par l'AS 16509. C'est l'AS d'Amazon, ce qui ne nous surprendra
  pas mais, bien sûr, un préfixe peut être annoncé par un autre
  opérateur que celui qui l'a réservé. Regardez par exemple
  2001:678:4c::1, réservé par
  l'Afnic, mais annoncé en BGP par son
  hébergeur, PCH (dont le numéro d'AS, que je
  vous laisse trouver, donne une bonne idée de la culture et de
  l'ancienneté de cette organisation).
  
Ah, et j'avais dit qu'une adresse IP pouvait être annoncée par
  plusieurs AS. C'est surtout le cas pour les services
  anycastés. Regardez avec le
  script bgproute (présenté dans la page citée plus haut).
  
% bgproute 2001:678:c::1 2001:678:c::/48 2486 2484 % bgproute 2001:503:d2d::30 2001:503:d2d::/48 36617 21313 40647 396599 397196 396566 396576 19836 397193 396555 396550
Le premier est annoncé par deux AS, le deuxième par pas moins de onze AS différents.
J'insiste sur le fait que les deux visions, l'administrative dans les bases des RIR, et la technique dans les tables BGP, sont aussi « authentiques » ou « correctes » l'une que l'autre. Ce sont simplement deux visions différentes de l'objet socio-technique assez complexe qu'est l'Internet.
Version PDF de cette page (mais vous pouvez aussi imprimer depuis votre navigateur, il y a une feuille de style prévue pour cela)
Source XML de cette page (cette page est distribuée sous les termes de la licence GFDL)