Documentation
Configurer un client
Chaque sous-domaine a ses propres jetons, créés depuis sa fiche dans votre espace. Remplacez dans les exemples le sous-domaine, l’identifiant et le secret par ceux du jeton ; la fiche affiche les mêmes blocs déjà remplis.
Adresses de l’API
| Adresse | Usage |
|---|---|
api.nomadns.net | mises à jour DynDNS2 et API ACME, en IPv4 et en IPv6 |
api4.nomadns.net | mêmes routes, joignables en IPv4 seulement |
api6.nomadns.net | mêmes routes, joignables en IPv6 seulement |
/ip | sur ces trois adresses : renvoie l’adresse IP de la connexion, en texte brut, sans authentification |
Mise à jour DynDNS2
Une requête par sous-domaine, authentifiée en HTTP Basic avec l’identifiant et le secret du jeton :
GET https://api.nomadns.net/nic/update?hostname=sous-domaine.nomadns.net&myip=203.0.113.7,2001:db8::7 Authorization: Basic base64(identifiant:secret)
myip accepte une IPv4, une IPv6 ou les deux séparées par une virgule. Sans myip, l’adresse de la connexion est retenue pour sa famille, et l’autre famille ne change pas. Seules les adresses publiques sont acceptées.
| Réponse | Signification |
|---|---|
good | adresse changée et publiée par le serveur primaire |
nochg | adresse identique, rien n’est modifié |
badauth | identifiant ou secret refusé (HTTP 401) |
notfqdn | hostname absent ou hors de nomadns.net |
nohost | sous-domaine inconnu ou différent de celui du jeton |
numhost | plusieurs noms dans hostname |
abuse | sous-domaine ou compte suspendu, ou limite dépassée |
badagent | méthode autre que GET ou POST |
911 | erreur du service ou publication plus lente que prévu (HTTP 503) ; un changement d’adresse reste enregistré et la relance reçoit nochg |
Limites : 120 requêtes par heure et par sous-domaine, 60 changements d’adresse par jour et par sous-domaine (modifications web comprises ; elles restent toujours possibles), 10 échecs d’authentification par 10 minutes et par adresse IP.
Réglages par client
ddclient et acme.sh ont été vérifiés contre l’API ; les réglages d’OpenWrt et de la Fritz!Box suivent leur documentation.
ddclient
protocol=dyndns2 server=api.nomadns.net ssl=yes usev4=webv4, webv4=https://api4.nomadns.net/ip usev6=webv6, webv6=https://api6.nomadns.net/ip login=identifiant password='secret' sous-domaine.nomadns.net
OpenWrt (ddns-scripts)
config service 'nomadns_v4'
option enabled '1'
option lookup_host 'sous-domaine.nomadns.net'
option domain 'sous-domaine.nomadns.net'
option username 'identifiant'
option password 'secret'
option update_url 'https://[USERNAME]:[PASSWORD]@api.nomadns.net/nic/update?hostname=[DOMAIN]&myip=[IP]'
option use_https '1'
option cacert '/etc/ssl/certs'
option ip_source 'network'
option ip_network 'wan'Fritz!Box
IPv4 seulement : l’adresse IPv6 que fournit la Fritz!Box est la sienne, pas celle de la machine servie.
URL : https://api.nomadns.net/nic/update?hostname=<domain>&myip=<ipaddr> Domaine / Domain : sous-domaine.nomadns.net Utilisateur / User : identifiant Mot de passe / Password : secret
acme.sh (DNS-01)
ACMEDNS_BASE_URL est indispensable : sans elle, acme.sh envoie l’identifiant et le secret au service public auth.acme-dns.io.
export ACMEDNS_BASE_URL=https://api.nomadns.net export ACMEDNS_USERNAME=identifiant-acme export ACMEDNS_PASSWORD='secret' export ACMEDNS_SUBDOMAIN=sous-domaine acme.sh --issue --dns dns_acmedns -d sous-domaine.nomadns.net
Vérifier le résultat
La fiche du sous-domaine indique l’état « Servi » quand les trois serveurs de noms publient l’adresse. Depuis un terminal :
dig +short A sous-domaine.nomadns.net @ns1.nomadns.net dig +short AAAA sous-domaine.nomadns.net @ns1.nomadns.net