This commit is contained in:
alcapone1933
2022-12-29 13:12:19 +01:00
parent 24f8af18be
commit 9754252189
10 changed files with 54 additions and 82 deletions

View File

@@ -1,51 +0,0 @@
---
kind: pipeline
type: docker
name: BUILD-TEST-DEV
steps:
- name: Build Multi-arch
image: alcapone1933/drone:docker-buildx
privileged: true
settings:
platforms: linux/386,linux/amd64,linux/arm/v6,linux/arm/v7,linux/arm64/v8
repo: alcapone1933/ddns-ipv64
tags: dev
dry_run: true
trigger:
branch:
- development
event:
- custom
# - push
# - pull_request
---
kind: pipeline
type: docker
name: BUILD-Dockerhub-DEV
steps:
- name: Build Multi-arch
image: alcapone1933/drone:docker-buildx
privileged: true
settings:
username:
from_secret: DOCKER_USER
password:
from_secret: DOCKER_PASS
platforms: linux/386,linux/amd64,linux/arm/v6,linux/arm/v7,linux/arm64/v8
repo: alcapone1933/ddns-ipv64
# tags: latest
auto_tag: true
auto_tag_suffix: dev
trigger:
branch:
- development
event:
- custom
# - push
# - pull_request
depends_on:
- BUILD-TEST-DEV

View File

@@ -21,9 +21,8 @@ RUN ln -snf /usr/share/zoneinfo/$TZ /etc/localtime && echo $TZ > /etc/timezone &
mkdir -p /data /usr/local/bin/ /etc/cron.d/ mkdir -p /data /usr/local/bin/ /etc/cron.d/
COPY data /data COPY data /data
COPY --from=alcapone1933/shoutrrr:latest /usr/local/bin/shoutrrr /usr/local/bin/shoutrrr COPY --from=alcapone1933/shoutrrr:latest /usr/local/bin/shoutrrr /usr/local/bin/shoutrrr
RUN mv /data/entrypoint.sh /usr/local/bin/entrypoint.sh && mv /data/cronjob /etc/cron.d/container_cronjob && mv /data/healthcheck.sh /usr/local/bin/healthcheck.sh && \ RUN cd /data && chmod +x *.sh && mv /data/entrypoint.sh /usr/local/bin/entrypoint.sh && \
chmod 755 /data/ddns-update.sh && chmod 755 /data/ddns-update-praefix.sh && chmod 755 /usr/local/bin/entrypoint.sh && chmod 755 /usr/local/bin/healthcheck.sh && \ mv /data/cronjob /etc/cron.d/container_cronjob && mv /data/healthcheck.sh /usr/local/bin/healthcheck.sh && touch /var/log/cron.log
chmod 755 /etc/cron.d/container_cronjob && touch /var/log/cron.log
# VOLUME [ "/data" ] # VOLUME [ "/data" ]
ENTRYPOINT ["/sbin/tini", "--", "/usr/local/bin/entrypoint.sh"] ENTRYPOINT ["/sbin/tini", "--", "/usr/local/bin/entrypoint.sh"]

View File

@@ -1,5 +1,6 @@
# Cronjob DDNS Updater ipv64.net # Cronjob DDNS Updater ipv64.net
*/15 * * * * /bin/bash /data/ddns-update.sh >> /var/log/cron.log 2>&1 */15 * * * * /bin/bash /data/ddns-update.sh >> /var/log/cron.log 2>&1
*/30 * * * * sleep 20 && /bin/bash /data/domain-ip-scheck.sh >> /var/log/cron.log 2>&1
# */30 * * * * sleep 20 && echo "`date +%Y-%m-%d\ %H:%M:%S` IP CHECK - Deine DOMAIN ${DOMAIN_IPV64} HAT DIE IP=`dig +short ${DOMAIN_IPV64} A @ns1.ipv64.net`" >> /var/log/cron.log 2>&1 # */30 * * * * sleep 20 && echo "`date +%Y-%m-%d\ %H:%M:%S` IP CHECK - Deine DOMAIN ${DOMAIN_IPV64} HAT DIE IP=`dig +short ${DOMAIN_IPV64} A @ns1.ipv64.net`" >> /var/log/cron.log 2>&1
*/30 * * * * sleep 20 && for DOMAIN in $(echo "${DOMAIN_IPV64}" | sed -e "s/,/ /g"); do echo "`date +%Y-%m-%d\ %H:%M:%S` IP CHECK - Deine DOMAIN ${DOMAIN} HAT DIE IP=`dig +short ${DOMAIN} A @ns1.ipv64.net`" >> /var/log/cron.log 2>&1; done # */30 * * * * sleep 20 && for DOMAIN in $(echo "${DOMAIN_IPV64//,/ }"); do echo "`date +%Y-%m-%d\ %H:%M:%S` IP CHECK - Deine DOMAIN ${DOMAIN} HAT DIE IP=`dig +short ${DOMAIN} A @ns1.ipv64.net`" >> /var/log/cron.log 2>&1; done
# */30 * * * * sleep 20 && for DOMAIN in $(echo "${DOMAIN_IPV64}" | sed -e "s/,/ /g"); do echo "`date +%Y-%m-%d\ %H:%M:%S` IP CHECK - Deine DOMAIN mit PRAEFIX ${DOMAIN_PRAEFIX}.${DOMAIN} HAT DIE IP=`dig +short ${DOMAIN_PRAEFIX}.${DOMAIN} A @ns1.ipv64.net`" >> /var/log/cron.log 2>&1; done # */30 * * * * sleep 20 && for DOMAIN in $(echo "${DOMAIN_IPV64//,/ }"); do echo "`date +%Y-%m-%d\ %H:%M:%S` IP CHECK - Deine DOMAIN mit PRAEFIX ${DOMAIN_PRAEFIX}.${DOMAIN} HAT DIE IP=`dig +short ${DOMAIN_PRAEFIX}.${DOMAIN} A @ns1.ipv64.net`" >> /var/log/cron.log 2>&1; done

