Я не знаю, существует ли установленный стандартный способ, но если предположить, что сервер BIND настроен на разрешение динамических обновлений, вы можете запустить сценарий оболочки при запуске (или в задании cron), чтобы запустите nsupdate
, чтобы обновить запись.
#!/bin/bash
ECHO server <mydnsserver> > /tmp/dnsupdate
ECHO "zone <mydomain>" >> /tmp/dnsupdate
ECHO "update delete my.fqdn.com A" >> /tmp/dnsupdate
ECHO "update add my.fqdn.com 60 A myipaddress" >> /tmp/dnsupdate
ECHO "send" >> /tmp/dnsupdate
ECHO "zone <ipnetwork-inaddr.arpa.>" >> /tmp/dnsupdate
ECHO "update delete <myip.in-addr.arpa> PTR <my.fqdn.com>" >> /tmp/dnsupdate
ECHO "update add <myip.inaddr.arpa. 60 PTR <my.fqdn.com>" >> /tmp/dnsupdate
ECHO "send" >> /tmp/dnsupdate
nsupdate -v /tmp/dnsupdate
Если вам нужны защищенные обновления, вы можете создать пару ключей и указать ключ nsupdate -k
. Вы также можете сделать сценарий более универсальным и удобным для использования, вставив имя хоста и IP-адрес как часть сценария в переменные.