Com base em sua história, meu palpite é que sua operadora tem um proxy para otimização da velocidade de dados móveis (algo que reduz o tamanho das imagens, por exemplo). Isso significa que seu tráfego HTTP passará por um proxy no lado do operador, o que poderia ser NAT.
Uma maneira de evitar isso é enviar um IP explícito para o noip (de sua documentação ):
curl http://username:[email protected]/nic/update?hostname=mytest.example.com&myip=1.2.3.4
Isso pode ser facilmente integrado em um script de shell:
#!/bin/bash
IP=$(/sbin/ip -4 a l wwan0 | grep 'inet ' | grep -oP '(?<=inet\s)\d+(\.\d+){3}')
curl "http://username:[email protected]/nic/update?hostname=mytest.example.com&myip=${IP}"
Torne este script executável e execute-o a partir de cron
a cada 10 minutos ou mais:
chmod 755 /home/user/update_noip.sh
crontab -e
# Add:
*/10 * * * * /home/user/update_noip.sh >/dev/null 2>&1