Update API (DDNS)

Редакция от 16 сентября 2026

Протокол

Alviy обновляет динамические адреса по стандартному протоколу dyndns2 — тому же, что используют DynDNS и No-IP. Подходит любой стандартный клиент: inadyn, ddclient, ddns-scripts (OpenWrt), встроенный DDNS роутеров (ASUS, Keenetic, MikroTik и др.), а также клиенты Alviy.

Адрес сервиса фиксирован: dynupdate.alviy.com, только HTTPS.

Эндпоинты

ЗапросНазначение
GET https://dynupdate.alviy.com/nic/update?hostname=<host>&myip=<ip> обновление адреса, Basic-авторизация
GET https://dynupdate.alviy.com/token/update?hostname=<host>&token=<token>&myip=<ip> обновление адреса, токен в параметре («secure update»)
GET https://dynupdate.alviy.com/checkip текущий внешний IP вызывающего, text/plain, без авторизации

Параметр hostname обязателен. Параметр myip необязателен: если он не передан или не разбирается как IP, сервер использует адрес источника запроса — это поведение по спецификации dyndns2.

Авторизация

Для /nic/update используется HTTP Basic:

  • username — email аккаунта Alviy;
  • passwordтокен хоста (рекомендуется) или пароль аккаунта.

Токен хоста — тот же, что для /token/update. Он включается на странице хоста в личном кабинете (раздел «Secure update») и действует только на один hostname. Кладите в конфиги роутеров именно токен: компрометация конфига не отдаёт доступ к аккаунту, а токен можно отозвать одной кнопкой.

Коды ответов

Ответ — простой текст в теле, HTTP-статус всегда 200 (как у dyndns2). Клиенты разбирают тело дословно.

ОтветЗначение
good <ip>адрес обновлён
nochg <ip>адрес не изменился (повторное обновление — это нормально)
badauthневерный логин, пароль или токен
notfqdnhostname отсутствует или не является корректным доменным именем
nohosthostname не существует или не принадлежит этому аккаунту
911внутренняя ошибка сервера — повторите позже

Примеры

curl
curl -u you@example.com:ВАШ_ТОКЕН \
  "https://dynupdate.alviy.com/nic/update?hostname=myhost.didns.ru&myip=203.0.113.7"
# → good 203.0.113.7
inadyn (custom-провайдер)
period = 300

custom alviy {
    username    = you@example.com
    password    = ВАШ_ТОКЕН
    ddns-server = dynupdate.alviy.com
    ddns-path   = "/nic/update?hostname=%h&myip=%i"
    checkip-server = dynupdate.alviy.com
    checkip-path   = "/checkip"
    hostname    = myhost.didns.ru
}
ddclient
protocol=dyndns2
use=web, web=dynupdate.alviy.com/checkip
server=dynupdate.alviy.com
ssl=yes
login=you@example.com
password='ВАШ_ТОКЕН'
myhost.didns.ru

Роутеры с «пользовательским» (custom) DDNS-провайдером: укажите URL https://dynupdate.alviy.com/nic/update?hostname=<host>&myip=<ip> и Basic-данные, как выше.