Como meu servidor pode detectar alterações de IP para notificar meu provedor de DNS dinâmico?

2

Basta configurar o servidor ubuntu, que possui um ip dinâmico. Eu estou procurando uma maneira de manter meu servidor dns atualizado. Estou usando o entrydns para fazer isso e eles fornecem o seguinte comando para atualizar o servidor.

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

O que eu preciso é uma maneira de verificar se o ip mudou para que eu possa atualizar o servidor dns.

    
por geminiCoder 05.11.2012 / 12:21

3 respostas

6

Seria melhor criar um script que seja acionado sempre que a configuração da rede for alterada e que o script atualize incondicionalmente o DNS. Se você estiver usando o Network Manager, esse script pode ir em /etc/NetworkManager/dispatcher.d - consulte networkmanager (8) para detalhes.

Se você não estiver usando o gerenciador de rede, /etc/dhcp/dhclient-enter-hooks.d poderá ser mais apropriado.

Então você não terá que pesquisar nada.

    
por 05.11.2012 / 19:39
3

Algo assim faria:

#!/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
    
por 05.11.2012 / 13:13
2

Pode haver uma maneira mais simples se você puder viver com um pequeno atraso na atualização do seu IP e se não houver um limite na frequência com que você pode fazer atualizações no seu registro em entrydns.net

Se este comando funcionar para atualizar o arquivo entrydns.net, basta inserir o crontab e configurá-lo para ser executado em um intervalo definido.

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