DynDNS Updater // DynDNS API // IPv64.net

Die Automatisierungsmöglichkeiten bei IPv64.net sind weitreichend verdrahtet in einem Updater und API-Schnittstelle. Beide Komponenten zusammen ergeben ein rundes Produkt für die eigene Automatisierungsumgebung.

DynDNS Updater

Updater URL:
https://ipv64.net/update.php
https://ipv64.net/update
https://ipv64.net/nic/update (DynDNS v2)

Updater Authentication
key|token|user|username:[GET|POST] - Dein Account Update Token (Option 1)
Bearer Token: Dein Account Update Token (Option 2)
Basic Auth Base64: {xyz}:{apikey} - Dein Account Update Token (Option 3)

Updater Limits
Updater Account Limit: API Limit ist abhängig von der Account Klasse. (Default 48 / 24h)
Updater Call Limit: Maximal 3 Updater-Anfragen innerhalb 10 Sek.


Updater Calls in der Übersicht

[GET] HTTP Request - Anfrage

key|token - Definiert den User Account Update Token (Pflichtfeld)
domain - Gibt an welche Domain/s updated werden soll (Pflichtfeld)

ip|ipv4|ip4 - Die angegebene IPv4-Adresse soll im DNS Updated werden. (Optional)
ip6|ipv6 - Die angegebene IPv6-Adresse soll im DNS Updated werden. (Optional)

praefix - Der angegebene Praefix soll im DNS Record Updated werden. (Optional)

"ipv6prefix"|"ip6lanprefix" - Aktualisiere den IPv6 Prefix.
[Format ex.: 2a01:5a32:12aa:6234::/64] oder "auto"(Optional)

healthcheck - Aktualisiere gleichzeitig einen Healthcheck [Healthcheck Token] (Optional)

[POST] HTTP Request - Anfrage

Basic Auth Base64 - {username}:{password} eins von beiden muss der Token sein. (Option 1)
Bearer Token - Der {Bearer Token} muss dein Account Update Token enthalten. (Option 2)
"key" oder "user" - Definiert den User Account Updatekey (Option 3)
"domain","host","hostname" - Gibt an welche Domain updated werden soll (Pflichtfeld)
(Multidomain Update mit ',' separieren)

"ip" oder "myip" - Die angegebene IPv4-Adresse soll im DNS Updated werden. (Optional)
"ip6" oder "myip6" - Die angegebene IPv6-Adresse soll im DNS Updated werden. (Optional)

praefix - Der angegebene Praefix soll im DNS Record Updated werden. (Optional)

healthcheck - Aktualisiere gleichzeitig einen Healthcheck [Healthcheck Token] (Optional)


Updater Extras

[GET] output => "none" (kein output), "min" (good,nochg,fail), "full" (Default: JSON)
[GET|POST] domain => Multidomain Update "COMMA SEPERATED" (z.B. 123.ipv64.net,serv.tcp64.de)
[GET] howismyip => Get Your IP-Adress


Updater Response - Antwort

HTTP-Header-Codes: 200 OK, 400 Bad Request, 401 Unauthorized, 429 Too Many Requests

JSON-Payload:
Status: success OR http header code
IP (Array): Updated IPs (IPv4 + IPv6)
Status: "good" - IP in DNS is Changed | "nochg" - No Change in DNS-Server


Sicherheit & Datenschutz

Aus Sicherheits- & Datenschutzgründen werden keine E-Mail / Passwort Kombinationen akzeptiert.
Anfragen an die Update-API werden mitgeschnitten.
Bei zu vielen Fehlschlägen in kurzer Zeit, wird die API für den Key 10 Min. gesperrt.

IPv4 / IPv6 erzwingen

Wer automatisch die IP-Adresse gesetzt haben möchte, kann "forcen" das die IP mit IPv4 oder IPv6 gesetzt werden soll. Dabei die API-Update-URL über die Subdomain "ipv4.ipv64.net" oder "ipv6.ipv64.net" Subdomain ansprechen.


