Документация
DDNS
Домашний и офисный широкополосный доступ обычно идёт с динамическим публичным IP, меняющимся без предупреждения. DDNS держит фиксированный домен направленным на текущий IP машины — клиентам и другим серверам нужно помнить только имя, никогда адрес.
Как работает
Весь конвейер выполняется автоматически в фоне сервера:
- DDNS-менеджер обновляется по фиксированному циклу (по умолчанию каждые 5 минут, настраивается переменной окружения
TERMINAL_SERVER_DDNS_POLL_INTERVAL_SECS); сохранение конфигурации вызывает немедленное обновление, и ничего не выполняется, пока служба отключена; - Определение локального IP сначала читает выбранный сетевой интерфейс, откатываясь к определению по маршрутам, и фильтрует результат по настройке
IP Family(IPv4 / IPv6 / двойной); - DDNS-аддон — изолированный JS-скрипт — получает расшифрованную конфигурацию и текущий IP и вызывает API DNS-провайдера по HTTP. Встроенный аддон Cloudflare, например, ищет зону по домену и переписывает записи A / AAAA на текущий IP, удаляя устаревшие записи при исчезновении семейства адресов;
- Клиенты разрешают домен к последнему IP и подключаются по имени.
Конфигурация
Откройте раздел DDNS веб-интерфейса:
- Включите
Enable. Можно также оставить службу выключенной, пока заполняете всё — отключённая служба сохраняет конфигурацию, но никогда не выполняется; - выберите провайдера под
Provider;Cloudflare DDNSвстроен; - заполните поля провайдера (пример Cloudflare):
Email— почта учётной записи Cloudflare;API Token— токен с правом Zone → DNS → Edit;Domain— корневой домен зоны, напр.example.com;Subdomain— имя записи в зоне, напр.subдляsub.example.com; оставьте пустым для корня зоны;
- в
Network Interface & IPвыберитеInterfaceиIP Family.Dual Stackтребует, чтобы у интерфейса были и IPv4-, и IPv6-адрес; - нажмите
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).