Se você não tem acesso ou não pode usar um serviço DynDNS, crie um alias em ~/.ssh/config
e edite o endereço IP sempre que ele for alterado. Coloque estas duas linhas (opcionalmente seguidas por outras configurações para o alias do host) em ~/.ssh/config
:
Host nickname
HostName 1.2.3.4
CheckHostIP no
HostKeyAlias nickname
Execute este script sempre que o endereço possa ter mudado.
#!/bin/sh
url='http://example.com/my-server-ip.txt'
ip_address=$(wget -q "$url")
case $ip_address in
'') :;; # empty file or connection error
*[!.:0-9A-Fa-f]*) # bad character
echo 1>&2 "The content at $url doesn't look like an IP address!"; exit 1;;
*) # this looks like an IP address
ed -s ~/.ssh/config <<EOF
/^ *Host *nickname
/^ *HostName
s/e .*/e $ip_address/
w
q
EOF
esac