View File

@@ -1,8 +1,8 @@
#!/usr/bin/env bash #!/usr/bin/env bash
DATUM=$(date +%Y-%m-%d\ %H:%M:%S) DATUM=$(date +%Y-%m-%d\ %H:%M:%S)
if ! curl -sSL --user-agent "${CURL_USER_AGENT}" --fail "https://ipv64.net" > /dev/null; then if ! curl -sSL --user-agent "${CURL_USER_AGENT}" --fail "https://ipv64.net" 2>&1 > /dev/null; then
echo "$DATUM FEHLER !!! - 404 Sie haben kein Netzwerk oder Internetzugang oder die Webseite ipv64.net ist nicht erreichbar" echo "$DATUM FEHLER !!! - 404 Sie haben kein Netzwerk oder Internetzugang oder die Webseite ipv64.net ist nicht erreichbar"
exit 0 exit 0
fi fi
PFAD="/data" PFAD="/data"
IP=$(curl -4ssL --user-agent "${CURL_USER_AGENT}" "https://ipv64.net/update.php?howismyip" | jq -r 'to_entries[] | "\(.value)"') IP=$(curl -4ssL --user-agent "${CURL_USER_AGENT}" "https://ipv64.net/update.php?howismyip" | jq -r 'to_entries[] | "\(.value)"')

View File

@@ -1,8 +1,8 @@
#!/usr/bin/env bash #!/usr/bin/env bash
DATUM=$(date +%Y-%m-%d\ %H:%M:%S) DATUM=$(date +%Y-%m-%d\ %H:%M:%S)
if ! curl -sSL --user-agent "${CURL_USER_AGENT}" --fail "https://ipv64.net" > /dev/null; then if ! curl -sSL --user-agent "${CURL_USER_AGENT}" --fail "https://ipv64.net" 2>&1 > /dev/null; then
echo "$DATUM FEHLER !!! - 404 Sie haben kein Netzwerk oder Internetzugang oder die Webseite ipv64.net ist nicht erreichbar" echo "$DATUM FEHLER !!! - 404 Sie haben kein Netzwerk oder Internetzugang oder die Webseite ipv64.net ist nicht erreichbar"
exit 0 exit 0
fi fi
PFAD="/data" PFAD="/data"
# IP=$(curl -4s https://ipv64.net/wieistmeineip.php | grep -o '[0-9]\{1,3\}\.[0-9]\{1,3\}\.[0-9]\{1,3\}\.[0-9]\{1,3\}' | tail -n 1) # IP=$(curl -4s https://ipv64.net/wieistmeineip.php | grep -o '[0-9]\{1,3\}\.[0-9]\{1,3\}\.[0-9]\{1,3\}\.[0-9]\{1,3\}' | tail -n 1)

View File

