Skip to content
KitploitKITPLOIT
ToolsExploitsBlog
Log in
Einreichen
ToolsExploitsBlog
Einreichen

Hacking-, PenTest- und Cybersicherheits-Tools für Ihr Sicherheitsarsenal!

Kitploit ist ein Verzeichnis von Hacking-, Cybersicherheits- und Pentesting-Tools. Entdecken Sie die neuesten Projekt-Updates, um Schwachstellen zu finden, Systeme zu analysieren, Tests zu automatisieren und Ihre Sicherheit zu stärken.

··Feeds·Kontakt·Datenschutz·© 2026 Kitploit

Tool-Verzeichnis

Kategorien

Alle Kategorien anzeigen
Loading categories
zannotate — Dienstprogramm zum Annotieren von Internet-Datensätzen mit kontextuellen Metadaten (z.B. Origin AS, MaxMind GeoIP2, Reverse-DNS und WHOIS) | Kitploit
Tools/GitHubGitHub/zmap/zannotate
OSINT (Open-Source-Intelligence)AufklärungNetzwerkkartierungInformationsbeschaffungBedrohungsanalyseDNS-Analyse
GitHubzmap/zannotate

zannotate

Dienstprogramm zum Annotieren von Internet-Datensätzen mit kontextuellen Metadaten (z.B. Origin AS, MaxMind GeoIP2, Reverse-DNS und WHOIS)

Repository anzeigen
1232218vor 21 TagenVon Kitploit geprüft

Beliebteste

Alle anzeigen →

Entdecken Sie die meistgenutzten Tools unserer Community.

Alle Tools erkunden

Durchsuchen Sie unsere Tool-Sammlung

Alle Tools anzeigen →
Teilen
# ZAnnotate

ZAnnotate ist ein Go-Dienstprogramm, das die Annotation großer IP-Datensätze mit Netzwerkmetadaten erleichtert. Derzeit umfasst dies:

| CLI-Flag      | Beschreibung                                                                        |   Benötigt API-Schlüssel | Benötigt Daten-Download |
|---------------|-------------------------------------------------------------------------------------|:------------------------:|:-----------------------:|
| `--censys`    | Censys Internet-Intelligenz (Live-API)                                              |           Ja             |                         |
| `--cymru`     | Cymru IP-Ursprungs-/Peer-ASN und ASN-Details                                        |                          |                         |
| `--geoasn`    | MaxMind GeoIP ASN-Daten                                                             |                          |           Ja            |
| `--geoip2`    | MaxMind GeoIP2 Stadt- und Geolokalisierungsdaten                                    |                          |           Ja            |
| `--greynoise` | GreyNoise Psychic-Bedrohungsintelligenz und CVE-Daten                               | Ja (zum Herunterladen)   |           Ja            |
| `--ipinfo`    | IPInfo.io ASN- und Geolokalisierungsdaten                                           |                          |           Ja            |
| `--rdap`      | RDAP (WHOIS-Nachfolger) - Live-Abfragen                                             |                          |                         |
| `--rdns`      | Reverse-DNS-Abfragen (live)                                                         |                          |                         |
| `--routing`   | BGP/Routing-Daten aus einer MRT-Routing-Tabelle                                     |                          |           Ja            |
| `--spur`      | Spur-Intelligenz (ASN, Organisation, Infrastrukturklassifikation, Geolokalisierung) |           Ja             |                         |

