Динамический DNS для разработчиков

Для разработки приложения с поддержкой технологии динамического DNS необходимо в личном кабинете в разделе DNS-хостинг Динамический DNS получить логин и пароль.

Запрос на получение IP-адреса имеет вид:

GET https://api.nic.ru/dyndns/checkip

В ответе возвращается HTTP-код 200, тело ответа имеет вид

<html><head><title>Current IP Check</title></head><body>Current IP Address: 127.0.0.1</body></html>

Запрос на обновление IP-адреса имеет вид:

GET https://api.nic.ru/dyndns/update?hostname=myhost1.test.ru,myhost2.test.ru&myip=192.168.1.1 Authorization: Basic <base64-encoded-string>

Альтернативный вариант:

GET https://username:password@api.nic.ru/dyndns/update?hostname=myhost1.test.ru,myhost2.test.ru&myip=192.168.1.1&ipv6=::1

Параметры, передаваемые в запросе:

hostname — принимает список имен хостов через запятую, которым должны быть установлены IP-адреса;
myip — устанавливаемый IPv4-адрес;
ipv6 — устанавливаемый IPv6-адрес.

Параметры myip и ipv6 могут отсутствовать. Если в запросе отсутствует параметр myip, тогда устанавливается IPv4-адрес, с которого было установлено подключение. Если в запросе отсутствует параметр ipv6, то IPv6-адрес не устанавливается. В случае успеха возвращается HTTP-код 200, тело ответа имеет вид:

good 192.168.1.1
good ::1

Если IP-адрес для домена myhost2.test.ru не был обновлен по причине того, что запись отсутствует, то тело ответа имеет вид:

good 192.168.1.33
nohost

В случае ошибки авторизации возвращается HTTP-код 200, тело ответа имеет вид:

badauth

Также в ответе могут быть переданы символьные коды notfqdn и dnserr.

После обработки запроса на обновление IP-адреса изменяются все одноименные A-записи в доменных зонах на договоре среди всех услуг DNS-master. При этом все несохраненные изменения после обработки запроса будут утеряны.

Всё ещё остались вопросы?