¿Cómo puede mi server detectar cambios de IP para notificar a mi proveedor de DNS dynamic?

Simplemente configure el server ubuntu, que tiene una dirección IP dinámica. Estoy buscando una forma de mantener mi server DNS actualizado. Estoy usando entrydns para hacer esto y proporcionan el siguiente command para actualizar el server.

curl -k -X PUT -d "" https://entrydns.net/records/modify/TOKEN 

Lo que necesito es una forma de comprobar si la ip ha cambiado para poder actualizar el server dns.

Sería mejor hacer un script que se active cada vez que cambie la configuration de la networking, y hacer que el script actualice incondicionalmente el DNS. Si está utilizando Network Manager, dicho script puede ir en /etc/NetworkManager/dispatcher.d – ver networkmanager (8) para más detalles.

Si no está usando el administrador de networking, /etc/dhcp/dhclient-enter-hooks.d podría ser más apropiado.

Entonces no tendrás que sondear nada.

Algo como esto haría:

 #!/bin/bash # "${0%.sh}.myip" transforms /path/to/script.sh to /path/to/script.myip if [[ ! -s "${0%.sh}.myip" ]]; then echo "0.0.0.0" > "${0%.sh}.myip" newip=$(curl -k -X PUT -d "" https://entrydns.net/records/modify/TOKEN) read oldip < "${0%.sh}.myip" echo $newip > "${0%.sh}.myip" if [[ $newip != $oldip]]; echo "IP changed"; fi 

Puede haber una manera más simple si puede vivir con un pequeño retraso en la actualización de su IP y si no hay un límite en la frecuencia con la que puede actualizar su logging en entrydns.net

Si este command funciona para actualizar entrydns.net, simplemente ingrese en crontab y configúrelo para que se ejecute en un intervalo establecido.

 curl -k -X PUT -d "" https://entrydns.net/records/modify/TOKEN