Now config is in an external file, domain checked is shown and dig is forced to check A entries

This commit is contained in:
Romain de Laage 2020-07-27 18:45:57 +02:00
parent 2c45625659
commit 1dbf94260e
Signed by: rdelaage
GPG Key ID: 534845FADDF0C329
3 changed files with 24 additions and 12 deletions

1
.gitignore vendored Normal file
View File

@ -0,0 +1 @@
dyndns.env

4
dyndns.env.example Normal file
View File

@ -0,0 +1,4 @@
HOST="CHANGEME"
LOGIN="CHANGEME"
PASSWORD="CHANGEME"
PATH_LOG="CHANGEME"

View File

@ -4,31 +4,38 @@
# CONFIG # # CONFIG #
########## ##########
HOST="CHANGEME" if [ -f dyndns.env ]
LOGIN="CHANGEME" then
PASSWORD="CHANGEME" export $(cat dyndns.env | sed 's/#.*//g' | xargs)
PATH_LOG="CHANGEME" else
echo "Error, dyndns.env doesn't exist"
exit 1
fi
if [ -z "$HOST" ] || [ -z "$LOGIN" ] || [ -z "$PASSWORD" ] || [ -z "$PATH_LOG" ]
then
echo "Error, please check your configuration in dyndns.env"
exit 2
fi
########### ###########
# GET IPs # # GET IPs #
########### ###########
HOST_IP=`dig +short $HOST` HOST_IP=`dig A +short $HOST`
# Flag 4 stand for IPv4 # Flag 4 stand for IPv4
CURRENT_IP=`curl -s4 ifconfig.co` CURRENT_IP=`curl -s4 ifconfig.io`
####### #######
# LOG # # LOG #
####### #######
echo >> $PATH_LOG echo "====================================" >> $PATH_LOG
echo "Run dyndns - "$(date +"%D, %T") >> $PATH_LOG echo "Run dyndns - "$(date +"%D, %T") >> $PATH_LOG
echo "Domain : $HOST" >> $PATH_LOG
echo "Current IP" >> $PATH_LOG echo "Current IP : $CURRENT_IP" >> $PATH_LOG
echo "$CURRENT_IP" >> $PATH_LOG echo "Host IP : $HOST_IP" >> $PATH_LOG
echo "Host IP" >> $PATH_LOG
echo "$HOST_IP" >> $PATH_LOG
############### ###############
# DO THE WORK # # DO THE WORK #