
Längsschnitt-Anycast-Census-System, das IPv4/IPv6-Präfixe über ICMP, TCP und DNS sondiert, um Anycast-Deployments zu erkennen und PoPs zu geolokalisieren, mit täglichen Datensätzen und einer API.
Die Parquet-Dateien in diesem Repository können über die manycast.net REST API in alternativen Formaten heruntergeladen werden:
| Format | Beispiel |
|---|---|
.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 |
Ersetzen Sie latest durch ein bestimmtes Datum (z. B. 2026-03-22), um einen historischen Schnappschuss herunterzuladen. Sowohl IPv4 als auch IPv6 sind mit den Präfixen IPv4- und IPv6- verfügbar.
Beispiel:
curl -O https://manycast.net/api/v1/export/IPv4-2026-03-22.csv.gz
Siehe die vollständige API-Dokumentation für Abfragen einzelner Präfixe, ASNs und täglicher Statistiken.
Wir bieten ein interaktives Dashboard zum Abfragen, Visualisieren und Erkunden der Census-Daten:
Suche & Nachschlagen. Geben Sie eine beliebige IP-Adresse, ein Präfix, eine ASN, eine Domain oder eine TLD ein, um den Anycast-Status, die Geolokalisierung erkannter PoPs und zugehörige Netzwerkinformationen nachzuschlagen. Historische Schnappschüsse sind für alle Census-Daten seit dem 21. März 2024 verfügbar.
Vergleichsmodus. Wählen Sie zwei verschiedene Census-Daten aus, um zu verfolgen, wie sich der Anycast-Einsatz im Laufe der Zeit verändert hat.
RIPE Atlas-Integration. Führen Sie den Geolokalisierungsalgorithmus auf öffentlichen RIPE Atlas-Ergebnissen aus.
Analytik. Statistiken im Zeitverlauf, Anycast nach Region, Hilbert-Kurve des Anycast-Raums, ...
Die Datei census_helper.py bietet Komfortfunktionen zum Herunterladen und Filtern des Datensatzes. Erfordert pandas, pyarrow und 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
Je nach Anforderungen empfehlen wir die folgende Filterung:
Hohe Konfidenz:
(AB > 3) || (GCD > 1)
Umfassende Abdeckung:
(AB > 1) || (GCD > 1)
Der Census verwendet zwei Erkennungsmethoden:
Anycast-basiert (AB): Erkennt Anycast mittels Anycast. Ein Präfix gilt als Anycast, wenn mehrere PoPs Antworten erhalten. Siehe MAnycast2 für Details. Es werden drei Probe-Protokolle verwendet: ICMP/ping, TCP SYN/ACK und DNS/UDP.
Latenz-basiert (GCD): Erkennt Anycast mittels Latenzmessungen und Berechnungen der Großkreis-Distanz.
HINWEIS Wir stellen Unicast-Geolokalisierungsergebnisse bereit, wenn AB > 1, aber GCD == 1. Dies kann dabei helfen, festzustellen, ob AB-Ergebnisse FPs oder GCD-Ergebnisse FNs sind.
Neueste Dateien (täglich aktualisiert):
IPv4-latest.parquet
IPv6-latest.parquet
IPv4-latest.csv
IPv6-latest.csv
stats-latest
Historische Dateien (seit dem 21. März 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
| Spalte | Beschreibung |
|---|---|
prefix | Das Kandidaten-Anycast-/24-Präfix (z. B. 1.0.0.0/24) |
AB_ICMPv4/v6 | Standorte, die mit der anycast-basierten Methode gefunden wurden (ICMP) |
AB_TCPv4/v6 | Standorte, die mit der anycast-basierten Methode gefunden wurden (TCP SYNACK) |
AB_DNSv4/v6 | Standorte, die mit der anycast-basierten Methode gefunden wurden (DNS/UDP) |
GCD_ICMPv4/v6 | Standorte, die mit der latenzbasierten Methode gefunden wurden (ICMP) |
GCD_TCPv4/v6 | Standorte, die mit der latenzbasierten Methode gefunden wurden (TCP) |
partial | Ob partielles Anycast erkannt wurde (nur IPv4) |
backing_prefix | Entsprechendes IP-Routing-Tabellen-Präfix (RouteViews) |
ASN | ASN(s), die das Präfix ankündigen (MOASes getrennt durch ;) |
locations | Detaillierte Geolokalisierungsdaten der erkannten Standorte (siehe unten) |
| Feld | Beschreibung |
|---|---|
city | Geolokalisierte Stadt unter Verwendung von iGreedy's Algorithmus |
country_code | 2-stelliger Ländercode (ISO 3166-1 alpha-2) |
airport_code | IATA-3-Buchstaben-Code des nächstgelegenen Flughafens |
lat | Breitengrad des Flughafens |
lon | Längengrad des Flughafens |
radius | Radius der RTT-Scheibe in Kilometern |
candidate_diameter | Maximale paarweise Distanz (km) zwischen verbleibenden Kandidatenstädten; kleinere Werte deuten auf höhere Präzision hin |
num_constraints | Anzahl der überlappenden Scheiben, die die Kandidatenmenge verfeinert haben; höhere Werte deuten auf höhere Konfidenz im Ergebnis hin |
Die letzten drei Felder helfen bei der Bestimmung der Konfidenz von Geolokalisierungsergebnissen.
Begrenzte Daten werden im CSV-Format für einen einfachen Zugriff über die Web-UI von GitHub bereitgestellt:
prefix,number_of_sites,backing_prefix
1.1.1.0/24,67,1.1.1.0/24
Wir verwenden die USC/ISI ANT IPv4-Hitlist (nach ICMP/ping-Antwortverhalten pro /24 geordnete IP-Adressen), ergänzt durch:
Wir verwenden:
Um die täglichen Auswirkungen der Probing-Aktivitäten zu minimieren, scannen wir mit /24-Granularität. Einige Präfixe enthalten jedoch gemischte Unicast- und Anycast-IP-Adressen (siehe Paper für Details), die wir mittels Multi-Target-Probing erkennen.
Wir stellen alle Mess- und Analysewerkzeuge unter der MPL 2.0-Lizenz öffentlich zur Verfügung:
MAnycastR bietet Implementierungen für AB- und GCD-Messungen
MiGreedy ist unsere optimierte Implementierung von iGreedy's Algorithmus für IP-Geolokalisierung, konzipiert für groß angelegte Produktions-Censusse. Es unterstützt Unicast-Geolokalisierung, verbesserte Erkennung mittels Schnittmenge sowie Konfidenz-/Genauigkeitsmetriken.
Wenn Sie diesen Datensatz für akademische Forschung verwenden, zitieren Sie bitte das folgende Paper:
@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}
}