Maybe it’s useful for somebody.
Checks ip and sends to your email., if it has changed. Save as ipcheck.sh and put on /home/USER/
To check every hour, execute crontab -e and add this to the end:

0 * * * * sh ipcheck.sh

Here it goes:

#!/bin/sh

#########################
## uncomment and edit as needed
#########################
#mail_to="[email protected]"
#mail_from="[email protected]"
#user="[email protected]"
#pass="password123"
#host_params="--host=smtp.sapo.pt --port=587 --tls=on --tls-starttls=on --auth=on"

#########################
## do not edit lines bellow
#########################
ip_old=""
ip_new=""
if [ -f ip.txt ]; then ip_old="$(cat ip.txt)";  fi
ip_new="$(curl --connect-timeout 10 --max-time 10 --retry 3 --retry-delay 0 -s icanhazip.com)"

if [ "$ip_new" != "" ] && [ "$ip_new" != "$ip_old" ]
then
echo $ip_new > ip.txt
printf "To:$mail_to\nSubject: IP\n\nOld ip = $ip_old\nNew ip = $ip_new" | msmtp --timeout=10 -t --from=$mail_from --user=$user --passwordeval="echo '$pass'" $host_params
fi
    • murkomOP
      link
      English
      11 year ago

      Nice one. Did not know about it.

  • @[email protected]
    link
    fedilink
    English
    41 year ago

    cool, I’ve been using curl -s ifconfig.me after dig +short myip.opendns.com stopped working

  • @[email protected]
    link
    fedilink
    English
    3
    edit-2
    1 year ago

    I am using a python script that push in a private git repository (so I even have history). I am using dig +short myip.opendns.com @resolver1.opendns.com command to check ip.

  • @[email protected]
    link
    fedilink
    English
    31 year ago

    If you really need to access your home IP often, a domain is definitely worth it. Cloudflare sells them cheap, then just run something like cf-ddns that will update the DNS record automatically every time you get a new IP.

  • Fubarberry
    link
    fedilink
    English
    21 year ago

    Pretty useful, definitely going to save this.

    My home IP almost never changes, so I’d hate to pay for a static IP.

  • @rambos
    link
    English
    11 year ago

    Thx, this is interesting. Im using duckdns atm, but would be nice to replace it with some local scrip if possible

    • murkomOP
      link
      English
      11 year ago

      I also use duckdns.
      But as i like doing little scripts and wanted to try this, i remembered to share here.