IP-Adressversion erkennen
Dieser Detektor für IP-Adressversionen prüft, ob eine Zeichenfolge eine vollständige IPv4-Adresse, eine vollständige IPv6-Adresse oder keines von beidem ist.
Im Browser ausführen – kostenlos
Bei gültiger Eingabe liefert er die erkannte Version und eine stabile kanonische Darstellung, die sich leichter vergleichen, speichern und prüfen lässt. Ungültiger Adresstext führt zu einer konkreten Begründung, etwa einem IPv4-Oktett außerhalb des Wertebereichs, einer unzulässigen führenden Null, zu vielen IPv6-Gruppen oder einer fehlerhaften Doppelpunktkomprimierung. Der Parser arbeitet deterministisch, greift nicht auf das Netzwerk zu und wendet strenge Regeln an, statt die Bedeutung einer unvollständigen oder mit Zusätzen versehenen Eingabe zu erraten.
Erkennen Sie die IPv4- und IPv6-Syntax zuverlässig
IPv4 und IPv6 stellen Adressen in sehr unterschiedlichen Textformen dar. Daher reicht es nicht, lediglich nach einem Punkt oder Doppelpunkt zu suchen. Dieser Detektor analysiert die vollständige Zeichenfolge anhand der Strukturregeln beider Versionen. IPv4 muss genau vier durch Punkte getrennte Dezimaloktette enthalten. Jedes Oktett muss zwischen 0 und 255 liegen, darf nur Ziffern enthalten und nicht mit einer Null beginnen. IPv6 verwendet acht durch Doppelpunkte getrennte Hexadezimalgruppen und kann eine Folge von Nullgruppen mit einem doppelten Doppelpunkt abkürzen. Eine IPv6-Adresse darf außerdem mit einer eingebetteten dezimalen IPv4-Adresse enden, sofern die Gesamtzahl der Gruppen korrekt bleibt. Das Ergebnis nennt IPv4 oder IPv6 erst, wenn der vollständige Wert die Prüfung bestanden hat. Ein Wert, der nur wie eine Adresse aussieht, wird als keine der beiden Versionen eingestuft und erhält eine Begründung mit der verletzten Regel. Dadurch eignet sich das Ergebnis für Formularvalidierung, Konfigurationskontrollen, die Bereinigung importierter Daten und automatisierte Tests, bei denen eine großzügige Vermutung fehlerhafte Daten unbemerkt akzeptieren könnte.
Nutzen Sie die kanonische Ausgabe zum Vergleichen und Speichern
Eine gültige IP-Adresse kann insbesondere bei IPv6 mehrere Schreibweisen haben. Groß- und Kleinbuchstaben bei Hexadezimalziffern stehen für dieselben Werte, führende Nullen innerhalb einer Gruppe verändern die Adresse nicht, und eine Folge von Nullgruppen lässt sich komprimieren. Die kanonische IPv6-Ausgabe verwendet Kleinbuchstaben, entfernt unnötige führende Nullen und komprimiert die längste Folge aus mindestens zwei Nullgruppen. Bei gleich langen Folgen wird die erste komprimiert. Eingebettete dezimale IPv4-Bestandteile werden in die entsprechenden Hexadezimalgruppen umgewandelt, damit die Antwort stets eine einheitliche IPv6-Form besitzt. IPv4 wird als vier gewöhnliche Dezimaloktette ausgegeben. Mit diesen Regeln können Systeme kanonische Zeichenfolgen vergleichen, ohne zwei Schreibweisen derselben Adresse fälschlich als verschiedene Endpunkte zu behandeln. Dies unterstützt außerdem die Aufbereitung von Protokollen, das Entfernen doppelter Konfigurationseinträge, Test-Snapshots und die Darstellung zur manuellen Prüfung. Die Kanonisierung führt weder DNS noch Geolokalisierung, Subnetzanalyse oder Erreichbarkeitstests aus. Sie ändert ausschließlich die Darstellung, nicht den numerischen Adresswert.
Verstehen Sie Ablehnungsgründe und strenge Eingabegrenzen
Bei ungültigem Adresstext stuft die Antwort den Wert als keine der beiden Versionen ein und erläutert die Ablehnung. Typische IPv4-Fehler sind ein fehlendes Oktett, ein Bestandteil über 255, nicht dezimale Zeichen oder eine führende Null, die ältere Software möglicherweise anders auslegt. Häufige IPv6-Fehler sind Gruppen mit mehr als vier Hexadezimalziffern, eine falsche Anzahl expandierter Gruppen, mehrere doppelte Doppelpunkte oder eine Komprimierung, die keine Gruppe ersetzt. Eckige Klammern aus der URL-Syntax, CIDR-Präfixlängen, Portnummern und Zonenkennungen gehören bewusst nicht zum Eingabevertrag. Entfernen Sie diese Zusätze und übermitteln Sie nur die Adresse. Diese klare Grenze sorgt für vorhersehbare Validierung in Browsern, Servern und Programmiersprachen, deren Hilfsparser unterschiedliche historische Formen akzeptieren können. Eine fehlende Adresse oder ein anderer Datentyp als Zeichenfolge ist ein Vertragsfehler; eine Zeichenfolge mit fehlerhafter Adresssyntax ist dagegen ein normales Erkennungsergebnis mit Begründung. Der Algorithmus nutzt weder Netzwerk noch externen Zustand, sodass wiederholte Anfragen übereinstimmen. Eine API-Anfrage kostet $0.002; die Browserversion kann lokal ausgeführt werden.
Anwendungsfälle
Konfigurationseingaben prüfen
Weisen Sie fehlerhafte Hostadressen zurück, bevor sie Firewallregeln, Diensteinstellungen oder Bereitstellungsvorlagen erreichen.
Adressbestände vereinheitlichen
Wandeln Sie gleichwertige IPv6-Schreibweisen in eine kanonische Darstellung um, bevor Sie Datensätze vergleichen oder Duplikate entfernen.
Formularfehler verständlich erklären
Zeigen Sie einen hilfreichen Syntaxgrund an, wenn eine Eingabe keine vollständige IPv4- oder IPv6-Adresse ist.
Häufige Fragen
Nimmt der Detektor Kontakt mit der Adresse auf?
Nein. Er prüft und formatiert den Text lokal, ohne DNS, Netzwerksonden, Geolokalisierung oder Reputationsabfragen.
Werden CIDR-Präfixe akzeptiert?
Nein. Übermitteln Sie nur die Adresse. Ein Suffix wie /24 oder /64 ist eine Netzwerkpräfixnotation und gehört nicht zum Eingabevertrag dieses Detektors.
Warum werden IPv4-Oktette mit führenden Nullen abgelehnt?
Führende Nullen haben historisch Mehrdeutigkeit zwischen dezimaler und oktaler Lesart verursacht. Die strenge Dezimalschreibweise vermeidet abweichende Interpretationen.
Wie wird eine IPv6-Adresse kanonisiert?
Hexadezimalbuchstaben werden kleingeschrieben, führende Nullen in Gruppen entfernt und die längste zulässige Nullfolge mit einem doppelten Doppelpunkt komprimiert.
Kann ich eine IPv6-URL in Klammern und mit Port eingeben?
Nein. Entfernen Sie zuerst Klammern und Port, da sie zur URL- oder Endpunktsyntax und nicht zur IP-Adresse gehören.
Was kostet eine API-Anfrage?
Jede API-Anfrage kostet $0.002. Das deterministische Browserwerkzeug kann auf der Seite auch lokal ausgeführt werden.
Für Entwickler — API-Zugang
Alles auf dieser Seite ist auch per API verfügbar. Dieser Abschnitt richtet sich an Teams, die es in ihre eigenen Systeme einbinden möchten; alle anderen nutzen einfach das Tool oben.
Endpunkt
Authentifizierung per Bearer-Token. Ein einziger POST stellt die Aufgabe in die Warteschlange; das Ergebnis erhalten Sie per Webhook oder über einen signierten Link.
Aufruf aus Ihrem Stack
curl -X POST https://api.kit.forhosting.com/dev/ip-version-detect \
-H "Authorization: Bearer $KIT_KEY" \
-H "Content-Type: application/json" \
-d '{"address":"2001:0db8:0000:0000:0000:ff00:0042:8329"}'const res = await fetch("https://api.kit.forhosting.com/dev/ip-version-detect", {
method: "POST",
headers: {
"Authorization": `Bearer ${process.env.KIT_KEY}`,
"Content-Type": "application/json"
},
body: JSON.stringify({
"address": "2001:0db8:0000:0000:0000:ff00:0042:8329"
})
});
const { task_id } = await res.json();import os, requests
res = requests.post(
"https://api.kit.forhosting.com/dev/ip-version-detect",
headers={"Authorization": f"Bearer {os.environ['KIT_KEY']}"},
json={
"address": "2001:0db8:0000:0000:0000:ff00:0042:8329"
},
)
task_id = res.json()["task_id"]<?php
$res = file_get_contents("https://api.kit.forhosting.com/dev/ip-version-detect", false, stream_context_create([
"http" => [
"method" => "POST",
"header" => "Authorization: Bearer " . getenv("KIT_KEY") . "\r\nContent-Type: application/json",
"content" => '{"address":"2001:0db8:0000:0000:0000:ff00:0042:8329"}',
],
]));
$task = json_decode($res, true);body := bytes.NewBufferString(`{"address":"2001:0db8:0000:0000:0000:ff00:0042:8329"}`)
req, _ := http.NewRequest("POST", "https://api.kit.forhosting.com/dev/ip-version-detect", body)
req.Header.Set("Authorization", "Bearer "+os.Getenv("KIT_KEY"))
req.Header.Set("Content-Type", "application/json")
res, _ := http.DefaultClient.Do(req)Beispiel-Anfrage
{
"address": "2001:0db8:0000:0000:0000:ff00:0042:8329"
}Beispiel-Antwort
{
"task_id": "tsk_a1b2c3d4e5f6a1b2c3d4e5f6",
"type": "dev.ip_version_detect",
"status": "queued",
"_links": {
"result": "/tasks/tsk_…/result"
}
}Die API arbeitet asynchron: Sie erhalten sofort eine task_id. Polling ist mit 1 Anfrage pro Sekunde erlaubt.
Preis
Der Preis steht auf der Seite – keine Tokens, keine Credits. Fehlgeschlagene Aufgaben werden nicht berechnet.
Fehler
| HTTP | Code | Bedeutung |
|---|---|---|
401 | unauthorized | Der API-Schlüssel fehlt oder ist ungültig – prüfen Sie den Authorization-Header (Bearer). |
402 | insufficient_balance | Ihr Guthaben reicht für diese Aufgabe nicht aus – Aufladungen verfallen nicht. |
404 | unknown_type | Unbekannter Aufgabentyp – prüfen Sie das Feld „type“ gegen den Katalog. |
429 | rate_limited | Zu viele Anfragen – warten Sie kurz; Polling ist mit 1 Anfrage pro Sekunde erlaubt. |