Динамический DNS
Оригинальное название: Dynamic DNS
Коротко
Автоматическое обновление DNS-записи при смене IP-адреса устройства. Позволяет обращаться по постоянному имени к серверу или камере за меняющимся адресом.
Что такое «Динамический DNS»
Домашние и многие офисные подключения получают от провайдера динамический адрес: после перезагрузки роутера или по расписанию он меняется. Если в A-записи прописан конкретный IP, доступ к видеорегистратору, NAS или тестовому серверу пропадает до ручной правки. Динамический DNS автоматизирует эту правку: программа на устройстве или в роутере следит за внешним адресом и при изменении сразу обновляет запись.
Есть два основных варианта. Первый — сервисы DDNS, которые выдают имя на своём домене (например, myhome.duckdns.org) и принимают обновления по простому HTTP-запросу с токеном. Встроенные клиенты таких сервисов есть во многих роутерах, а у некоторых производителей — собственная служба, как KeenDNS у Keenetic. Второй — стандартный механизм DNS UPDATE (RFC 2136) для собственной зоны на своём сервере имён.
Пример с nsupdate
Сервер имён на VDS принимает обновления, подписанные ключом TSIG. Скрипт на домашнем сервере по расписанию отправляет новый адрес:
nsupdate -k /etc/ddns/home.key <<EOF
server ns1.example.ru
zone example.ru
update delete home.example.ru A
update add home.example.ru 60 A 198.51.100.7
send
EOF
Короткий TTL в 60 секунд нужен, чтобы резолверы не держали старый адрес долго. Разрешение на обновление в настройках сервера дают только этому ключу и только для одного имени, а не для всей зоны.
Когда динамический DNS не поможет
- Провайдер выдаёт «серый» адрес из частного диапазона и выводит абонентов в интернет через общий NAT. Имя будет указывать на внешний адрес провайдера, к которому подключиться снаружи нельзя. Выход — услуга «белого» IP или туннель до внешнего сервера.
- Нужна работа без перерывов: между сменой адреса и обновлением кешей проходят минуты, когда устройство недоступно.
- Речь о публичном сайте. Ему нужен хостинг или VDS со статическим адресом, а не сервер в квартире.