@@ -1,8 +1,8 @@
#!/usr/bin/env bash #!/usr/bin/env bash
DATUM=$(date +%Y-%m-%d\ %H:%M:%S) DATUM=$(date +%Y-%m-%d\ %H:%M:%S)
if ! curl -sSL --user-agent "${CURL_USER_AGENT}" --fail "https://ipv64.net" > /dev/null; then if ! curl -sSL --user-agent "${CURL_USER_AGENT}" --fail "https://ipv64.net" 2>&1 > /dev/null; then
echo "$DATUM FEHLER !!! - 404 Sie haben kein Netzwerk oder Internetzugang oder die Webseite ipv64.net ist nicht erreichbar" echo "$DATUM FEHLER !!! - 404 Sie haben kein Netzwerk oder Internetzugang oder die Webseite ipv64.net ist nicht erreichbar"
exit 0 exit 0
fi fi
PFAD="/data" PFAD="/data"
IP=$(curl -4ssL --user-agent "${CURL_USER_AGENT}" "https://ipv64.net/update.php?howismyip" | jq -r 'to_entries[] | "\(.value)"') IP=$(curl -4ssL --user-agent "${CURL_USER_AGENT}" "https://ipv64.net/update.php?howismyip" | jq -r 'to_entries[] | "\(.value)"')
@@ -14,7 +14,7 @@ function SHOUTRRR_NOTIFY() {
NOTIFY=" NOTIFY="
DOCKER DDNS UPDATER IPV64.NET - IP UPDATE !!! DOCKER DDNS UPDATER IPV64.NET - IP UPDATE !!!
\n \n
`for DOMAIN in $(echo "${DOMAIN_IPV64}" | sed -e "s/,/ /g"); do echo "$DATUM UPDATE !!! \nUpdate IP=$IP - Alte-IP=$UPDIP \nDOMAIN mit PRAEFIX: ${DOMAIN_PRAEFIX}.${DOMAIN} \n"; done`" `for DOMAIN in $(echo "${DOMAIN_IPV64//,/ }"); do echo "$DATUM UPDATE !!! \nUpdate IP=$IP - Alte-IP=$UPDIP \nDOMAIN mit PRAEFIX: ${DOMAIN_PRAEFIX}.${DOMAIN} \n"; done`"
/usr/local/bin/shoutrrr send --url "${SHOUTRRR_URL}" --message "`echo -e "${NOTIFY}"`" 2> /dev/null /usr/local/bin/shoutrrr send --url "${SHOUTRRR_URL}" --message "`echo -e "${NOTIFY}"`" 2> /dev/null
} }
@@ -50,11 +50,11 @@ UPDIP=$(cat $PFAD/updip.txt)
# IP=$(curl -4s https://ipv64.net/wieistmeineip.php | grep -o '[0-9]\{1,3\}\.[0-9]\{1,3\}\.[0-9]\{1,3\}\.[0-9]\{1,3\}' | tail -n 1) # IP=$(curl -4s https://ipv64.net/wieistmeineip.php | grep -o '[0-9]\{1,3\}\.[0-9]\{1,3\}\.[0-9]\{1,3\}\.[0-9]\{1,3\}' | tail -n 1)
IP=$(curl -4ssL --user-agent "${CURL_USER_AGENT}" "https://ipv64.net/update.php?howismyip" | jq -r 'to_entries[] | "\(.value)"') IP=$(curl -4ssL --user-agent "${CURL_USER_AGENT}" "https://ipv64.net/update.php?howismyip" | jq -r 'to_entries[] | "\(.value)"')
# DOMAIN_CHECK=$(dig +short ${DOMAIN_IPV64} A @ns1.ipv64.net) # DOMAIN_CHECK=$(dig +short ${DOMAIN_IPV64} A @ns1.ipv64.net)
DOMAIN_CHECK=$(for DOMAIN in $(echo "${DOMAIN_IPV64}" | sed -e "s/,/ /g"); do dig +short ${DOMAIN_PRAEFIX}.${DOMAIN} A @ns1.ipv64.net; done | tail -n 1) DOMAIN_CHECK=$(for DOMAIN in $(echo "${DOMAIN_IPV64//,/ }"); do dig +short ${DOMAIN_PRAEFIX}.${DOMAIN} A @ns1.ipv64.net; done | tail -n 1)
sleep 1 sleep 1
if [ "$IP" == "$DOMAIN_CHECK" ]; then if [ "$IP" == "$DOMAIN_CHECK" ]; then
# echo "$DATUM CHECK - DOMAIN mit PRAEFIX HAT DEN A-RECORD=`dig +noall +answer ${DOMAIN_PRAEFIX}.${DOMAIN_IPV64} A @ns1.ipv64.net`" # echo "$DATUM CHECK - DOMAIN mit PRAEFIX HAT DEN A-RECORD=`dig +noall +answer ${DOMAIN_PRAEFIX}.${DOMAIN_IPV64} A @ns1.ipv64.net`"
for DOMAIN in $(echo "${DOMAIN_IPV64}" | sed -e "s/,/ /g"); do echo "$DATUM CHECK - DOMAIN mit PRAEFIX HAT DEN A-RECORD=`dig +noall +answer ${DOMAIN_PRAEFIX}.${DOMAIN} A @ns1.ipv64.net`"; done for DOMAIN in $(echo "${DOMAIN_IPV64//,/ }"); do echo "$DATUM CHECK - DOMAIN mit PRAEFIX HAT DEN A-RECORD=`dig +noall +answer ${DOMAIN_PRAEFIX}.${DOMAIN} A @ns1.ipv64.net`"; done
else else
echo "$DATUM UPDATE !!! ..." echo "$DATUM UPDATE !!! ..."
echo "$DATUM UPDATE !!! - NACHEINTRAG DIE IP WIRD NOCH EINMAL GESETZT" echo "$DATUM UPDATE !!! - NACHEINTRAG DIE IP WIRD NOCH EINMAL GESETZT"
@@ -78,7 +78,7 @@ else
# curl -4sSL https://ipv64.net/update.php?key=${DOMAIN_KEY}&domain=${DOMAIN_IPV64}&praefix=${DOMAIN_PRAEFIX}&ip=<ipaddr>&ip6=<ip6addr>&output=min # curl -4sSL https://ipv64.net/update.php?key=${DOMAIN_KEY}&domain=${DOMAIN_IPV64}&praefix=${DOMAIN_PRAEFIX}&ip=<ipaddr>&ip6=<ip6addr>&output=min
sleep 15 sleep 15
# echo "$DATUM NACHEINTRAG - DOMAIN mit PRAEFIX HAT DEN A-RECORD=`dig +noall +answer ${DOMAIN_PRAEFIX}.${DOMAIN_IPV64} A @ns1.ipv64.net`" # echo "$DATUM NACHEINTRAG - DOMAIN mit PRAEFIX HAT DEN A-RECORD=`dig +noall +answer ${DOMAIN_PRAEFIX}.${DOMAIN_IPV64} A @ns1.ipv64.net`"
for DOMAIN in $(echo "${DOMAIN_IPV64}" | sed -e "s/,/ /g"); do echo "$DATUM NACHEINTRAG - DOMAIN mit PRAEFIX HAT DEN A-RECORD=`dig +noall +answer ${DOMAIN_PRAEFIX}.${DOMAIN} A @ns1.ipv64.net`"; done for DOMAIN in $(echo "${DOMAIN_IPV64//,/ }"); do echo "$DATUM NACHEINTRAG - DOMAIN mit PRAEFIX HAT DEN A-RECORD=`dig +noall +answer ${DOMAIN_PRAEFIX}.${DOMAIN} A @ns1.ipv64.net`"; done
fi fi
} }
CHECK_A_DOMAIN CHECK_A_DOMAIN

