DynDNS2 Update-Endpunkt
minIP verwendet das verbreitete DynDNS2-Prinzip. Dadurch funktionieren viele Router, Firewalls, NAS-Systeme und Standardclients ohne zusätzliche minIP-Software. Der empfohlene HTTPS-Endpunkt lautet:
https://update.minip.ch/nic/update
Für klassische Clients besteht ein Zugang aus einer Client-ID im Format mip_… und genau einem Update-Key im Format mipk_…. Der Update-Key dient als Passwort. Moderne Integrationen können denselben Key als Bearer-Token verwenden.
Basic Auth – empfohlen für Router
curl -u "mip_CLIENTID:mipk_UPDATEKEY" \
"https://update.minip.ch/nic/update?hostname=home.minip.ch&myip=DEINE_PUBLIC_IPV4"
hostname enthält den vollständigen minIP-Hostnamen. myip steht für IPv4, myipv6 für IPv6. Ein Router kann beide Familien gemeinsam melden; minIP bewertet sie getrennt. Eine nicht publizierbare CGNAT-/private IPv4 verhindert deshalb kein gültiges AAAA-Update.
Bearer Auth für eigene Integrationen
curl -H "Authorization: Bearer mipk_UPDATEKEY" \
"https://update.minip.ch/nic/update?hostname=home.minip.ch&myipv6=DEINE_PUBLIC_IPV6"
Ersetze die Platzhalter durch deine tatsächlich global routbare Adresse oder lasse einen kompatiblen Client die Adresse automatisch ermitteln. Private, CGNAT- und reservierte Adressen werden nicht publiziert.
Antwortcodes
| Antwort | Bedeutung |
|---|---|
good <IP> | DNS-Adresse wurde erfolgreich geändert. |
nochg <IP> | Die Adresse war bereits aktuell. |
badauth | Client-ID oder Update-Key ist ungültig. |
nohost | Der Host gehört nicht zu diesem Update-Zugang oder die angeforderte Adressfamilie ist nicht aktiviert. |
dnserr | Das Update konnte nicht sicher publiziert werden, z. B. wegen einer nicht zulässigen Adresse oder eines DNS-Backendfehlers. |
911 | Temporärer Dienst-/Rate-Limit-Zustand; Client sollte später erneut versuchen. |
IPv4, IPv6, CGNAT und DS-Lite
minIP veröffentlicht ausschliesslich global routbare Adressen. Private IPv4, Loopback, Link-Local, CGNAT und reservierte Sonderbereiche werden nicht in öffentliche A-/AAAA-Records geschrieben. Für DS-Lite- und Starlink-Anschlüsse ist deshalb wichtig, dass der Router auch IPv6 über myipv6 aktualisiert, wenn seine IPv4 nur aus einem CGNAT-Bereich stammt.
Wird keine explizite Adresse angegeben, kann minIP je nach Request-Pfad die beobachtete öffentliche Quelladresse verwenden. Hinter lokalen Test-Proxys oder Docker ist diese Adresse jedoch oft intern; im Testbetrieb sollte deshalb myip beziehungsweise myipv6 explizit gesetzt werden.
Legacy Query-Parameter
Für ältere Geräte existiert eine Legacy-Kompatibilität mit Benutzer und Key in der URL. Diese Variante sollte ausschliesslich über HTTPS und nur dann verwendet werden, wenn der Client kein HTTP Basic Auth unterstützt. URL-Parameter können in Router-, Proxy- oder Diagnoselogs auftauchen.
https://update.minip.ch/nic/update?hostname=home.minip.ch&username=mip_CLIENTID&password=mipk_UPDATEKEY
Integration testen
Lege zuerst einen Host im Manager an, ordne ihm einen Update-Zugang zu und teste dann mit Basic Auth. Ein erfolgreicher Request sollte good oder nochg liefern. Anschliessend zeigt der Manager sowohl den zuletzt publizierten Wert als auch den tatsächlich aufgelösten DNS-Istwert.
Mehrere Hostnamen und Update-Zugänge
Ein Update-Zugang kann mehreren eigenen minIP-Hosts zugeordnet werden. Der Hostname im Request wird trotzdem immer gegen den authentifizierten Zugang geprüft. Ein gültiger Key kann deshalb nicht beliebige fremde *.minip.ch-Namen aktualisieren. Für unterschiedliche Geräte oder Vertrauenszonen empfiehlt es sich, getrennte Update-Zugänge zu verwenden, damit ein offengelegter Key nur den zugeordneten Bereich betrifft.
Fehleranalyse bei nohost und badauth
badauth bedeutet, dass die Authentifizierung nicht akzeptiert wurde. Prüfe Client-ID und Update-Key. nohost bedeutet dagegen typischerweise, dass der Host nicht dem verwendeten Zugang zugeordnet ist oder die angeforderte Adressfamilie für diesen Host nicht aktiviert ist. Bei Windows CMD muss eine URL mit &-Parametern immer in Anführungszeichen stehen, da & sonst als Befehlsseparator interpretiert wird.
Rate Limits und sinnvolle Intervalle
DynDNS sollte auf Änderungen reagieren, nicht sekündlich pollen. Router-Intervalle von einigen Minuten sind für typische Heimanschlüsse ausreichend. minIP begrenzt Update-Anfragen zum Schutz des öffentlichen Dienstes. Bei einer temporären 911-Antwort sollte ein Client mit Abstand erneut versuchen und keine enge Retry-Schleife starten.
DNS-Istwert nach dem Update prüfen
Ein erfolgreicher HTTP-Request ist nur die erste Hälfte des Vorgangs. Im Manager zeigt minIP zusätzlich den aktuell aufgelösten DNS-Istwert. Dadurch lässt sich erkennen, ob der veröffentlichte A- oder AAAA-Record tatsächlich dem letzten erfolgreichen Update entspricht. Ein sichtbarer MISMATCH ist besonders hilfreich, wenn Records außerhalb von minIP verändert wurden oder ein DNS-Backend nicht den erwarteten Zustand liefert.