Updater Beispiele

Beispiel 1:
https://{anything}:{1234567890abcdefgh}@ipv64.net/nic/update?host=YOURDOMAIN.IPV64.NET
Beispiel 2:
https://{Bearer 1234567890abcdefgh}@ipv64.net/nic/update?host=YOURDOMAIN.IPV64.NET
Beispiel 3:
https://ipv64.net/update.php?key=1234567890abcdefgh&host=YOURDOMAIN.IPV64.NET
Beispiel 4:
https://ipv64.net/update.php?key=1234567890abcdefgh&domain=YOURDOMAIN.IPV64.NET&ip=10.20.30.40&ip6=2a01::a441:cf::1
CURL Beispiel:
curl -sSL -H "Authorization: Basic $(echo -n none:1234567890abcdefgh | base64)" https://ipv64.net/update.php?domain=YOURDOMAIN.IPV64.NET

DynDNS API

API URL
https://ipv64.net/api.php
https://ipv64.net/api

API Authentication
Bearer Token: Dein Account API Key (Option 1)
Basic Auth Base64: {xyz}:{apikey} - Dein Account API Key (Option 2)
apikey|token:[GET|POST] - Dein Account API Key (Option 3)

API Limits
API Account Limit: API Limit ist abhängig von der Account Klasse. (Default 64 / 24h)
API Call Limit: Maximal 5 API-Anfragen innerhalb 10 Sek.


API Calls in der Übersicht

[GET] Account Informations
[GET] get_account_info
Erhalte alle Informationen über den User Account.

[GET] Account Logging
[GET] get_logs
Erhalte die letzten 100 Log-Einträge.

[GET] Domain Informations
[GET] get_domains
Erhalte alle Informationen bezüglich der Domains und Records zurück.

[POST] Domain erstellen (form-data)
[POST] add_domain => Domainnamen [String Format: domainname.ipv64.net]
Erstellt eine neue Domain und erstellt automatisch A o. AAAA Record.

[DELETE] Domain löschen (x-www-form-urlencoded)
[DELETE] del_domain => Domainnamen [String Format: domainname.ipv64.net]
Domain wird mit allen bekannten DNS-Records unverzüglich gelöscht.

[POST] DNS Record hinzufügen (form-data)
[POST] add_record => Domainnamen [String Format: domainname.ipv64.net]
[POST] praefix => Domainpraefix [String Format]
[POST] type => A,AAAA,TXT,CNAME,MX,NS,SRV [String Format]
[POST] content => Inhalt für den DNS Record. [String Format]
Ein neuer DNS-Record wird in der angegebenen Domain angelegt.

[DELETE] DNS Record löschen (form-data)
[DELETE] del_record => Domainnamen [String Format: domainname.ipv64.net]
[DELETE] praefix => Domainpraefix [String Format]
[DELETE] type => A,AAAA,TXT,CNAME,MX,NS,SRV [String Format]
[DELETE] content => Inhalt für den DNS Record. [String Format]
ODER
[DELETE] del_record => DNS Record ID [Integer Format]
Der DNS-Record wird unverzüglich aus der Domain gelöscht.


API-Response (Response)

HTTP-Header-Codes: 200 OK, 201 Created, 400 Bad Request, 401 Unauthorized, 403 Forbidden, 429 Too Many Requests

JSON-Payload:
Response: Antwort auf deinen API-Call
Status: success OR http header code
API-Call: Welcher Call wurde aufgerufen.


API Beispiele

[GET] API Get Account Info:
curl -X GET https://ipv64.net/api.php?get_account_info -H "Authorization: Bearer 123456787654321234567876543"

[POST] API Create Domain:
curl -X POST https://ipv64.net/api.php -H "Authorization: Bearer 123456787654321234567876543" -d "add_domain=test1234.any64.de"

[DELETE] API Create Domain:
curl -X DELETE https://ipv64.net/api.php -H "Authorization: Bearer 123456787654321234567876543" -d "del_domain=test1234.any64.de"