View File

@@ -1,8 +1,8 @@
#!/usr/bin/env bash #!/usr/bin/env bash
DATUM=$(date +%Y-%m-%d\ %H:%M:%S) DATUM=$(date +%Y-%m-%d\ %H:%M:%S)
if ! curl -sSL --user-agent "${CURL_USER_AGENT}" --fail "https://ipv64.net" > /dev/null; then if ! curl -sSL --user-agent "${CURL_USER_AGENT}" --fail "https://ipv64.net" 2>&1 > /dev/null; then
echo "$DATUM FEHLER !!! - 404 Sie haben kein Netzwerk oder Internetzugang oder die Webseite ipv64.net ist nicht erreichbar" echo "$DATUM FEHLER !!! - 404 Sie haben kein Netzwerk oder Internetzugang oder die Webseite ipv64.net ist nicht erreichbar"
exit 0 exit 0
fi fi
PFAD="/data" PFAD="/data"
# IP=$(curl -4s https://ipv64.net/wieistmeineip.php | grep -o '[0-9]\{1,3\}\.[0-9]\{1,3\}\.[0-9]\{1,3\}\.[0-9]\{1,3\}' | tail -n 1) # IP=$(curl -4s https://ipv64.net/wieistmeineip.php | grep -o '[0-9]\{1,3\}\.[0-9]\{1,3\}\.[0-9]\{1,3\}\.[0-9]\{1,3\}' | tail -n 1)
@@ -15,7 +15,7 @@ function SHOUTRRR_NOTIFY() {
NOTIFY=" NOTIFY="
DOCKER DDNS UPDATER IPV64.NET - IP UPDATE !!! DOCKER DDNS UPDATER IPV64.NET - IP UPDATE !!!
\n \n
`for DOMAIN in $(echo "${DOMAIN_IPV64}" | sed -e "s/,/ /g"); do echo "$DATUM UPDATE !!! \nUpdate IP=$IP - Alte-IP=$UPDIP \nDOMAIN: ${DOMAIN} \n"; done`" `for DOMAIN in $(echo "${DOMAIN_IPV64//,/ }"); do echo "$DATUM UPDATE !!! \nUpdate IP=$IP - Alte-IP=$UPDIP \nDOMAIN: ${DOMAIN} \n"; done`"
/usr/local/bin/shoutrrr send --url "${SHOUTRRR_URL}" --message "`echo -e "${NOTIFY}"`" 2> /dev/null /usr/local/bin/shoutrrr send --url "${SHOUTRRR_URL}" --message "`echo -e "${NOTIFY}"`" 2> /dev/null
} }
@@ -51,11 +51,11 @@ UPDIP=$(cat $PFAD/updip.txt)
# IP=$(curl -4s https://ipv64.net/wieistmeineip.php | grep -o '[0-9]\{1,3\}\.[0-9]\{1,3\}\.[0-9]\{1,3\}\.[0-9]\{1,3\}' | tail -n 1) # IP=$(curl -4s https://ipv64.net/wieistmeineip.php | grep -o '[0-9]\{1,3\}\.[0-9]\{1,3\}\.[0-9]\{1,3\}\.[0-9]\{1,3\}' | tail -n 1)
IP=$(curl -4ssL --user-agent "${CURL_USER_AGENT}" "https://ipv64.net/update.php?howismyip" | jq -r 'to_entries[] | "\(.value)"') IP=$(curl -4ssL --user-agent "${CURL_USER_AGENT}" "https://ipv64.net/update.php?howismyip" | jq -r 'to_entries[] | "\(.value)"')
# DOMAIN_CHECK=$(dig +short ${DOMAIN_IPV64} A @ns1.ipv64.net) # DOMAIN_CHECK=$(dig +short ${DOMAIN_IPV64} A @ns1.ipv64.net)
DOMAIN_CHECK=$(for DOMAIN in $(echo "${DOMAIN_IPV64}" | sed -e "s/,/ /g"); do dig +short ${DOMAIN} A @ns1.ipv64.net; done | tail -n 1) DOMAIN_CHECK=$(for DOMAIN in $(echo "${DOMAIN_IPV64//,/ }"); do dig +short ${DOMAIN} A @ns1.ipv64.net; done | tail -n 1)
sleep 1 sleep 1
if [ "$IP" == "$DOMAIN_CHECK" ]; then if [ "$IP" == "$DOMAIN_CHECK" ]; then
# echo "$DATUM CHECK - DOMAIN HAT DEN A-RECORD=`dig +noall +answer ${DOMAIN_IPV64} A @ns1.ipv64.net`" # echo "$DATUM CHECK - DOMAIN HAT DEN A-RECORD=`dig +noall +answer ${DOMAIN_IPV64} A @ns1.ipv64.net`"
for DOMAIN in $(echo "${DOMAIN_IPV64}" | sed -e "s/,/ /g"); do echo "$DATUM CHECK - DOMAIN HAT DEN A-RECORD=`dig +noall +answer ${DOMAIN} A @ns1.ipv64.net`"; done for DOMAIN in $(echo "${DOMAIN_IPV64//,/ }"); do echo "$DATUM CHECK - DOMAIN HAT DEN A-RECORD=`dig +noall +answer ${DOMAIN} A @ns1.ipv64.net`"; done
else else
echo "$DATUM UPDATE !!! ..." echo "$DATUM UPDATE !!! ..."
echo "$DATUM UPDATE !!! - NACHEINTRAG DIE IP WIRD NOCH EINMAL GESETZT" echo "$DATUM UPDATE !!! - NACHEINTRAG DIE IP WIRD NOCH EINMAL GESETZT"
@@ -79,7 +79,7 @@ else
# curl -4sSL https://ipv64.net/update.php?key=${DOMAIN_KEY}&domain=${DOMAIN_IPV64}&ip=<ipaddr>&ip6=<ip6addr>&output=min # curl -4sSL https://ipv64.net/update.php?key=${DOMAIN_KEY}&domain=${DOMAIN_IPV64}&ip=<ipaddr>&ip6=<ip6addr>&output=min
sleep 15 sleep 15
# echo "$DATUM NACHEINTRAG - DOMAIN HAT DEN A-RECORD=`dig +noall +answer ${DOMAIN_IPV64} A @ns1.ipv64.net`" # echo "$DATUM NACHEINTRAG - DOMAIN HAT DEN A-RECORD=`dig +noall +answer ${DOMAIN_IPV64} A @ns1.ipv64.net`"
for DOMAIN in $(echo "${DOMAIN_IPV64}" | sed -e "s/,/ /g"); do echo "$DATUM NACHEINTRAG - DOMAIN HAT DEN A-RECORD=`dig +noall +answer ${DOMAIN} A @ns1.ipv64.net`"; done for DOMAIN in $(echo "${DOMAIN_IPV64//,/ }"); do echo "$DATUM NACHEINTRAG - DOMAIN HAT DEN A-RECORD=`dig +noall +answer ${DOMAIN} A @ns1.ipv64.net`"; done
fi fi
} }
CHECK_A_DOMAIN CHECK_A_DOMAIN