**Springe zur Modul-Einrichtung:**
[Censys](#censys) ·
[Cymru](#cymru) ·
[GeoASN](#MaxMind-GeoLite-asn) ·
[GeoIP](#maxmind-geoip-asn-and-city-formerly-geoip2) ·
[GreyNoise](#greynoise-psychic) ·
[IPInfo.io](#ipinfoio) ·
[RDAP](#rdap-whois-successor) ·
[RDNS/Reverse DNS](#reverse-dns-rdns) ·
[Routing/BGP](#bgp-routing-tables) ·
[Spur](#spur-ip-enrichment--intelligence)

Sie können jede beliebige Kombination der Annotatoren verwenden, hier ist zum Beispiel eine Kombination aus Reverse-DNS- und IPInfo-Annotationen:

```shell
echo "1.1.1.1" | zannotate --rdns --ipinfo --ipinfo-database=./data-snapshots/ipinfo_lite.mmdb
```

```json
{
   "ip":"1.1.1.1",
   "ipinfo":{"country":"Australia","country_code":"AU","continent":"Oceania","continent_code":"OC","asn":"AS13335","as_name":"Cloudflare, Inc.","as_domain":"cloudflare.com"},
   "rdns":{"domain_names":["one.one.one.one"]}
}
```

`--help` enthält weitere Details zu jedem Annotator und seinen verfügbaren Flags.

```shell
zannotate --help
```

## Installation

ZAnnotate kann mit `make install` installiert werden:

```shell
make install
```

Oder, falls `make` nicht installiert ist, können Sie den folgenden Befehl verwenden:

```shell
cd cmd/zannotate && go install
```

In beiden Fällen wird die Binärdatei `zannotate` in Ihrem `$GOPATH/bin`-Verzeichnis installiert.

Überprüfen Sie die korrekte Installation mit:

```shell
zannotate --help
```

## Eingabe/Ausgabe

### Eingabe

#### Zeilenweise getrennte IPs

Standardmäßig erwartet ZAnnotate zeilenweise getrennte IP-Adressen auf der Standardeingabe. Zum Beispiel:

```shell
printf "1.1.1.1\n8.8.8.8" | zannotate --rdns
```

```jsonl
{"ip":"1.1.1.1","rdns":{"domain_names":["one.one.one.one"]}}
{"ip":"8.8.8.8","rdns":{"domain_names":["dns.google"]}}
```

#### JSON

Möglicherweise möchten Sie Daten annotieren, die bereits im JSON-Format vorliegen. Verwenden Sie dann das Flag `--input-file-type=json`. Dadurch wird ein `zannotate`-Feld in das vorhandene JSON-Objekt eingefügt. Zum Beispiel:

```shell
echo '{"ip": "1.1.1.1"}' | zannotate --rdns --geoasn --geoasn-database=/path-to-geo-asn.mmdb --input-file-type=json
```

```json
{"ip":"1.1.1.1","zannotate":{"geoasn":{"asn":13335,"org":"CLOUDFLARENET"},"rdns":{"domain_names":["one.one.one.one"]}}}
```

Wenn Ihre JSON-Objekte ein anderes Feld für die IP-Adresse als das Standardfeld `ip` haben, können Sie dies mit dem Flag `--input-ip-field` angeben. Wenn Ihre JSON-Objekte beispielsweise ein `ip_address`-Feld haben, können Sie Folgendes verwenden:

```shell
echo '{"ip_address": "1.1.1.1"}' | zannotate --rdns --input-file-type=json --input-ip-field=ip_address
```

```json
{"ip_address":"1.1.1.1","zannotate":{"rdns":{"domain_names":["one.one.one.one"]}}}
```

#### CSV

Wenn Ihre Eingabedaten im CSV-Format vorliegen, können Sie das Flag `--input-file-type=csv` verwenden.

```shell
printf "name,ip,date\n cloudflare,1.1.1.1,04-04-26\n google,8.8.8.8,04-04-26" | zannotate --rdns --input-file-type=csv
```

```jsonl
{"name":" cloudflare","ip":"1.1.1.1","date":"04-04-26","zannotate":{"rdns":{"domain_names":["one.one.one.one"]}}}
{"name":" google","ip":"8.8.8.8","date":"04-04-26","zannotate":{"rdns":{"domain_names":["dns.google"]}}}
```

Analog zu JSON können Sie das Flag `--input-ip-field` verwenden, um eine andere Spalte als `ip` anzugeben, die die IP-Adresse enthält.

```shell
printf "name,ip_address,date\n cloudflare,1.1.1.1,04-04-26\n google,8.8.8.8,04-04-26" | zannotate --rdns --input-file-type=csv --input-ip-field=ip_address
```

```jsonl
{"date":"04-04-26","zannotate":{"rdns":{"domain_names":["dns.google"]}},"name":" google","ip_address":"8.8.8.8"}
{"date":"04-04-26","zannotate":{"rdns":{"domain_names":["one.one.one.one"]}},"name":" cloudflare","ip_address":"1.1.1.1"}
```

### Ausgabe

Standardmäßig liest ZAnnotate zeilenweise getrennte IP-Adressen von der Standardeingabe und gibt für jede Zeile ein JSON-Objekt auf der Standardausgabe aus, wie hier:

```shell
echo "1.1.1.1" | zannotate --rdns --geoasn --geoasn-database=/path-to-geo-asn.mmdb
```

```json
{"ip":"1.1.1.1","geoasn":{"asn":13335,"org":"CLOUDFLARENET"},"rdns":{"domain_names":["one.one.one.one"]}}
```

Wenn eine IP-Adresse nicht annotiert werden kann, sei es aufgrund eines Fehlers oder fehlender Daten, erscheint für diese Annotation ein leeres Feld.
Wenn eine IP-Adresse beispielsweise privat ist und daher keine RDNS- oder ASN-Daten hat, sieht die Ausgabe wie folgt aus:

```shell
echo "127.0.0.1" | zannotate --rdns --geoasn --geoasn-database=/path-to-geo-asn.mmdb
```

```json
{"geoasn":{},"rdns":{},"ip":"127.0.0.1"}
```

#### Flags für JSON- und CSV-Ausgabe

Das Flag `--output-annotation-field` kann verwendet werden, um einen anderen Feldnamen für die Annotationen anstelle von `zannotate` für CSV- und JSON-Dateieingaben anzugeben.

Beispiel mit dem Ausgabe-Tag `--output-annotation-field="info"` und JSON-Eingabe:

```shell
printf "name,ip_address,date\n cloudflare,1.1.1.1,04-04-26\n google,8.8.8.8,04-04-26" | zannotate --rdns --input-file-type=csv --input-ip-field=ip_address --output-annotation-field="info"
```

```json lines
{"name":" cloudflare","ip_address":"1.1.1.1","date":"04-04-26","info":{"rdns":{"domain_names":["one.one.one.one"]}}}
{"ip_address":"8.8.8.8","date":"04-04-26","info":{"rdns":{"domain_names":["dns.google"]}},"name":" google"}
```

## Module

> [!NOTE]
> URLs und Anleitungen können sich im Laufe der Zeit ändern. Diese sind Stand Mai 2026 aktuell.

### Censys

Censys bietet internetweite Host- und Netzwerkdaten, einschließlich Informationen darüber, welche Dienste auf einer IP ausgeführt werden, welche TLS-Zertifikate vorhanden sind und mehr.
Sie bieten einen kostenlosen Tarif an, der eine begrenzte Anzahl von Abfragen pro Monat ermöglicht, mit dem IP-Annotationen mit Censys-Daten angereichert werden können.

> [!NOTE]
> Das kostenlose Konto (Stand April 2026) erlaubt eine einzige gleichzeitige Anfrage und 100 Anfragen pro Monat.
> Sobald alle Credits aufgebraucht sind, gibt die Censys-API bei weiteren Anfragen einen Fehler zurück, bis die Credits zu Beginn des nächsten Monats zurückgesetzt werden oder Sie zusätzliche Credits erwerben.
> ZAnnotate wird bei Auftreten dieses Fehlers beendet, um stille Fehler zu vermeiden. Wenn Sie einen großen Datensatz annotieren möchten, achten Sie auf Ihren Credit-Verbrauch und priorisieren Sie nur die IPs, für die Sie Credits haben.
> Da das kostenlose Konto nur eine einzige gleichzeitige Anfrage zulässt, sollten Sie `--censys-threads=1` belassen, es sei denn, Sie bezahlen für eine höhere Stufe.

1. Erstellen Sie ein Konto bei [Censys.io](https://censys.io) und holen Sie sich einen persönlichen Zugriffstoken (PAT) unter Persönliche Einstellungen > Persönliche Zugriffstoken.
2. Annotieren Sie mit Censys-Daten:

```shell
echo "8.8.8.8" | zannotate --censys --censys-pat="CENSYS_PAT_HERE"
```

Ergebnisse aus Gründen der Kürze gekürzt:
```json
{
   "ip":"8.8.8.8",
   "censys": {
      "whois":{
         "network":{ "name":"Google LLC","cidrs":["8.8.8.0/24"],"created":"2023-12-28T00:00:00Z","updated":"2023-12-28T00:00:00Z","allocation_type":"ALLOCATION","handle":"GOGL"},
         "organization":{"state":"CA","postal_code":"94043","country":"US","tech_contacts":[{"handle":"ZG39-ARIN","name":"Google LLC","email":"[email protected]"}],
            "handle":"GOGL","street":"1600 Amphitheatre Parkway","abuse_contacts":[{"handle":"ABUSE5250-ARIN","name":"Abuse","email":"[email protected]"}],
            "admin_contacts":[{"handle":"ZG39-ARIN","name":"Google LLC","email":"[email protected]"}],
            "name":"Google LLC",
            "city":"Mountain View"}},
      "services":[{
         "port":53,"protocol":"DNS","transport_protocol":"udp","ip":"8.8.8.8","scan_time":"2026-04-10T02:55:53Z"}]}}
```

### Cymru

Cymru stellt ASN- und BGP-Peering-Informationen für IP-Adressen bereit. Sie können das Flag `--cymru` verwenden, um Cymru nach diesen Informationen abzufragen.
Cymru hat einen DNS-Dienst eingerichtet, um diese Informationen bereitzustellen. Standardmäßig verwendet ZAnnotate die systemeigenen DNS-Resolver für die Abfrage.
Wenn Sie mit Ihrem lokalen DNS-Resolver Zeitüberschreitungen feststellen, können Sie mit dem Flag `--cymru-dns-servers` benutzerdefinierte Resolver angeben.
`--cymru-threads` und `--cymru-timeout` sind ebenfalls verfügbar, um die Leistung der Cymru-Annotationen zu konfigurieren. Die Standardeinstellungen sind so gewählt, dass eine gute Leistung erzielt wird, während gleichzeitig Zeitüberschreitungen mit den meisten DNS-Resolvern vermieden werden.
Standardmäßig ruft der Cymru-Annotator die Ursprungs- und Peer-ASs sowie AS-Details für alle ASNs ab. Falls Sie eine Teilmenge wünschen, stehen folgende Flags zur Verfügung:
`--cymru-annotate-origin-as`, `--cymru-annotate-peer-as` und `--cymru-annotate-as-details`.

```shell
printf "1.1.1.1" | ./zannotate --cymru --cymru-dns-servers=1.1.1.1,1.0.0.1
```

```json
{"ip":"207.243.195.103","cymru":{"origin_asns":[7018],"peer_asns":[6939,1299,2914,3257,6461,6762],"asn_details":{"7018":{"asn":7018,"country_code":"US","registry":"arin","asn_allocation_date":"1996-07-30","asn_description":"ATT-INTERNET4 - AT&T Enterprises, LLC, US"},"6939":{"asn":6939,"country_code":"US","registry":"arin","asn_allocation_date":"1996-06-28","asn_description":"HURRICANE - Hurricane Electric LLC, US"},"1299":{"asn":1299,"country_code":"SE","registry":"ripencc","asn_allocation_date":"1993-09-01","asn_description":"TWELVE99 Arelion, fka Telia Carrier, SE"},"2914":{"asn":2914,"country_code":"US","registry":"arin","asn_allocation_date":"1998-12-07","asn_description":"NTT-DATA-2914 - NTT America, Inc., US"},"3257":{"asn":3257,"country_code":"US","registry":"ripencc","asn_allocation_date":"1994-09-30","asn_description":"GTT-BACKBONE GTT, US"},"6461":{"asn":6461,"country_code":"US","registry":"arin","asn_allocation_date":"1996-04-22","asn_description":"ZAYO-6461 - Zayo Bandwidth, US"},"6762":{"asn":6762,"country_code":"IT","registry":"ripencc","asn_allocation_date":"1996-09-12","asn_description":"SEABONE-NET TELECOM ITALIA SPARKLE S.p.A., IT"}},"prefix_details":{"207.242.0.0/15":{"prefix":"207.242.0.0/15","origin_asns":[7018],"peer_asns":[1299,2914,3257,6461,6762,6939],"country_code":"US","registry":"arin","allocation_date":"1996-11-01"}}}
```

### GreyNoise Psychic

[GreyNoise](https://greynoise.io) ist ein IP-Intelligenz-Feed, der Metadaten wie Bedrohungsklassifikation und zugehörige CVEs bereitstellt.
Ihre „Psychic“-Datendownloads stellen den Datenfeed in einer Datenbank zur Verfügung, die sich für die Offline-Datenanreicherung eignet.
Um ihren Download mit `zannotate` zu verwenden, laden Sie eine `.mmdb`-formatierte Datei mit Ihrem GreyNoise-API-Schlüssel herunter.
Stand April 2026 gewährt die Registrierung mit einem kostenlosen Konto Zugriff auf Datendownloads.

1. Registrieren Sie sich für ein kostenloses GreyNoise-Konto [hier](https://www.greynoise.io).
2. Kopieren Sie Ihren API-Schlüssel aus dem entsprechenden [Bereich Ihres Kontos](https://viz.greynoise.io/workspace/api-key).
3. Laden Sie eine `mmdb`-Datei herunter. Der folgende Befehl lädt Daten für ein einzelnes Datum (7. April 2026) herunter. Sie können auch Daten für einen Zeitraum von Tagen und für Modelle mit verschiedenen Detaillierungsgraden herunterladen – weitere Informationen finden Sie in der GreyNoise Psychic [Dokumentation](https://psychic.labs.greynoise.io).

```shell
curl -H "key: GREYNOISE_API_KEY_HERE" \
     https://psychic.labs.greynoise.io/v1/psychic/download/2026-04-07/3/mmdb \
     -o /tmp/m3.mmdb
```

4. Testen Sie die GreyNoise-Datenanreicherung:

> [!NOTE]
> Die folgenden Beispiele verwenden den genauen Datendownload aus dem obigen `curl`-Befehl. Die angezeigten Ergebnisse hängen von den heruntergeladenen Daten ab.

```shell
echo "14.1.105.157" | zannotate --greynoise --greynoise-database=/tmp/m3.mmdb
```

```json
{"greynoise":{"classification":"malicious","cves":["CVE-2015-2051","CVE-2016-20016","CVE-2018-10561","CVE-2018-10562","CVE-2016-6277","CVE-2024-12847"],"date":"2026-04-07","handshake_complete":true,"last_seen":"2026-04-07T00:00:00Z","seen":true,"tags":["Mirai TCP Scanner","Mirai","Telnet Protocol","Generic IoT Default Password Attempt","Web Crawler","Generic Suspicious Linux Command in Request","HNAP Crawler","Telnet Login Attempt","D-Link Devices HNAP SOAPAction Header RCE Attempt","MVPower CCTV DVR RCE CVE-2016-20016 Attempt","JAWS Webserver RCE","GPON CVE-2018-10561 Router Worm","Generic ${IFS} Use in RCE Attempt","CCTV-DVR RCE","NETGEAR Command Injection CVE-2016-6277","NETGEAR DGN setup.cgi CVE-2024-12847 Command Execution Attempt","CGI Script Scanner"],"actor":"unknown"},"ip":"14.1.105.157"}
```

Beachten Sie, dass viele IPs nicht im GreyNoise-Datensatz enthalten sind, sodass die Ausgabe wie folgt aussehen kann:

```shell
echo "1.1.1.1" | zannotate --greynoise --greynoise-database=/tmp/m3.mmdb
```

```json
{"ip":"1.1.1.1","greynoise":{}}
```

### IPInfo.io

IPInfo.io bietet einen kostenlosen Datensatz, der ASN- und Geolokalisierungsdaten auf Länderebene enthält. Kostenpflichtige Stufen bieten detailliertere Geolokalisierungsdaten.

1. Registrieren Sie sich für ein kostenloses Konto bei [IPInfo.io](https://ipinfo.io/signup).
2. Navigieren Sie zur [Datendownload-Seite](https://ipinfo.io/dashboard/downloads).
3. Laden Sie die `mmdb`-Datei herunter.
   ![IPInfo-Download-Seite](https://assets.kitploit.com/production/public/readmes/8035/57d94653822321e11ecbef1bfe7cd83ae969f39a9eaa57bb59147a22508dbb87.png)
4. Beispiel für die CLI-Nutzung:

```shell
echo "1.1.1.1" | zannotate --ipinfo --ipinfo-database=./path-to-ipinfo-db.mmdb
```

```json
{"ip":"1.1.1.1","ipinfo":{"country":"Australia","country_code":"AU","continent":"Oceania","continent_code":"OC","asn":"AS13335","as_name":"Cloudflare, Inc.","as_domain":"cloudflare.com"}}
```

### MaxMind GeoIP ASN und City (früher GeoIP2)

MaxMind stellt Datensätze für IP-Geolokalisierung und ASN-Daten sowohl in einer kostenlosen (GeoLite) als auch einer kostenpflichtigen (GeoIP) Version bereit.
Darüber hinaus sind sowohl die GeoLite- als auch die GeoIP-Datensätze in zwei Zugriffsmustern verfügbar – einer herunterladbaren Datenbankdatei, die lokal abgefragt werden kann, und einer Web-API.
Das GeoIP-Modul in ZAnnotate unterstützt die lokale Datenbank sowohl in der GeoLite- als auch in der GeoIP-Version.

Im Folgenden wird davon ausgegangen, dass Sie die kostenlosen GeoLite-Datensätze verwenden möchten, der Vorgang ist jedoch für die kostenpflichtigen GeoIP-Daten ähnlich.

1. [Anmeldeformular](https://www.maxmind.com/en/geolite2/signup) für den MaxMind GeoLite-Zugriff.
2. Melden Sie sich bei Ihrem Konto an.
3. Gehen Sie zum Bereich „GeoIP / GeoLite“ > „Dateien herunterladen“ und laden Sie die ZIP-Dateien für den GeoLite-ASN- oder GeoLite-City-Datensatz herunter.

![GeoLite-Download-Seite](https://assets.kitploit.com/production/public/readmes/8035/007b6409d0b9ee6ed6e34e266f438f0ed7ad44da21e810767c5894ce93c91787.png)

4. Entpacken Sie die Dateien, platzieren Sie die `.mmdb`-Dateien an einem beliebigen Ort und testen Sie mit den folgenden Befehlen.

#### MaxMind GeoIP City
```shell
echo "171.67.71.209" | zannotate --geoip2 --geoip2-database=./path-to-geolite2.mmdb
```

```json
{
   "ip":"171.67.71.209",
   "geoip2":{
      "city":{"name":"Vallejo","id":5405380},
      "country":{"name":"United States","code":"US","id":6252001},
      "continent":{"name":"North America","code":"NA","id":6255149},
      "postal":{"code":"94590"},
      "latlong":{"accuracy_radius":50,"latitude":38.1043,"longitude":-122.2442,"metro_code":807,"time_zone":"America/Los_Angeles"},
      "represented_country":{},
      "registered_country":{"name":"United States","code":"US","id":6252001},
      "metadata":{}}
}
```

#### MaxMind GeoLite ASN
```shell
echo "171.67.71.209" | zannotate --geoasn --geoasn-database=/path-to-asn-file.mmdb
```

```json
{"ip":"171.67.71.209","geoasn":{"asn":32,"org":"STANFORD"}}
```

### RDAP (WHOIS-Nachfolger)

RDAP (Registration Data Access Protocol) ist ein Protokoll für den Zugriff auf Registrierungsdaten von Internetressourcen wie IP-Adressen und Domänennamen und der Nachfolger von WHOIS. ZAnnotate kann RDAP-Server abfragen, um Registrierungsdaten für IPs abzurufen.

```shell
echo "1.1.1.1" | zannotate --rdap
```

Ergebnisse aus Gründen der Kürze gekürzt:

```json
{
   "ip":"1.1.1.1",
   "whois": {
     "DecodeData": {},
     "Lang": "",
     "Conformance": [
       "history_version_0",
       "nro_rdap_profile_0",
       "cidr0",
       "rdap_level_0"
     ],
     "ObjectClassName": "ip network"
   }
}
```

Dies sollte die gleiche Ausgabe liefern wie eine direkte Abfrage eines RDAP-Servers, zum Beispiel:

```shell
rdap 1.1.1.1
```
```text
IP Network:
  Handle: 1.1.1.0 - 1.1.1.255
  Start Address: 1.1.1.0
  End Address: 1.1.1.255
  IP Version: v4
  Name: APNIC-LABS
  Type: ASSIGNED PORTABLE
...<weitere Ausgabe aus Gründen der Kürze gekürzt>
```

### Reverse DNS (RDNS)

ZAnnotate kann Reverse-DNS-Abfragen für jede IP-Adresse durchführen. Es ist kein Download von Daten erforderlich, `--rdns` fragt direkt Live-DNS-Server ab.

```shell
printf "1.1.1.1\n8.8.8.8" | zannotate --rdns
```

```jsonl
{"ip":"1.1.1.1","rdns":{"domain_names":["one.one.one.one"]}}
{"ip":"8.8.8.8","rdns":{"domain_names":["dns.google"]}}
```

Wenn eine IP keinen PTR-Eintrag hat, bleibt das `rdns`-Feld leer:

```shell
echo "127.0.0.1" | zannotate --rdns
```

```json
{"ip":"127.0.0.1","rdns":{}}
```

### BGP-Routing-Tabellen

1. Gehen Sie zu [https://archive.routeviews.org/route-views2/bgpdata/](https://archive.routeviews.org/route-views2/bgpdata/).
2. Wählen Sie ein Monatsverzeichnis (z.B. `2025.09`).
3. Wählen Sie das Verzeichnis `RIBS/`.
4. Laden Sie eine gepackte MRT-Datei herunter (z.B. `rib.20250923.1200.bz2`).
5. Entpacken Sie die Datei mit:

```shell
bzip2 -d ./path-to-downloaded-file/rib.20250923.1200.bz2
```

6. Testen Sie mit:

```shell
echo "1.1.1.1" | zannotate --routing --routing-mrt-file=/tmp/rib.20250923.1200
```

```json
{"ip":"1.1.1.1","routing":{"prefix":"1.1.1.0/24","asn":13335,"path":[3561,209,3356,13335]}}
```

### Spur IP-Anreicherung + Intelligenz

[spur.us](https://spur.us/) bietet IP-spezifische Intelligenz wie ASN und Organisation, Infrastrukturklassifizierung (z.B. Rechenzentrum, CDN, Mobil) und Geolokalisierungsmetadaten.
Wir können [spur.us](https://spur.us/) zusammen mit anderen Quellen abfragen, um Annotationen anzureichern und Rechenzentrums-/Anycast-Bereitstellungen, CDNs und ISP-Eigentum zu identifizieren.

1. Holen Sie sich einen API-Schlüssel von Spur. Abhängig von der aktuellen Preisgestaltung müssen Sie möglicherweise ein kostenpflichtiges Konto erstellen – prüfen Sie [spur.us/pricing](https://spur.us/pricing) für Details.
2. Setzen Sie Ihren API-Schlüssel als Umgebungsvariable:

```shell
export SPUR_API_KEY=your_api_key_here
```

(Um dies dauerhaft zu machen, fügen Sie die obige Zeile zu Ihrem Shell-Profil hinzu, z.B. `~/.bashrc` oder `~/.zshrc`.)

3. Testen Sie mit:

```shell
echo "1.1.1.1" | zannotate --spur
```

```json
{"ip":"1.1.1.1","spur":{"as":{"number":13335,"organization":"Cloudflare, Inc."},"infrastructure":"DATACENTER","ip":"1.1.1.1","location":{"city":"Anycast","country":"ZZ","state":"Anycast"},"organization":"Taguchi Digital Marketing System"}}
```
Tool herunterladen