Документация

DDNS

Домашний и офисный широкополосный доступ обычно идёт с динамическим публичным IP, меняющимся без предупреждения. DDNS держит фиксированный домен направленным на текущий IP машины — клиентам и другим серверам нужно помнить только имя, никогда адрес.

Как работает

Архитектура DDNS — менеджер периодически определяет локальный IP, аддон обновляет DNS-запись через API провайдера, клиенты подключаются по домену

Весь конвейер выполняется автоматически в фоне сервера:

  1. DDNS-менеджер обновляется по фиксированному циклу (по умолчанию каждые 5 минут, настраивается переменной окружения TERMINAL_SERVER_DDNS_POLL_INTERVAL_SECS); сохранение конфигурации вызывает немедленное обновление, и ничего не выполняется, пока служба отключена;
  2. Определение локального IP сначала читает выбранный сетевой интерфейс, откатываясь к определению по маршрутам, и фильтрует результат по настройке IP Family (IPv4 / IPv6 / двойной);
  3. DDNS-аддон — изолированный JS-скрипт — получает расшифрованную конфигурацию и текущий IP и вызывает API DNS-провайдера по HTTP. Встроенный аддон Cloudflare, например, ищет зону по домену и переписывает записи A / AAAA на текущий IP, удаляя устаревшие записи при исчезновении семейства адресов;
  4. Клиенты разрешают домен к последнему IP и подключаются по имени.

Конфигурация

Откройте раздел DDNS веб-интерфейса:

  1. Включите Enable. Можно также оставить службу выключенной, пока заполняете всё — отключённая служба сохраняет конфигурацию, но никогда не выполняется;
  2. выберите провайдера под Provider; Cloudflare DDNS встроен;
  3. заполните поля провайдера (пример Cloudflare):
    • Email — почта учётной записи Cloudflare;
    • API Token — токен с правом Zone → DNS → Edit;
    • Domain — корневой домен зоны, напр. example.com;
    • Subdomain — имя записи в зоне, напр. sub для sub.example.com; оставьте пустым для корня зоны;
  4. в Network Interface & IP выберите Interface и IP Family. Dual Stack требует, чтобы у интерфейса были и IPv4-, и IPv6-адрес;
  5. нажмите Save, затем Sync Now для проверки. Sync Status показывает последний отправленный IP и время синхронизации, а при сбое — сообщение об ошибке аддона.

Безопасность

Учётные данные провайдера (API-токены) шифруются перед хранением (enc-v2:) и расшифровываются только в памяти во время работы аддона; аддоны выполняются в изолированной JS-среде, чья единственная способность — исходящий HTTP.

Расширение провайдеров

Провайдеры — аддоны: JSON-манифест (объявляющий поля конфигурации, которые веб-интерфейс превращает в форму) плюс JS-скрипт, открывающий run(). Встроенный cloudflare-ddns — эталонная реализация; пользовательские провайдеры можно загрузить zip-архивом в разделе Addons.

Совместно с другими функциями

  • когда домен разрешается, QR-код раздела Server может переключить Connection Type на DDNS Domain, чтобы клиенты сканировали доменное подключение;
  • другие серверы могут указать wss://your-domain:port в свой Relay Address, чтобы гнать цепочку релея по домену (см. главу Relay).