Вход

Корзина покупок

Элементы 0
Промежуточный итог $0.00
Просмотреть корзину

Динамический DNS

Домашний интернет обычно приходит с адресом, который меняется. Динамический DNS закрывает этот разрыв: роутер сам сообщает нам новый адрес, а домен продолжает вести к вам домой — к домашнему серверу, камерам, VPN, NAS или удалённому доступу. Протокол стандартный, DynDNS: в OpenWrt его знает пакет ddns-scripts, самописные скрипты не нужны.

Что нужно до начала

  • Домен, зарегистрированный у нас и стоящий на наших серверах имён. После покупки он стоит на них по умолчанию — отдельно настраивать ничего не надо.
  • Роутер, который умеет стандартный DynDNS.
  • Токен: его выдаёт кнопка «Динамический DNS» на карточке домена — одинаково в Telegram-боте и в кабинете на сайте.

Если домен держат на стороннем DNS — например на своём Cloudflare, — динамический DNS не заработает: записями там управляем не мы. Сами серверы имён чужих доменов мы не переключаем, это решение остаётся за вами.

Адрес обновления

Эндпоинт принимает обычный GET-запрос протокола DynDNS.

https://api.regexdomain.com/nic/update?hostname=ИМЯ&myip=[IP]

У того же эндпоинта есть второе имя — /v3/update. Часть клиентов ходит по нему, работает одинаково.

Строка для OpenWrt

Её место — поле update_url сервиса типа «произвольный» (custom).

https://[USERNAME]:[PASSWORD]@api.regexdomain.com/nic/update?hostname=[DOMAIN]&myip=[IP]

[USERNAME] и [DOMAIN] — одно и то же имя, то, которое обновляется. [PASSWORD] — выданный токен. Эти три подстановки замените своими значениями прямо в строке — либо впишите значения в соответствующие поля сервиса, тогда роутер подставит их сам.

[IP] подставляет роутер. Если подстановка уедет незаполненной, сервер ответит dnserr — что делать в этом случае, ниже, в разделе про NAT.

Имя пользователя и пароль — это не вход в кабинет

Поля в конфиге роутера называются «имя пользователя» и «пароль», потому что протокол построен на HTTP Basic. Значения там другие, и это место путает чаще всего.

Имя пользователя — это имя хоста, которое обновляется: home.example.com или сам домен. Не логин от кабинета: у Regex вообще нет логина и пароля от аккаунта, вход в кабинет только подтверждением в Telegram.

Пароль — выданный токен вида regex_ddns_XXXXXXXX. Им нельзя войти в кабинет, купить домен, продлить его или что-то посмотреть. Он умеет ровно одно: менять адрес у одного имени.

Настройка по шагам

Шаги 1–3 делаются у нас, 4–7 — в роутере.

  1. Откройте карточку домена и нажмите «Динамический DNS».
  2. Выберите имя, которое будет обновляться: сам домен или поддомен вроде home.
  3. Получите адрес обновления, имя пользователя и пароль. Имя пользователя — это выбранное на прошлом шаге имя, пароль — токен. Токен показывается один раз, скопируйте его сразу.
  4. В роутере откройте СлужбыДинамический DNS и добавьте сервис, тип — «произвольный» (custom).
  5. Вставьте строку в поле update_url и подставьте своё имя и токен.
  6. Сохраните и примените настройки.
  7. Убедитесь, что получилось: в логе сервиса должен появиться ответ good с вашим текущим адресом. При следующих опросах с тем же адресом придёт nochg — это нормально.

Если раздела «Динамический DNS» в меню роутера нет, значит пакет ddns-scripts не установлен.

Если роутер за NAT

Когда роутер своего внешнего адреса не знает, уберите из строки хвост &myip=[IP]. Без этого параметра мы берём адрес, с которого пришёл запрос.

https://[USERNAME]:[PASSWORD]@api.regexdomain.com/nic/update?hostname=[DOMAIN]

Ответы сервера

ОтветЧто значит и что делать
good <адрес> Адрес записан, больше ничего делать не нужно.
nochg <адрес> Прислан тот же адрес, что уже стоит.
badauth Имя или токен не подошли. Проверьте, что в имени пользователя стоит имя хоста, а не что-то другое; если токен потерян — выпустите новый.
nohost Не тот хост: домен не наш или стоит не на наших серверах имён. Проверьте серверы имён домена.
notfqdn hostname не похож на домен: скорее всего, подстановка не заменена на полное имя.
abuse Слишком часто, лимит 10 запросов в минуту на токен. Увеличьте интервал опроса в настройках сервиса.
dnserr В myip мусор, чаще всего незаполненная подстановка [IP]. Уберите хвост &myip=[IP], как в разделе про NAT.
911 Ошибка на нашей стороне, стоит повторить позже.

Ответ — обычный текст протокола, не JSON. Код ответа HTTP всегда 200, даже у отказов: так требует протокол, смотреть надо на текст.

Скорость, IPv4 и IPv6

TTL динамических записей — 60 секунд, у обычных записей зонный TTL длиннее. Новый адрес расходится примерно за минуту: после смены адреса публичные резолверы 1.1.1.1, 8.8.8.8 и 9.9.9.9 отдавали новый сразу.

Поддерживаются IPv4 (запись A) и IPv6 (запись AAAA). Dual-stack роутер может прислать оба адреса сразу, через запятую в myip.

Границы токена

Токен выдаётся на одно имя. Остальные записи домена им не тронуть: ни почту (MX), ни другие поддомены, ни серверы имён. Всего на домен их можно завести до 10 — под несколько роутеров или несколько сервисов.

Восстановить токен нельзя: в базе хранится только его хэш. Можно выпустить новый, старый тогда перестаёт работать. Отозвать токен можно в любой момент, в одно нажатие.

Не заводится — напишите в поддержку из бота, разберёмся.