#!/bin/bash ip_4=$(curl -m 120 -w '\n' -sfL 'api{4}.ipify.org') #echo $ip_4 ping -c1 $ip_4 &>"/dev/null" if [[ "${?}" -ne 0 ]]; then echo "$ip_4 offline. Take action?" IPV4_ADDRESS=$(dig whoami.cloudflare ch txt @1.1.1.1 +short | awk -F'"' '{print $2}') #echo $IPV4_ADDRESS ping -c1 $IPV4_ADDRESS &>"/dev/null" if [[ "${?}" -ne 0 ]]; then echo "$IPV4_ADDRESS offline. Take action?" elif [[ "${#args[@]}" -eq 0 ]]; then #echo "$IPV4_ADDRESS online" IPV4_ADD=$IPV4_ADDRESS fi elif [[ "${#args[@]}" -eq 0 ]]; then #echo "ip_4 online $ip_4" IPV4_ADD=$ip_4 fi if [[ -n "${IPV4_ADD}" ]]; then #echo $IPV4_ADD if : >/dev/tcp/8.8.8.8/53; then #echo "$DATE wee are on internet" FREEDNS_DOMAIN_0=doorbell.doordk.com FREEDNS_DOMAINHASHKEY_0=NEp1d2VnZTRsbXNaRzB5dkdIb0tEZ0IxOjIwNjQzODQ5 registered_ip_0=$(host -t A doorbell.doordk.com | awk '{print $4}' | cut -d/ -f1) #registered_ip_0=$(ping -qn -c 1 $FREEDNS_DOMAIN_0 | head -n 1 | grep -o '[0-9]\{1,3\}\.[0-9]\{1,3\}\.[0-9]\{1,3\}\.[0-9]\{1,3\}') #registered_ip_0=$(curl --silent "https://freedns.afraid.org/dynamic/update.php?$FREEDNS_DOMAINHASHKEY_0" | grep -o '[0-9]\{1,3\}\.[0-9]\{1,3\}\.[0-9]\{1,3\}\.[0-9]\{1,3\}') UPDATE_URL_0="http://freedns.afraid.org/dynamic/update.php?$FREEDNS_DOMAINHASHKEY_0&address=$IPV4_ADD" #echo "$DATE wee are on internet IPv4 $IPV4_ADD. Freedns reg ip addresse: $registered_ip_0" # if [ "$IPV4_ADD" != "$registered_ip_0" ]; then echo "$DATE $FREEDNS_DOMAIN_0 Update from $registered_ip_0 to $IPV4_ADD" wget -q --read-timeout=0.0 --waitretry=5 --tries=400 --background $UPDATE_URL_0 fi else echo "$DATE IPV4 wee are NOT on internet. Take action?" fi fi