DDNS

DynDNS2 compatible: any router firmware or client that speaks the protocol (ddclient, inadyn, …) works as-is. First create a DDNS-scoped token in the panel — it binds to a single hostname and can only change that one record.

Minimal example (curl)
curl -u "token:nhtdns_xxxxxxxx" \
  "https://anyns.io/nic/update?hostname=home.example.com&myip=203.0.113.7"

# 返回:good 203.0.113.7(已更新)或 nochg 203.0.113.7(无变化)
EndpointGET /nic/update(POST 亦可,兼容宽松客户端)
AuthHTTP Basic with the token in the password slot, any username; Authorization: Bearer also accepted
hostnameOptional; defaults to the hostname the token is bound to
myipOptional; defaults to the connection's source IP. Comma-separated v4,v6 dual-stack values accepted
First updateCreates the record if it doesn't exist, TTL 120s (short suits dynamic addresses)

Router / ddclient config: pick custom DynDNS2, server anyns.io, path /nic/update, any username, token as the password.