10
data/domain-ip-scheck.sh Normal file
View File

@@ -0,0 +1,10 @@
#!/usr/bin/env bash
if [[ "${DOMAIN_PRAEFIX_YES}" =~ (YES|yes|Yes) ]] ; then
for DOMAIN in $(echo "${DOMAIN_IPV64//,/ }"); do
echo "`date +%Y-%m-%d\ %H:%M:%S` IP CHECK - Deine DOMAIN ${DOMAIN} HAT DIE IP=`dig +short ${DOMAIN} A @ns1.ipv64.net`" >> /var/log/cron.log 2>&1
done
else
for DOMAIN in $(echo "${DOMAIN_IPV64//,/ }"); do
echo "`date +%Y-%m-%d\ %H:%M:%S` IP CHECK - Deine DOMAIN mit PRAEFIX ${DOMAIN_PRAEFIX}.${DOMAIN} HAT DIE IP=`dig +short ${DOMAIN_PRAEFIX}.${DOMAIN} A @ns1.ipv64.net`" >> /var/log/cron.log 2>&1
done
fi

View File

@@ -44,7 +44,7 @@ if [[ "${DOMAIN_PRAEFIX_YES}" =~ (YES|yes|Yes) ]] ; then
exit 1 exit 1
else else
echo "$DATUM DOMAIN - Sie haben eine DOMAIN gesetzt" echo "$DATUM DOMAIN - Sie haben eine DOMAIN gesetzt"
for DOMAIN in $(echo "${DOMAIN_IPV64}" | sed -e "s/,/ /g"); do echo "$DATUM DOMAIN - Deine DOMAIN mit PRAEFIX ${DOMAIN_PRAEFIX}.${DOMAIN}"; done for DOMAIN in $(echo "${DOMAIN_IPV64//,/ }"); do echo "$DATUM DOMAIN - Deine DOMAIN mit PRAEFIX ${DOMAIN_PRAEFIX}.${DOMAIN}"; done
fi fi
else else
if [ -z "${DOMAIN_IPV64:-}" ] ; then if [ -z "${DOMAIN_IPV64:-}" ] ; then
@@ -53,7 +53,7 @@ else
else else
echo "$DATUM DOMAIN - Sie haben eine DOMAIN gesetzt" echo "$DATUM DOMAIN - Sie haben eine DOMAIN gesetzt"
# echo "$DATUM DOMAIN - Deine DOMAIN $DOMAIN_IPV64" # echo "$DATUM DOMAIN - Deine DOMAIN $DOMAIN_IPV64"
for DOMAIN in $(echo "${DOMAIN_IPV64}" | sed -e "s/,/ /g"); do echo "$DATUM DOMAIN - Deine DOMAIN ${DOMAIN}"; done for DOMAIN in $(echo "${DOMAIN_IPV64//,/ }"); do echo "$DATUM DOMAIN - Deine DOMAIN ${DOMAIN}"; done
fi fi
fi fi
@@ -64,9 +64,19 @@ else
echo "$DATUM DOMAIN KEY - Sie haben einen DOMAIN Key gesetzt" echo "$DATUM DOMAIN KEY - Sie haben einen DOMAIN Key gesetzt"
fi fi
if ! curl -sSL --user-agent "${CURL_USER_AGENT}" --fail "https://ipv64.net" > /dev/null; then if [ -z "${CRON_TIME:-}" ] ; then
echo "$DATUM FEHLER !!! - Sie haben die Environment CRON_TIME nicht gesetzt"
exit 1
fi
if [ -z "${CRON_TIME_DIG:-}" ] ; then
echo "$DATUM FEHLER !!! - Sie haben die Environment CRON_TIME_DIG nicht gesetzt"
exit 1
fi
if ! curl -sSL --user-agent "${CURL_USER_AGENT}" --fail "https://ipv64.net" 2>&1 > /dev/null; then
echo "$DATUM FEHLER !!! - 404 Sie haben kein Netzwerk oder Internetzugang oder die Webseite ipv64.net ist nicht erreichbar" echo "$DATUM FEHLER !!! - 404 Sie haben kein Netzwerk oder Internetzugang oder die Webseite ipv64.net ist nicht erreichbar"
exit 0 exit 0
fi fi
if [ -z "${SHOUTRRR_URL:-}" ] ; then if [ -z "${SHOUTRRR_URL:-}" ] ; then
@@ -92,14 +102,15 @@ CHECK=$(curl -4sSL --user-agent "${CURL_USER_AGENT}" "https://ipv64.net/update.p
if [[ "$CHECK" =~ (nochg|good|ok) ]] ; then if [[ "$CHECK" =~ (nochg|good|ok) ]] ; then
echo "$DATUM CHECK - Die Angaben sind richtig gesetzt: DOMAIN und DOMAIN KEY" echo "$DATUM CHECK - Die Angaben sind richtig gesetzt: DOMAIN und DOMAIN KEY"
sleep 5 sleep 5
for DOMAIN in $(echo "${DOMAIN_IPV64}" | sed -e "s/,/ /g"); do echo "$DATUM IP CHECK - Deine DOMAIN ${DOMAIN} HAT DIE IP=`dig +short ${DOMAIN} A @ns1.ipv64.net`"; done for DOMAIN in $(echo "${DOMAIN_IPV64//,/ }"); do echo "$DATUM IP CHECK - Deine DOMAIN ${DOMAIN} HAT DIE IP=`dig +short ${DOMAIN} A @ns1.ipv64.net`"; done
else else
echo "$DATUM FEHLER !!! - Die Angaben sind falsch gesetzt: DOMAIN oder DOMAIN KEY" echo "$DATUM FEHLER !!! - Die Angaben sind falsch gesetzt: DOMAIN oder DOMAIN KEY"
exit 1 exit 1
fi fi
echo "${CRON_TIME} /bin/bash /data/ddns-update.sh >> /var/log/cron.log 2>&1" > /etc/cron.d/container_cronjob echo "${CRON_TIME} /bin/bash /data/ddns-update.sh >> /var/log/cron.log 2>&1" > /etc/cron.d/container_cronjob
echo "${CRON_TIME_DIG} sleep 20 && /bin/bash /data/domain-ip-scheck.sh >> /var/log/cron.log 2>&1" >> /etc/cron.d/container_cronjob
# echo "$CRON_TIME_DIG" 'sleep 20 && echo "`date +%Y-%m-%d\ %H:%M:%S` IP CHECK - Deine DOMAIN ${DOMAIN_IPV64} HAT DIE IP=`dig +short ${DOMAIN_IPV64} A @ns1.ipv64.net`" >> /var/log/cron.log 2>&1' >> /etc/cron.d/container_cronjob # echo "$CRON_TIME_DIG" 'sleep 20 && echo "`date +%Y-%m-%d\ %H:%M:%S` IP CHECK - Deine DOMAIN ${DOMAIN_IPV64} HAT DIE IP=`dig +short ${DOMAIN_IPV64} A @ns1.ipv64.net`" >> /var/log/cron.log 2>&1' >> /etc/cron.d/container_cronjob
echo "$CRON_TIME_DIG" 'sleep 20 && for DOMAIN in $(echo "${DOMAIN_IPV64}" | sed -e "s/,/ /g"); do echo "`date +%Y-%m-%d\ %H:%M:%S` IP CHECK - Deine DOMAIN ${DOMAIN} HAT DIE IP=`dig +short ${DOMAIN} A @ns1.ipv64.net`" >> /var/log/cron.log 2>&1; done' >> /etc/cron.d/container_cronjob # echo "$CRON_TIME_DIG" 'sleep 20 && for DOMAIN in $(echo "${DOMAIN_IPV64//,/ }"); do echo "`date +%Y-%m-%d\ %H:%M:%S` IP CHECK - Deine DOMAIN ${DOMAIN} HAT DIE IP=`dig +short ${DOMAIN} A @ns1.ipv64.net`" >> /var/log/cron.log 2>&1; done' >> /etc/cron.d/container_cronjob
} }
function Domain_mit_praefix() { function Domain_mit_praefix() {
@@ -107,13 +118,15 @@ CHECK=$(curl -4sSL --user-agent "${CURL_USER_AGENT}" "https://ipv64.net/update.p
if [[ "$CHECK" =~ (nochg|good|ok) ]] ; then if [[ "$CHECK" =~ (nochg|good|ok) ]] ; then
echo "$DATUM CHECK - Die Angaben sind richtig gesetzt: DOMAIN mit PRAEFIX und DOMAIN KEY" echo "$DATUM CHECK - Die Angaben sind richtig gesetzt: DOMAIN mit PRAEFIX und DOMAIN KEY"
sleep 5 sleep 5
for DOMAIN in $(echo "${DOMAIN_IPV64}" | sed -e "s/,/ /g"); do echo "$DATUM IP CHECK - Deine DOMAIN mit PRAEFIX ${DOMAIN_PRAEFIX}.${DOMAIN} HAT DIE IP=`dig +short ${DOMAIN_PRAEFIX}.${DOMAIN} A @ns1.ipv64.net`"; done for DOMAIN in $(echo "${DOMAIN_IPV64//,/ }"); do echo "$DATUM IP CHECK - Deine DOMAIN mit PRAEFIX ${DOMAIN_PRAEFIX}.${DOMAIN} HAT DIE IP=`dig +short ${DOMAIN_PRAEFIX}.${DOMAIN} A @ns1.ipv64.net`"; done
else else
echo "$DATUM FEHLER !!! - Die Angaben sind falsch gesetzt: DOMAIN mit PRAEFIX oder DOMAIN KEY" echo "$DATUM FEHLER !!! - Die Angaben sind falsch gesetzt: DOMAIN mit PRAEFIX oder DOMAIN KEY"
exit 1 exit 1
fi fi
echo "${CRON_TIME} /bin/bash /data/ddns-update-praefix.sh >> /var/log/cron.log 2>&1" > /etc/cron.d/container_cronjob echo "${CRON_TIME} /bin/bash /data/ddns-update-praefix.sh >> /var/log/cron.log 2>&1" > /etc/cron.d/container_cronjob
echo "$CRON_TIME_DIG" 'sleep 20 && for DOMAIN in $(echo "${DOMAIN_IPV64}" | sed -e "s/,/ /g"); do echo "`date +%Y-%m-%d\ %H:%M:%S` IP CHECK - Deine DOMAIN mit PRAEFIX ${DOMAIN_PRAEFIX}.${DOMAIN} HAT DIE IP=`dig +short ${DOMAIN_PRAEFIX}.${DOMAIN} A @ns1.ipv64.net`" >> /var/log/cron.log 2>&1; done' >> /etc/cron.d/container_cronjob echo "${CRON_TIME_DIG} sleep 20 && /bin/bash /data/domain-ip-scheck.sh >> /var/log/cron.log 2>&1" >> /etc/cron.d/container_cronjob
# echo "$CRON_TIME_DIG" 'sleep 20 && for DOMAIN in $(echo "${DOMAIN_IPV64//,/ }"); do echo "`date +%Y-%m-%d\ %H:%M:%S` IP CHECK - Deine DOMAIN mit PRAEFIX ${DOMAIN_PRAEFIX}.${DOMAIN} HAT DIE IP=`dig +short ${DOMAIN_PRAEFIX}.${DOMAIN} A @ns1.ipv64.net`" >> /var/log/cron.log 2>&1; done' >> /etc/cron.d/container_cronjob
} }
if [[ "$DOMAIN_PRAEFIX_YES" =~ (YES|yes|Yes) ]] ; then if [[ "$DOMAIN_PRAEFIX_YES" =~ (YES|yes|Yes) ]] ; then

View File

@@ -1,7 +1,7 @@
#!/usr/bin/env bash #!/usr/bin/env bash
DATUM=$(date +%Y-%m-%d\ %H:%M:%S) DATUM=$(date +%Y-%m-%d\ %H:%M:%S)
set -e set -e
if ! curl -sSL --user-agent "${CURL_USER_AGENT}" --fail "https://ipv64.net" > /dev/null; then if ! curl -sSL --user-agent "${CURL_USER_AGENT}" --fail "https://ipv64.net" 2>&1 > /dev/null; then
echo "$DATUM FEHLER !!! - 404 Sie haben kein Netzwerk oder Internetzugang oder die Webseite ipv64.net ist nicht erreichbar" echo "$DATUM FEHLER !!! - 404 Sie haben kein Netzwerk oder Internetzugang oder die Webseite ipv64.net ist nicht erreichbar"
exit 0 exit 0
fi fi