
Système de recensement anycast longitudinal qui sonde les préfixes IPv4/IPv6 via ICMP, TCP et DNS pour détecter les déploiements anycast et géolocaliser les PoP, publiant des jeux de données quotidiens et une API.
LACeS : un système de recensement anycast longitudinal ouvert, rapide, responsable et efficace
Contact : [email protected]
Les fichiers parquet de ce dépôt peuvent être téléchargés dans d'autres formats via l'API REST manycast.net :
| Format | Exemple |
|---|---|
.parquet | https://manycast.net/api/v1/export/IPv4-latest.parquet |
.parquet.gz | https://manycast.net/api/v1/export/IPv4-latest.parquet.gz |
.csv.gz | https://manycast.net/api/v1/export/IPv4-latest.csv.gz |
.json.gz | https://manycast.net/api/v1/export/IPv4-latest.json.gz |
Remplacez latest par une date spécifique (par exemple, 2026-03-22) pour télécharger un instantané historique. IPv4 et IPv6 sont disponibles avec les préfixes IPv4- et IPv6-.
Exemple :
curl -O https://manycast.net/api/v1/export/IPv4-2026-03-22.csv.gz
Consultez la documentation complète de l'API pour interroger des préfixes individuels, des ASN et des statistiques quotidiennes.
Nous fournissons un tableau de bord interactif pour interroger, visualiser et explorer les données de recensement :
Recherche et consultation. Saisissez n'importe quelle adresse IP, préfixe, ASN, domaine ou TLD pour consulter le statut anycast, la géolocalisation des PoP détectés et les informations réseau associées. Des instantanés historiques sont disponibles pour toutes les dates de recensement depuis le 21 mars 2024.
Mode comparaison. Sélectionnez deux dates de recensement différentes pour suivre l'évolution du déploiement anycast au fil du temps.
Intégration RIPE Atlas. Exécutez l'algorithme de géolocalisation sur les résultats publics de RIPE Atlas.
Analytique. Statistiques dans le temps, anycast par région, courbe de Hilbert de l'espace anycast, ...
Le fichier census_helper.py fournit des fonctions pratiques pour télécharger et filtrer le jeu de données. Nécessite pandas, pyarrow et requests.
import census_helper
# Download latest snapshot and filter to high-confidence anycast prefixes
census = census_helper.download_latest("v4")
anycast = census_helper.filter_anycast(census, "v4")
# Or use comprehensive coverage (includes borderline cases)
anycast = census_helper.filter_anycast(census, "v4", confidence="comprehensive")
python census_helper.py --ip-version v4 --date latest --prefixes-only
python census_helper.py --ip-version v4 --date 2026-03-22 --confidence comprehensive
Selon les besoins, nous recommandons le filtrage suivant :
Haute confiance :
(AB > 3) || (GCD > 1)
Couverture complète :
(AB > 1) || (GCD > 1)
Le recensement utilise deux méthodes de détection :
Basée sur l'anycast (AB) : Détecte l'anycast à l'aide de l'anycast. Un préfixe est considéré comme anycast si plusieurs PoP reçoivent des réponses. Voir MAnycast2 pour plus de détails. Trois protocoles de sondage sont utilisés : ICMP/ping, TCP SYN/ACK et DNS/UDP.
Basée sur la latence (GCD) : Détecte l'anycast à l'aide de mesures de latence et de calculs de distance orthodromique.
REMARQUE Nous fournissons les résultats de géolocalisation unicast lorsque AB > 1 mais GCD == 1. Cela peut aider à déterminer si les résultats AB sont des FP ou si les résultats GCD sont des FN.
Derniers fichiers (mis à jour quotidiennement) :
IPv4-latest.parquet
IPv6-latest.parquet
IPv4-latest.csv
IPv6-latest.csv
stats-latest
Fichiers historiques (depuis le 21 mars 2024) :
YYYY/MM/DD/IPv4.parquet
YYYY/MM/DD/IPv6.parquet
YYYY/MM/DD/IPv4.csv
YYYY/MM/DD/IPv6.csv
YYYY/MM/DD/stats
| Colonne | Description |
|---|---|
prefix | Le préfixe anycast candidat /24 (par exemple, 1.0.0.0/24) |
AB_ICMPv4/v6 | Emplacements trouvés à l'aide de la méthode basée sur l'anycast (ICMP) |
AB_TCPv4/v6 | Emplacements trouvés à l'aide de la méthode basée sur l'anycast (TCP SYNACK) |
AB_DNSv4/v6 | Emplacements trouvés à l'aide de la méthode basée sur l'anycast (DNS/UDP) |
GCD_ICMPv4/v6 | Sites trouvés à l'aide de la méthode basée sur la latence (ICMP) |
GCD_TCPv4/v6 | Sites trouvés à l'aide de la méthode basée sur la latence (TCP) |
partial | Indique si un anycast partiel a été détecté (IPv4 uniquement) |
backing_prefix | Préfixe correspondant de la table de routage IP (RouteViews) |
ASN | ASN(s) annonçant le préfixe (MOAS séparés par ;) |
locations | Données de géolocalisation détaillées des sites détectés (voir ci-dessous) |
| Champ | Description |
|---|---|
city | Ville géolocalisée à l'aide de l'algorithme d'iGreedy |
country_code | Code pays à 2 caractères (ISO 3166-1 alpha-2) |
airport_code | Code IATA à 3 lettres de l'aéroport le plus proche |
lat | Latitude de l'aéroport |
lon | Longitude de l'aéroport |
radius | Rayon du disque RTT en kilomètres |
candidate_diameter | Distance maximale par paire (km) entre les villes candidates restantes ; des valeurs plus petites indiquent une précision plus élevée |
num_constraints | Nombre de disques qui se chevauchent et qui ont affiné l'ensemble des candidats ; des valeurs plus élevées indiquent une confiance plus élevée dans le résultat |
Les trois derniers champs aident à déterminer la confiance des résultats de géolocalisation.
Des données limitées sont fournies au format CSV pour faciliter l'accès via l'interface Web de GitHub :
prefix,number_of_sites,backing_prefix
1.1.1.0/24,67,1.1.1.0/24
Nous utilisons la liste de cibles IPv4 USC/ISI ANT (adresses IP réactives ICMP/ping classées par /24), complétée par :
Nous utilisons :
Pour minimiser l'impact du sondage quotidien, nous scannons à la granularité /24. Cependant, certains préfixes contiennent des adresses IP unicast et anycast mixtes (voir l'article pour plus de détails), que nous détectons à l'aide d'un sondage multi-cibles.
Nous rendons tous les outils de mesure et d'analyse publics sous licence MPL 2.0 :
MAnycastR fournit des implémentations pour les mesures AB et GCD
MiGreedy est notre implémentation optimisée de l'algorithme d'iGreedy pour la géolocalisation IP, conçue pour des recensements à grande échelle en production. Elle prend en charge la géolocalisation unicast, une détection améliorée par intersection, ainsi que des métriques de confiance et de précision.
Lorsque vous utilisez ce jeu de données pour la recherche académique, veuillez citer l'article suivant :
@inproceedings{10.1145/3730567.3764484,
author = {Hendriks, Remi and Luckie, Matthew and Jonker, Mattijs and van Rijswijk-Deij, Roland},
title = {LACeS: an Open, Fast, Responsible and Efficient Longitudinal Anycast Census System},
year = {2025},
booktitle = {Proceedings of the 2025 Internet Measurement Conference}
}