Для разработки приложения с поддержкой технологии динамического 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. При этом все несохраненные изменения после обработки запроса будут утеряны.