Files
dynamic-status/status-ip.sh

48 lines
981 B
Bash
Executable File

#!/bin/bash
CURDIR=$(dirname "$(readlink -f "$0")")
source "$CURDIR"/shared-functions.so
IP=$(curl -m 10 -s -o - $IPSERV4)
EXIT="$?"
if [ "$var_conn" == "on" ]; then
if $(echo $IP | grep -qE "$VPNIP"); then
TEXT="VPN ($IP)"
var_ip4="$IP"
var_vpn="on"
elif ([ "$EXIT" == 4 ] || [ "$EXIT" == 6 ] || [ "$EXIT" == 28 ]); then
EXIT="fail"
TEXT="t/o"
var_ip4="0.0.0.0"
else
TEXT="$IP"
var_ip4="$IP"
var_vpn="off"
fi
echo "$TEXT"
# If request was successful, try IPv6 as well
if [ "$EXIT" != "fail" ]; then
IP6=$(curl -m 10 -s -o - $IPSERV6)
EXIT="$?"
if ([ "$EXIT" == 4 ] || [ "$EXIT" == 6 ] || [ "$EXIT" == 28 ]); then
TEXT="t/o"
var_ip6="::0"
else
TEXT="$IP6"
var_ip6="$IP6"
fi
echo "IPv6: $TEXT"
fi
else
echo "offline"
echo "Offline status is set. Turn on to enable checks"
var_vpn=off
var_ip4=0.0.0.0
var_ip6=::0
fi
wtmp var_ip4 var_ip6 var_vpn # Write changes back