12 Commits

Author SHA1 Message Date
alcapone1933
852cf37bd9 Merge pull request 'v0.1.1' (#7) from development into master 2022-12-31 14:34:31 +01:00
alcapone1933
567d36c1a5 Merge pull request 'v0.1.0' (#6) from development into master 2022-12-30 16:55:20 +01:00
alcapone1933
2ad69f6d71 update 2022-12-21 22:49:14 +01:00
alcapone1933
7b1390cff9 Merge pull request 'v0.0.9' (#5) from development into master 2022-12-01 17:04:01 +01:00
alcapone1933
0962f3d545 update 2022-11-29 19:10:54 +01:00
alcapone1933
e77043a427 Merge pull request 'development' (#4) from development into master 2022-11-29 17:02:53 +01:00
alcapone1933
776eb3ac8d v0.0.8 2022-11-29 17:02:10 +01:00
alcapone1933
79be8ef001 update 2022-11-28 09:42:24 +01:00
alcapone1933
6d7e5cd1b8 „README.md“ ändern 2022-11-27 01:16:52 +01:00
alcapone1933
aef9e8a468 Merge pull request 'v0.0.7' (#2) from development into master 2022-11-26 13:07:51 +01:00
alcapone1933
6af83e2a7a Readme 2022-11-12 14:46:50 +01:00
alcapone1933
a7c1e4c82d Merge pull request 'v.0.0.6 User-agent' (#1) from development into master
v.0.0.6 User-agent
2022-11-12 11:24:56 +01:00
15 changed files with 346 additions and 188 deletions

View File

@@ -18,7 +18,7 @@ trigger:
event:
- custom
- push
# - pull_request
- pull_request
---
kind: pipeline
@@ -37,7 +37,7 @@ steps:
repo: alcapone1933/ddns-ipv64
# tags: latest
auto_tag: true
auto_tag_suffix: v0.1.4
auto_tag_suffix: v0.1.1
trigger:
branch:

View File

@@ -4,7 +4,7 @@ LABEL maintainer="alcapone1933 <alcapone1933@cosanostra-cloud.de>" \
org.opencontainers.image.created="$(date +%Y-%m-%d\ %H:%M)" \
org.opencontainers.image.authors="alcapone1933 <alcapone1933@cosanostra-cloud.de>" \
org.opencontainers.image.url="https://hub.docker.com/r/alcapone1933/ddns-ipv64" \
org.opencontainers.image.version="v0.1.4" \
org.opencontainers.image.version="v0.1.1" \
org.opencontainers.image.ref.name="alcapone1933/ddns-ipv64" \
org.opencontainers.image.title="DDNS Updater ipv64.net" \
org.opencontainers.image.description="Community DDNS Updater fuer ipv64.net"
@@ -12,12 +12,9 @@ LABEL maintainer="alcapone1933 <alcapone1933@cosanostra-cloud.de>" \
ENV TZ=Europe/Berlin \
CRON_TIME="*/15 * * * *" \
CRON_TIME_DIG="*/30 * * * *" \
VERSION="v0.1.4" \
CURL_USER_AGENT="docker-ddns-ipv64/version=v0.1.4 github.com/alcapone1933/docker-ddns-ipv64" \
SHOUTRRR_URL="" \
SHOUTRRR_SKIP_TEST="no" \
IP_CHECK="yes" \
NAME_SERVER="ns1.ipv64.net"
VERSION="v0.1.1" \
CURL_USER_AGENT="docker-ddns-ipv64/version=v0.1.1 github.com/alcapone1933/docker-ddns-ipv64" \
SHOUTRRR_URL=""
RUN apk add --update --no-cache tzdata curl bash tini bind-tools jq && \
rm -rf /var/cache/apk/*
@@ -27,9 +24,9 @@ RUN ln -snf /usr/share/zoneinfo/$TZ /etc/localtime && echo $TZ > /etc/timezone &
COPY data /data
COPY --from=alcapone1933/shoutrrr:latest /usr/local/bin/shoutrrr /usr/local/bin/shoutrrr
RUN cd /data && chmod +x *.sh && 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 && touch /var/log/cron.log && ln -s /var/log/cron.log /data/cron.log
mv /data/cronjob /etc/cron.d/container_cronjob && mv /data/healthcheck.sh /usr/local/bin/healthcheck.sh && touch /var/log/cron.log
# VOLUME [ "/data" ]
WORKDIR /data
ENTRYPOINT ["/sbin/tini", "--", "/usr/local/bin/entrypoint.sh"]
# HEALTHCHECK --interval=5s --timeout=30s --start-period=5s --retries=3 CMD curl -sSL --user-agent "${CURL_USER_AGENT}" --fail "https://ipv64.net" > /dev/null || exit 1
# HEALTHCHECK --interval=5s --timeout=30s --start-period=5s --retries=2 CMD /usr/local/bin/healthcheck.sh

View File

@@ -1,6 +1,6 @@
MIT License
Copyright (c) 2023 alcapone1933
Copyright (c) 2022 alcapone1933
Permission is hereby granted, free of charge, to any person obtaining a copy
of this software and associated documentation files (the "Software"), to deal
@@ -18,4 +18,4 @@ FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
SOFTWARE.
SOFTWARE.

View File

@@ -81,9 +81,6 @@ docker run -d \
"⚠️ Hier bitte nur ein DOMAIN PRAEFIX (subdomain) eintragen (ersetzen) ⚠️"
-e "DOMAIN_PRAEFIX=ddns" \
-e "SHOUTRRR_URL=" \
-e "SHOUTRRR_SKIP_TEST=no" \
-e "NAME_SERVER=ns1.ipv64.net" \
```
## Docker Compose
@@ -106,8 +103,6 @@ services:
# - "DOMAIN_PRAEFIX=ddns"
- "DOMAIN_KEY=1234567890abcdefghijklmn"
# - "SHOUTRRR_URL="
# - "SHOUTRRR_SKIP_TEST=no"
# - "NAME_SERVER=ns1.ipv64.net"
```
&nbsp;
@@ -133,12 +128,9 @@ services:
| DOMAIN KEY: DEIN DOMAIN KEY bzw. DynDNS Updatehash zu finden unter https://ipv64.net/dyndns.php | DOMAIN_KEY | ------------------ | 1234567890abcdefghijklmn |
| DEINE DOMAIN: z.b. deine-domain.ipv64.net zu finden unter https://ipv64.net/dyndns.php | DOMAIN_IPV64 | ------------------ | deine-domain.ipv64.net |
| DEINE DOMAINS: z.b. deine-domain.ipv64.net, deine-domain.ipv64.de | DOMAIN_IPV64 | ------------------ | deine-domain.ipv64.net,deine-domain.ipv64.de |
| DOMAIN PRAEFIX YES: Damit wird das Domain PRAEFIX aktiv genutzt | DOMAIN_PRAEFIX_YES | no | yes (yes oder no) |
| DOMAIN PRAEFIX YES: Damit wird das Domain PRAEFIX aktiv genutzt | DOMAIN_PRAEFIX_YES | no | yes |
| DEIN DOMAIN PRAEFIX (subdomain) : ⚠️ Nur ein Praefix verwenden ⚠️ z.b. ddns | DOMAIN_PRAEFIX | ------------------ | ddns |
| IP CHECK: Die IP-Adresse der Domain wird überprüft | IP_CHECK | yes | yes (yes oder no) |
| SHOUTRRR URL: Deine Shoutrrr URL als Benachrichtigungsdienst z.b ( gotify,discord,telegram,email) | SHOUTRRR_URL | ------------------ | [Shoutrrr-Beispiele](#shoutrrr-beispiele) |
| SHOUTRRR_SKIP_TEST: Beim Start des Containers wird keine Testnachricht gesendet | SHOUTRRR_SKIP_TEST | no | no (yes oder no) |
| NAME_SERVER: : Der Nameserver, um die IP-Adresse Ihrer Domain zu überprüfen | NAME_SERVER | ns1.ipv64.net | ns1.ipv64.net |
* * *
@@ -152,7 +144,7 @@ So könnte die Nachricht ausehen.
```txt
Betreff: DDNS IPV64 IP UPDATE
# Die Nachricht wird fest vom Script erstellt.
# Die Nachricht wird fest vom Script
Nachricht: DOCKER DDNS UPDATER IPV64.NET - IP UPDATE !!!
DATUM UPDATE !!!
Update IP=IP - Alte-IP=IP
@@ -182,46 +174,10 @@ Das sind Beispiele für Shoutrrr als Benachrichtigungsdienst, für weitere Servi
| Service Name | URL Beispiel (Beispiel text) |
| ------------ | ----------------------------------------------------------------------------------------------------------------------------- |
| gotify | `gotify://domain.de/123456abc/?title=DDNS+IPV64+IP+UPDATE&priority=5` |
| discord | `discord://123456abc@555555555555555?title=DDNS+IPV64+IP+UPDATE` |
| telegram | `telegram://1111111111:123456abc@telegram/?chats=5555555555&title=DDNS+IPV64+IP+UPDATE` |
| smtp (email) | `smtp://noreply@domain.de:password@mail.domain.de:587/?from=noreply@domain.de&to=user@domain.de&subject=DDNS+IPV64+IP+UPDATE` |
&nbsp;
### Du kannst die Shoutrrr URL auch generieren lassen
```bash
# $ docker run --rm -it alcapone1933/shoutrrr generate
#Error: no service specified
#Usage:
# shoutrrr generate [flags]
#
#Flags:
# -g, --generator string The generator to use (default "basic")
# -h, --help help for generate
# -p, --property stringArray Configuration property in key=value format
# -s, --service string The notification service to generate a URL for
#
#Available services:
# opsgenie, slack, teams, generic, googlechat, join, bark, logger, matrix, discord, mattermost, rocketchat, pushbullet, pushover, smtp, telegram, zulip, gotify, hangouts, ifttt
# docker run --rm -it alcapone1933/shoutrrr generate gotify
docker run --rm -it alcapone1933/shoutrrr generate
# TEST
# $ docker run --rm -it alcapone1933/shoutrrr send --verbose --url "< Shoutrrr URL >" --message "DOCKER DDNS UPDATER IPV64.NET"
docker run --rm -it alcapone1933/shoutrrr send --verbose --url "< Shoutrrr URL >" --message "DOCKER DDNS UPDATER IPV64.NET"
```
<details>
<summary markdown="span">DEMO Shoutrrr URL generieren</summary>
<img src="demo/shoutrrr-demo.gif" width="1050" height="400">
</details>
| gotify | `gotify://domain.de/123456abc/?title=DDNS IPV64 IP UPDATE&priority=5` |
| discord | `discord://123456abc@555555555555555?title=DDNS IPV64 IP UPDATE` |
| telegram | `telegram://1111111111:123456abc@telegram/?chats=5555555555&title=DDNS IPV64 IP UPDATE` |
| smtp (email) | `smtp://noreply@domain.de:password@mail.domain.de:587/?from=noreply@domain.de&to=user@domain.de&subject=DDNS IPV64 IP UPDATE` |
&nbsp;

View File

@@ -1,6 +1,6 @@
# Cronjob DDNS Updater ipv64.net
# */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 @${NAME_SERVER}`" >> /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 @${NAME_SERVER}`" >> /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 @${NAME_SERVER}`" >> /var/log/cron.log 2>&1; done
# */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}" | 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

View File

@@ -1,13 +1,11 @@
#!/usr/bin/env bash
DATUM=$(date +%Y-%m-%d\ %H:%M:%S)
# if ! curl -4sf --user-agent "${CURL_USER_AGENT}" "https://ipv64.net" 2>&1 > /dev/null; then
if ! curl -4sf --user-agent "${CURL_USER_AGENT}" "https://ipv64.net/ipcheck.php" 2>&1 > /dev/null; then
if ! curl -4sf --user-agent "${CURL_USER_AGENT}" "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"
exit 1
fi
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/ipcheck.php?ipv4")
IP=$(curl -4ssL --user-agent "${CURL_USER_AGENT}" "https://ipv64.net/update.php?howismyip" | jq -r 'to_entries[] | "\(.value)"')
UPDIP=$(cat $PFAD/updip.txt)
sleep 1
@@ -35,12 +33,11 @@ function CHECK_A_DOMAIN() {
DATUM=$(date +%Y-%m-%d\ %H:%M:%S)
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 -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/ipcheck.php?ipv4")
DOMAIN_CHECK=$(dig +short ${DOMAIN_PRAEFIX}.${DOMAIN_IPV64} A @${NAME_SERVER})
IP=$(curl -4ssL --user-agent "${CURL_USER_AGENT}" "https://ipv64.net/update.php?howismyip" | jq -r 'to_entries[] | "\(.value)"')
DOMAIN_CHECK=$(dig +short ${DOMAIN_PRAEFIX}.${DOMAIN_IPV64} A @ns1.ipv64.net)
sleep 1
if [ "$IP" == "$DOMAIN_CHECK" ]; then
echo "$DATUM CHECK - DOMAIN mit PRAEFIX HAT DEN A-RECORD=`dig +noall +answer ${DOMAIN_PRAEFIX}.${DOMAIN_IPV64} A @${NAME_SERVER}`"
echo "$DATUM CHECK - DOMAIN mit PRAEFIX HAT DEN A-RECORD=`dig +noall +answer ${DOMAIN_PRAEFIX}.${DOMAIN_IPV64} A @ns1.ipv64.net`"
else
echo "$DATUM UPDATE !!! ..."
echo "$DATUM UPDATE !!! - NACHEINTRAG DIE IP WIRD NOCH EINMAL GESETZT"
@@ -56,7 +53,7 @@ else
fi
# curl -4sSL https://ipv64.net/update.php?dkey=${DOMAIN_KEY}=${DOMAIN_IPV64}&praefix=${DOMAIN_PRAEFIX}&ip=<ipaddr>&ip6=<ip6addr>&output=min
sleep 15
echo "$DATUM NACHEINTRAG - DOMAIN mit PRAEFIX HAT DEN A-RECORD=`dig +noall +answer ${DOMAIN_PRAEFIX}.${DOMAIN_IPV64} A @${NAME_SERVER}`"
echo "$DATUM NACHEINTRAG - DOMAIN mit PRAEFIX HAT DEN A-RECORD=`dig +noall +answer ${DOMAIN_PRAEFIX}.${DOMAIN_IPV64} A @ns1.ipv64.net`"
fi
}
CHECK_A_DOMAIN

View File

@@ -1,14 +1,12 @@
#!/usr/bin/env bash
DATUM=$(date +%Y-%m-%d\ %H:%M:%S)
# if ! curl -4sf --user-agent "${CURL_USER_AGENT}" "https://ipv64.net" 2>&1 > /dev/null; then
if ! curl -4sf --user-agent "${CURL_USER_AGENT}" "https://ipv64.net/ipcheck.php" 2>&1 > /dev/null; then
if ! curl -4sf --user-agent "${CURL_USER_AGENT}" "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"
exit 1
fi
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 -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/ipcheck.php?ipv4")
IP=$(curl -4ssL --user-agent "${CURL_USER_AGENT}" "https://ipv64.net/update.php?howismyip" | jq -r 'to_entries[] | "\(.value)"')
UPDIP=$(cat $PFAD/updip.txt)
sleep 1
@@ -36,12 +34,11 @@ function CHECK_A_DOMAIN() {
DATUM=$(date +%Y-%m-%d\ %H:%M:%S)
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 -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/ipcheck.php?ipv4")
DOMAIN_CHECK=$(dig +short ${DOMAIN_IPV64} A @${NAME_SERVER})
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)
sleep 1
if [ "$IP" == "$DOMAIN_CHECK" ]; then
echo "$DATUM CHECK - DOMAIN HAT DEN A-RECORD=`dig +noall +answer ${DOMAIN_IPV64} A @${NAME_SERVER}`"
echo "$DATUM CHECK - DOMAIN HAT DEN A-RECORD=`dig +noall +answer ${DOMAIN_IPV64} A @ns1.ipv64.net`"
else
echo "$DATUM UPDATE !!! ..."
echo "$DATUM UPDATE !!! - NACHEINTRAG DIE IP WIRD NOCH EINMAL GESETZT"
@@ -57,7 +54,7 @@ else
fi
# curl -4sSL https://ipv64.net/update.php?dkey=${DOMAIN_KEY}&domain=${DOMAIN_IPV64}&ip=<ipaddr>&ip6=<ip6addr>&output=min
sleep 15
echo "$DATUM NACHEINTRAG - DOMAIN HAT DEN A-RECORD=`dig +noall +answer ${DOMAIN_IPV64} A @${NAME_SERVER}`"
echo "$DATUM NACHEINTRAG - DOMAIN HAT DEN A-RECORD=`dig +noall +answer ${DOMAIN_IPV64} A @ns1.ipv64.net`"
fi
}
CHECK_A_DOMAIN

View File

@@ -2,17 +2,16 @@
PFAD="/data"
DATUM=$(date +%Y-%m-%d\ %H:%M:%S)
# set -e
# if ! curl -4sf --user-agent "${CURL_USER_AGENT}" "https://ipv64.net" 2>&1 > /dev/null; then
if ! curl -4sf --user-agent "${CURL_USER_AGENT}" "https://ipv64.net/ipcheck.php" 2>&1 > /dev/null; then
if ! curl -4sf --user-agent "${CURL_USER_AGENT}" "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"
STATUS="OK"
NAMESERVER_CHECK=$(dig +timeout=1 @${NAME_SERVER} 2> /dev/null)
NAMESERVER_CHECK=$(dig +timeout=1 @ns1.ipv64.net 2> /dev/null)
echo "$NAMESERVER_CHECK" | grep -s -q "timed out" && { NAMESERVER_CHECK="Timeout" ; STATUS="FAIL" ; }
if [ "${STATUS}" = "FAIL" ] ; then
echo "$DATUM FEHLER !!! - 404 NAMESERVER ${NAME_SERVER} ist nicht ist nicht erreichbar. Sie haben kein Netzwerk oder Internetzugang"
echo "$DATUM FEHLER !!! - 404 NAMESERVER ns1.ipv64.net ist nicht ist nicht erreichbar. Sie haben kein Netzwerk oder Internetzugang"
echo "=============================================================================================="
fi
if ! curl -4sf "https://google.de" 2>&1 > /dev/null; then
if ! curl -4sf "https://google.net" 2>&1 > /dev/null; then
echo "$DATUM FEHLER !!! - 404 Sie haben kein Netzwerk oder Internetzugang oder die Webseite google.de ist nicht erreichbar"
echo "=============================================================================================="
exit 1
@@ -41,8 +40,7 @@ if ! curl -4sf --user-agent "${CURL_USER_AGENT}" "https://ipv64.net/ipcheck.php"
fi
fi
# 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/ipcheck.php?ipv4")
IP=$(curl -4sSL --user-agent "${CURL_USER_AGENT}" "https://ipv64.net/update.php?howismyip" | jq -r 'to_entries[] | "\(.value)"')
UPDIP=$(cat $PFAD/updip.txt)
sleep 1
@@ -105,14 +103,13 @@ function CHECK_A_DOMAIN() {
DATUM=$(date +%Y-%m-%d\ %H:%M:%S)
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 -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/ipcheck.php?ipv4")
# DOMAIN_CHECK=$(dig +short ${DOMAIN_IPV64} A @${NAME_SERVER})
DOMAIN_CHECK=$(for DOMAIN in $(echo "${DOMAIN_IPV64}" | sed -e "s/,/ /g"); do dig +short ${DOMAIN_PRAEFIX}.${DOMAIN} A @${NAME_SERVER}; done | tail -n 1)
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=$(for DOMAIN in $(echo "${DOMAIN_IPV64}" | sed -e "s/,/ /g"); do dig +short ${DOMAIN_PRAEFIX}.${DOMAIN} A @ns1.ipv64.net; done | tail -n 1)
sleep 1
if [ "$IP" == "$DOMAIN_CHECK" ]; then
# echo "$DATUM CHECK - DOMAIN mit PRAEFIX HAT DEN A-RECORD=`dig +noall +answer ${DOMAIN_PRAEFIX}.${DOMAIN_IPV64} A @${NAME_SERVER}`"
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 @${NAME_SERVER}`"; done
# 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
else
echo "$DATUM UPDATE !!! ..."
echo "$DATUM UPDATE !!! - NACHEINTRAG DIE IP WIRD NOCH EINMAL GESETZT"
@@ -131,8 +128,8 @@ else
echo "$IP" > $PFAD/updip.txt
# curl -4sSL https://ipv64.net/update.php?key=${DOMAIN_KEY}&domain=${DOMAIN_IPV64}&praefix=${DOMAIN_PRAEFIX}&ip=<ipaddr>&ip6=<ip6addr>&output=min
sleep 15
# echo "$DATUM NACHEINTRAG - DOMAIN mit PRAEFIX HAT DEN A-RECORD=`dig +noall +answer ${DOMAIN_PRAEFIX}.${DOMAIN_IPV64} A @${NAME_SERVER}`"
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 @${NAME_SERVER}`"; done
# 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
else
echo "$DATUM FEHLER !!! - UPDATE IP=$IP WURDE NICHT AN IPV64.NET GESENTET"
CHECK_INTERVALL=$(curl -4sSL --user-agent "${CURL_USER_AGENT}" "https://ipv64.net/update.php?key=${DOMAIN_KEY}&domain=${DOMAIN_IPV64}&praefix=${DOMAIN_PRAEFIX}&ip=${IP}" | grep -o "Updateintervall")
@@ -154,11 +151,5 @@ else
fi
fi
}
if [[ "$IP_CHECK" =~ (YES|yes|Yes) ]] ; then
CHECK_A_DOMAIN
else
echo > /dev/null
fi
CHECK_A_DOMAIN
echo "=============================================================================================="

View File

@@ -2,17 +2,16 @@
PFAD="/data"
DATUM=$(date +%Y-%m-%d\ %H:%M:%S)
# set -e
# if ! curl -4sf --user-agent "${CURL_USER_AGENT}" "https://ipv64.net" 2>&1 > /dev/null; then
if ! curl -4sf --user-agent "${CURL_USER_AGENT}" "https://ipv64.net/ipcheck.php" 2>&1 > /dev/null; then
if ! curl -4sf --user-agent "${CURL_USER_AGENT}" "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"
STATUS="OK"
NAMESERVER_CHECK=$(dig +timeout=1 @${NAME_SERVER} 2> /dev/null)
NAMESERVER_CHECK=$(dig +timeout=1 @ns1.ipv64.net 2> /dev/null)
echo "$NAMESERVER_CHECK" | grep -s -q "timed out" && { NAMESERVER_CHECK="Timeout" ; STATUS="FAIL" ; }
if [ "${STATUS}" = "FAIL" ] ; then
echo "$DATUM FEHLER !!! - 404 NAMESERVER ${NAME_SERVER} ist nicht ist nicht erreichbar. Sie haben kein Netzwerk oder Internetzugang"
echo "$DATUM FEHLER !!! - 404 NAMESERVER ns1.ipv64.net ist nicht ist nicht erreichbar. Sie haben kein Netzwerk oder Internetzugang"
echo "=============================================================================================="
fi
if ! curl -4sf "https://google.de" 2>&1 > /dev/null; then
if ! curl -4sf "https://google.net" 2>&1 > /dev/null; then
echo "$DATUM FEHLER !!! - 404 Sie haben kein Netzwerk oder Internetzugang oder die Webseite google.de ist nicht erreichbar"
echo "=============================================================================================="
exit 1
@@ -42,8 +41,7 @@ if ! curl -4sf --user-agent "${CURL_USER_AGENT}" "https://ipv64.net/ipcheck.php"
fi
# 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/ipcheck.php?ipv4")
IP=$(curl -4sSL --user-agent "${CURL_USER_AGENT}" "https://ipv64.net/update.php?howismyip" | jq -r 'to_entries[] | "\(.value)"')
UPDIP=$(cat $PFAD/updip.txt)
sleep 1
@@ -106,14 +104,13 @@ function CHECK_A_DOMAIN() {
DATUM=$(date +%Y-%m-%d\ %H:%M:%S)
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 -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/ipcheck.php?ipv4")
# DOMAIN_CHECK=$(dig +short ${DOMAIN_IPV64} A @${NAME_SERVER})
DOMAIN_CHECK=$(for DOMAIN in $(echo "${DOMAIN_IPV64}" | sed -e "s/,/ /g"); do dig +short ${DOMAIN} A @${NAME_SERVER}; done | tail -n 1)
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=$(for DOMAIN in $(echo "${DOMAIN_IPV64}" | sed -e "s/,/ /g"); do dig +short ${DOMAIN} A @ns1.ipv64.net; done | tail -n 1)
sleep 1
if [ "$IP" == "$DOMAIN_CHECK" ]; then
# echo "$DATUM CHECK - DOMAIN HAT DEN A-RECORD=`dig +noall +answer ${DOMAIN_IPV64} A @${NAME_SERVER}`"
for DOMAIN in $(echo "${DOMAIN_IPV64}" | sed -e "s/,/ /g"); do echo "$DATUM CHECK - DOMAIN HAT DEN A-RECORD=`dig +noall +answer ${DOMAIN} A @${NAME_SERVER}`"; done
# 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
else
echo "$DATUM UPDATE !!! ..."
echo "$DATUM UPDATE !!! - NACHEINTRAG DIE IP WIRD NOCH EINMAL GESETZT"
@@ -132,8 +129,8 @@ else
echo "$IP" > $PFAD/updip.txt
# curl -4sSL https://ipv64.net/update.php?key=${DOMAIN_KEY}&domain=${DOMAIN_IPV64}&ip=<ipaddr>&ip6=<ip6addr>&output=min
sleep 15
# echo "$DATUM NACHEINTRAG - DOMAIN HAT DEN A-RECORD=`dig +noall +answer ${DOMAIN_IPV64} A @${NAME_SERVER}`"
for DOMAIN in $(echo "${DOMAIN_IPV64}" | sed -e "s/,/ /g"); do echo "$DATUM NACHEINTRAG - DOMAIN HAT DEN A-RECORD=`dig +noall +answer ${DOMAIN} A @${NAME_SERVER}`"; done
# 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
else
echo "$DATUM FEHLER !!! - UPDATE IP=$IP WURDE NICHT AN IPV64.NET GESENTET"
CHECK_INTERVALL=$(curl -4sSL --user-agent "${CURL_USER_AGENT}" "https://ipv64.net/update.php?key=${DOMAIN_KEY}&domain=${DOMAIN_IPV64}&ip=${IP}" | grep -o "Updateintervall")
@@ -155,11 +152,5 @@ else
fi
fi
}
if [[ "$IP_CHECK" =~ (YES|yes|Yes) ]] ; then
CHECK_A_DOMAIN
else
echo > /dev/null
fi
CHECK_A_DOMAIN
echo "=============================================================================================="

View File

@@ -1,28 +1,27 @@
#!/usr/bin/env bash
# set -e
DATUM=$(date +%Y-%m-%d\ %H:%M:%S)
# if ! curl -4sf --user-agent "${CURL_USER_AGENT}" "https://ipv64.net" 2>&1 > /dev/null; then
if ! curl -4sf --user-agent "${CURL_USER_AGENT}" "https://ipv64.net/ipcheck.php" 2>&1 > /dev/null; then
if ! curl -4sf --user-agent "${CURL_USER_AGENT}" "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 "=============================================================================================="
exit 1
fi
STATUS="OK"
NAMESERVER_CHECK=$(dig +timeout=1 @${NAME_SERVER} 2> /dev/null)
NAMESERVER_CHECK=$(dig +timeout=1 @ns1.ipv64.net 2> /dev/null)
echo "$NAMESERVER_CHECK" | grep -s -q "timed out" && { NAMESERVER_CHECK="Timeout" ; STATUS="FAIL" ; }
if [ "${STATUS}" = "FAIL" ] ; then
echo "$DATUM FEHLER !!! - 404 NAMESERVER ${NAME_SERVER} ist nicht ist nicht erreichbar. Sie haben kein Netzwerk oder Internetzugang"
echo "$DATUM FEHLER !!! - 404 NAMESERVER ns1.ipv64.net ist nicht ist nicht erreichbar. Sie haben kein Netzwerk oder Internetzugang"
echo "=============================================================================================="
exit 1
fi
if [[ "${DOMAIN_PRAEFIX_YES}" =~ (YES|yes|Yes) ]] ; then
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 @${NAME_SERVER}`" >> /var/log/cron.log 2>&1
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
else
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 @${NAME_SERVER}`" >> /var/log/cron.log 2>&1
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
fi
echo "=============================================================================================="

View File

@@ -35,13 +35,13 @@ echo "==========================================================================
if [[ "${DOMAIN_PRAEFIX_YES}" =~ (YES|yes|Yes) ]] ; then
if [ -z "${DOMAIN_PRAEFIX:-}" ] ; then
echo "$DATUM PRAEFIX - Sie haben kein DOMAIN PRAEFIX gesetzt, schaue unter https://ipv64.net/dyndns.php nach bei Domain"
sleep infinity
exit 1
else
echo "$DATUM PRAEFIX - Sie haben ein DOMAIN PRAEFIX gesetzt"
fi
if [ -z "${DOMAIN_IPV64:-}" ] ; then
echo "$DATUM DOMAIN - Sie haben keine DOMAIN gesetzt, schaue unter https://ipv64.net/dyndns.php nach bei Domain"
sleep infinity
exit 1
else
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
@@ -49,7 +49,7 @@ if [[ "${DOMAIN_PRAEFIX_YES}" =~ (YES|yes|Yes) ]] ; then
else
if [ -z "${DOMAIN_IPV64:-}" ] ; then
echo "$DATUM DOMAIN - Sie haben keine DOMAIN gesetzt, schaue unter https://ipv64.net/dyndns.php nach bei Domain"
sleep infinity
exit 1
else
echo "$DATUM DOMAIN - Sie haben eine DOMAIN gesetzt"
# echo "$DATUM DOMAIN - Deine DOMAIN $DOMAIN_IPV64"
@@ -59,24 +59,23 @@ fi
if [ -z "${DOMAIN_KEY:-}" ] ; then
echo "$DATUM DOMAIN KEY - Sie haben keinen DOMAIN Key gesetzt, schaue unter https://ipv64.net/dyndns.php nach bei DynDNS Updatehash"
sleep infinity
exit 1
else
echo "$DATUM DOMAIN KEY - Sie haben einen DOMAIN Key gesetzt"
fi
if [ -z "${CRON_TIME:-}" ] ; then
echo "$DATUM FEHLER !!! - Sie haben die Environment CRON_TIME nicht gesetzt"
sleep infinity
exit 1
fi
if [ -z "${CRON_TIME_DIG:-}" ] ; then
echo "$DATUM FEHLER !!! - Sie haben die Environment CRON_TIME_DIG nicht gesetzt"
sleep infinity
exit 1
fi
while true; do
# if ! curl -4sf --user-agent "${CURL_USER_AGENT}" "https://ipv64.net" 2>&1 > /dev/null; then
if ! curl -4sf --user-agent "${CURL_USER_AGENT}" "https://ipv64.net/ipcheck.php" 2>&1 > /dev/null; then
if ! curl -4sf --user-agent "${CURL_USER_AGENT}" "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"
sleep 900
echo "=============================================================================================="
@@ -86,10 +85,10 @@ while true; do
done
while true; do
STATUS="OK"
NAMESERVER_CHECK=$(dig +timeout=1 @${NAME_SERVER} 2> /dev/null)
NAMESERVER_CHECK=$(dig +timeout=1 @ns1.ipv64.net 2> /dev/null)
echo "$NAMESERVER_CHECK" | grep -s -q "timed out" && { NAMESERVER_CHECK="Timeout" ; STATUS="FAIL" ; }
if [ "${STATUS}" = "FAIL" ] ; then
echo "$DATUM FEHLER !!! - 404 NAMESERVER ${NAME_SERVER} ist nicht ist nicht erreichbar. Sie haben kein Netzwerk oder Internetzugang"
echo "$DATUM FEHLER !!! - 404 NAMESERVER ns1.ipv64.net ist nicht ist nicht erreichbar. Sie haben kein Netzwerk oder Internetzugang"
sleep 900
echo "=============================================================================================="
else
@@ -101,25 +100,19 @@ if [ -z "${SHOUTRRR_URL:-}" ] ; then
echo "$DATUM SHOUTRRR - Sie haben keine SHOUTRRR URL gesetzt"
else
echo "$DATUM SHOUTRRR - Sie haben eine SHOUTRRR URL gesetzt"
if [[ "${SHOUTRRR_SKIP_TEST}" =~ (NO|no|No) ]] ; then
if ! /usr/local/bin/shoutrrr send --url "${SHOUTRRR_URL}" --message "`echo -e "$DATUM TEST !!! \nDDNS Updater in Docker fuer Free DynDNS IPv64.net"`" 2> /dev/null; then
echo "$DATUM FEHLER !!! - Die Angaben sind falsch gesetzt: SHOUTRRR URL"
echo "$DATUM INFO !!! - Schaue unter https://containrrr.dev/shoutrrr/ nach dem richtigen URL Format"
echo "$DATUM INFO !!! - Stoppen sie den Container und Starten sie den Container mit den richtigen Angaben erneut"
sleep infinity
else
echo "$DATUM CHECK - Die Angaben sind richtig gesetzt: SHOUTRRR URL"
fi
if ! /usr/local/bin/shoutrrr send --url "${SHOUTRRR_URL}" --message "`echo -e "$DATUM TEST !!! \nDDNS Updater in Docker fuer Free DynDNS IPv64.net"`" 2> /dev/null; then
echo "$DATUM FEHLER !!! - Die Angaben sind falsch gesetzt: SHOUTRRR URL"
echo "$DATUM INFO !!! - Schaue unter https://containrrr.dev/shoutrrr/ nach dem richtigen URL Format"
echo "$DATUM INFO !!! - Stoppen sie den Container und Starten sie den Container mit den richtigen Angaben erneut"
sleep infinity
else
echo "$DATUM SHOUTRRR - Sie haben die Shoutrrr Testnachricht übersprungen."
echo "$DATUM CHECK - Die Angaben sind richtig gesetzt: SHOUTRRR URL"
fi
fi
# 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)
# CHECK=$(curl -4sSL "https://ipv64.net/update.php?key=${DOMAIN_KEY}&domain=${DOMAIN_IPV64}&ip=$IP" | grep -o "success")
# 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/ipcheck.php?ipv4")
IP=$(curl -4sSL --user-agent "${CURL_USER_AGENT}" "https://ipv64.net/update.php?howismyip" | jq -r 'to_entries[] | "\(.value)"')
function Domain_default() {
CHECK=$(curl -4sSL --user-agent "${CURL_USER_AGENT}" "https://ipv64.net/update.php?key=${DOMAIN_KEY}&domain=${DOMAIN_IPV64}&ip=${IP}&output=min")
@@ -127,11 +120,7 @@ CHECK=$(curl -4sSL --user-agent "${CURL_USER_AGENT}" "https://ipv64.net/update.p
if [[ "$CHECK" =~ (nochg|good|ok) ]] ; then
echo "$DATUM CHECK - Die Angaben sind richtig gesetzt: DOMAIN und DOMAIN KEY"
sleep 5
if [[ "$IP_CHECK" =~ (YES|yes|Yes) ]] ; then
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 @${NAME_SERVER}`"; done
else
echo > /dev/null
fi
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
echo "${IP}" > /data/updip.txt
sleep 2
else
@@ -148,13 +137,9 @@ else
fi
echo "${CRON_TIME} /bin/bash /data/ddns-update.sh >> /var/log/cron.log 2>&1" > /etc/cron.d/container_cronjob
if [[ "$IP_CHECK" =~ (YES|yes|Yes) ]] ; then
echo "${CRON_TIME_DIG} sleep 20 && /bin/bash /data/domain-ip-scheck.sh >> /var/log/cron.log 2>&1" >> /etc/cron.d/container_cronjob
else
echo > /dev/null
fi
# 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 @${NAME_SERVER}`" >> /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 @${NAME_SERVER}`" >> /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 && 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
}
function Domain_mit_praefix() {
@@ -162,11 +147,7 @@ CHECK=$(curl -4sSL --user-agent "${CURL_USER_AGENT}" "https://ipv64.net/update.p
if [[ "$CHECK" =~ (nochg|good|ok) ]] ; then
echo "$DATUM CHECK - Die Angaben sind richtig gesetzt: DOMAIN mit PRAEFIX und DOMAIN KEY"
sleep 5
if [[ "$IP_CHECK" =~ (YES|yes|Yes) ]] ; then
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 @${NAME_SERVER}`"; done
else
echo > /dev/null
fi
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
echo "${IP}" > /data/updip.txt
sleep 2
else
@@ -183,12 +164,8 @@ else
fi
echo "${CRON_TIME} /bin/bash /data/ddns-update-praefix.sh >> /var/log/cron.log 2>&1" > /etc/cron.d/container_cronjob
if [[ "$IP_CHECK" =~ (YES|yes|Yes) ]] ; then
echo "${CRON_TIME_DIG} sleep 20 && /bin/bash /data/domain-ip-scheck.sh >> /var/log/cron.log 2>&1" >> /etc/cron.d/container_cronjob
else
echo > /dev/null
fi
# 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 @${NAME_SERVER}`" >> /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}" | 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
}
if [[ "$DOMAIN_PRAEFIX_YES" =~ (YES|yes|Yes) ]] ; then

View File

@@ -1,15 +1,14 @@
#!/usr/bin/env bash
DATUM=$(date +%Y-%m-%d\ %H:%M:%S)
# set -e
# if ! curl -4sf --user-agent "${CURL_USER_AGENT}" "https://ipv64.net" 2>&1 > /dev/null; then
if ! curl -4sf --user-agent "${CURL_USER_AGENT}" "https://ipv64.net/ipcheck.php" 2>&1 > /dev/null; then
if ! curl -4sf --user-agent "${CURL_USER_AGENT}" "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"
exit 1
fi
STATUS="OK"
NAMESERVER_CHECK=$(dig +timeout=1 @${NAME_SERVER} 2> /dev/null)
NAMESERVER_CHECK=$(dig +timeout=1 @ns1.ipv64.net 2> /dev/null)
echo "$NAMESERVER_CHECK" | grep -s -q "timed out" && { NAMESERVER_CHECK="Timeout" ; STATUS="FAIL" ; }
if [ "${STATUS}" = "FAIL" ] ; then
echo "$DATUM FEHLER !!! - 404 NAMESERVER ${NAME_SERVER} ist nicht ist nicht erreichbar. Sie haben kein Netzwerk oder Internetzugang"
echo "$DATUM FEHLER !!! - 404 NAMESERVER ns1.ipv64.net ist nicht ist nicht erreichbar. Sie haben kein Netzwerk oder Internetzugang"
exit 1
fi

257
demo/demo.cast Normal file
View File

@@ -0,0 +1,257 @@
{"version": 2, "width": 103, "height": 27, "timestamp": 1667020335, "env": {"SHELL": "/bin/bash", "TERM": "xterm-256color"}}
[0.009057, "o", "\u001b[?2004h"]
[0.009807, "o", "root@debian-2gb-nbg1-1:~/docker-ddns-ipv64# "]
[4.008684, "o", "\u001b[7mnano docker-compose.yml\u001b[27m"]
[4.493642, "o", "\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\bnano docker-compose.yml"]
[4.494021, "o", "\r\n"]
[4.494364, "o", "\u001b[?2004l\r"]
[4.505653, "o", "\u001b[?2004h"]
[4.506278, "o", "\u001b[?1049h\u001b[22;0;0t\u001b[1;27r\u001b(B\u001b[m\u001b[4l\u001b[?7h\u001b[39;49m\u001b[?1h\u001b="]
[4.506672, "o", "\u001b[?1h\u001b="]
[4.50698, "o", "\u001b[?25l"]
[4.507668, "o", "\u001b[39;49m\u001b(B\u001b[m\u001b[H\u001b[2J\u001b[25;45H"]
[4.50803, "o", "\u001b(B\u001b[0;7m[ Reading... ]"]
[4.50844, "o", "\u001b(B\u001b[m"]
[4.508909, "o", "\u001b[25;44H"]
[4.509565, "o", "\u001b(B\u001b[0;7m[ Read 25 lin"]
[4.509843, "o", "es ]"]
[4.510089, "o", "\u001b(B\u001b[m"]
[4.511579, "o", "\u001b[H"]
[4.511913, "o", "\u001b(B\u001b[0;7m GNU nano 5.4 docker-compose.yml \u001b[1;102H"]
[4.512269, "o", "\u001b(B\u001b[m"]
[4.512559, "o", "\r\u001b[26d"]
[4.512787, "o", "\u001b(B\u001b[0;7m^G\u001b(B\u001b[m Help\u001b[15G"]
[4.513005, "o", "\u001b(B\u001b[0;7m^O\u001b(B\u001b[m Write Out \u001b(B\u001b[0;7m^W\u001b(B\u001b[m Where Is \u001b(B\u001b[0;7m^K\u001b(B\u001b[m Cut\u001b[26;57H"]
[4.513258, "o", "\u001b(B\u001b[0;7m^T\u001b(B\u001b[m Execute \u001b(B\u001b[0;7m^C\u001b(B\u001b[m Location \u001b(B\u001b[0;7mM-U\u001b(B\u001b[m Undo\r\u001b[27d"]
[4.51348, "o", "\u001b(B\u001b[0;7m^X\u001b(B\u001b[m Exit\u001b[15G"]
[4.513694, "o", "\u001b(B\u001b[0;7m^R\u001b(B\u001b[m Read File \u001b(B\u001b[0;7m^\\\u001b(B\u001b[m Replace \u001b(B\u001b[0;7m^U\u001b(B\u001b[m Paste\u001b[57G"]
[4.51389, "o", "\u001b(B\u001b[0;7m^J\u001b(B\u001b[m Justify \u001b(B\u001b[0;7m^_\u001b(B\u001b[m Go To Line \u001b(B\u001b[0;7mM-E\u001b(B\u001b[m Redo"]
[4.51425, "o", "\r\u001b[2d"]
[4.514426, "o", "version: \"3.9\"\r\u001b[3d"]
[4.514574, "o", "services:\u001b[4;3H"]
[4.514717, "o", "ddns-ipv64:\u001b[5;5H"]
[4.514856, "o", "build:\u001b[6;7H"]
[4.514996, "o", "dockerfile: ./Dockerfile\u001b[7;5H"]
[4.515147, "o", "image: alcapone1933/ddns-ipv64:latest\u001b[8;5H"]
[4.515289, "o", "container_name: ddns-ipv64\u001b[9;5H"]
[4.515425, "o", "restart: always\r\u001b[10d"]
[4.515566, "o", "\u001b[36m # volumes:\u001b[11;6H"]
[4.515722, "o", "\u001b[1K "]
[4.515949, "o", "# - data:/data\u001b[12;5H"]
[4.516159, "o", "\u001b[39m\u001b(B\u001b[menvironment:\u001b[13;7H"]
[4.516334, "o", "- \"TZ=Europe/Berlin\"\u001b[14;6H"]
[4.516564, "o", "\u001b[36m\u001b[1K "]
[4.516794, "o", "# Standert Alle 15 Minuten\u001b[15;7H"]
[4.517056, "o", "\u001b[39m\u001b(B\u001b[m- \"CRON_TIME=*/1 * * * *\"\u001b[16;6H"]
[4.517304, "o", "\u001b[36m\u001b[1K "]
[4.517544, "o", "# Standert Alle 30 Minuten Abfrage ob der Domain eintrag richtig ist\u001b[17;7H"]
[4.517781, "o", "\u001b[39m\u001b(B\u001b[m- \"CRON_TIME_DIG=*/1 * * * *\"\u001b[18;7H"]
[4.518074, "o", "- \"DOMAIN_IPV64=demo-ipv64.ipv64.net\"\u001b[19;6H"]
[4.51832, "o", "\u001b[36m\u001b[1K "]
[4.518563, "o", "# DOMAIN KEY FALSCH\u001b[20;7H"]
[4.518803, "o", "\u001b[39m\u001b(B\u001b[m- \"DOMAIN_KEY=7nQpaSWPFOozbHLA2miZGtKM\"\u001b[21;6H"]
[4.519044, "o", "\u001b[36m\u001b[1K "]
[4.519277, "o", "# DOMAIN KEY RICHTIG\u001b[22;6H"]
[4.519507, "o", "\u001b[1K "]
[4.519742, "o", "# - \"DOMAIN_KEY=knQpaSWPFOozbHLA2miZGtKM\"\r\u001b[24d"]
[4.51997, "o", "# volumes:\r\u001b[2d"]
[4.520251, "o", "\u001b[39m\u001b(B\u001b[m"]
[4.520489, "o", "\u001b[?12l\u001b[?25h"]
[5.844522, "o", "\u001b[?25l"]
[5.84534, "o", "\u001b[3d"]
[5.845882, "o", "\u001b[?12l\u001b[?25h"]
[6.348809, "o", "\u001b[?25l"]
[6.349455, "o", "\u001b[4d"]
[6.349748, "o", "\u001b[?12l\u001b[?25h"]
[6.380009, "o", "\u001b[?25l"]
[6.380556, "o", "\u001b[5d"]
[6.38088, "o", "\u001b[?12l\u001b[?25h"]
[6.412216, "o", "\u001b[?25l"]
[6.413226, "o", "\u001b[6d"]
[6.413758, "o", "\u001b[?12l\u001b[?25h"]
[6.457679, "o", "\u001b[?25l"]
[6.458205, "o", "\u001b[7d"]
[6.458586, "o", "\u001b[?12l\u001b[?25h"]
[6.489465, "o", "\u001b[?25l"]
[6.490006, "o", "\u001b[8d"]
[6.49035, "o", "\u001b[?12l\u001b[?25h"]
[6.519657, "o", "\u001b[?25l"]
[6.520224, "o", "\u001b[9d"]
[6.520543, "o", "\u001b[?12l\u001b[?25h"]
[6.551093, "o", "\u001b[?25l"]
[6.551654, "o", "\u001b[10d"]
[6.551985, "o", "\u001b[?12l\u001b[?25h"]
[6.58218, "o", "\u001b[?25l\u001b[11d\u001b[?12l\u001b[?25h"]
[6.614251, "o", "\u001b[?25l\u001b[12d\u001b[?12l\u001b[?25h"]
[6.644328, "o", "\u001b[?25l\u001b[13d\u001b[?12l\u001b[?25h"]
[6.675868, "o", "\u001b[?25l\u001b[14d\u001b[?12l\u001b[?25h"]
[6.708505, "o", "\u001b[?25l\u001b[15d\u001b[?12l\u001b[?25h"]
[6.75547, "o", "\u001b[?25l\u001b[16d\u001b[?12l\u001b[?25h"]
[6.785852, "o", "\u001b[?25l\u001b[17d\u001b[?12l\u001b[?25h"]
[6.815244, "o", "\u001b[?25l\u001b[18d\u001b[?12l\u001b[?25h"]
[6.84606, "o", "\u001b[?25l\u001b[19d\u001b[?12l\u001b[?25h"]
[6.877302, "o", "\u001b[?25l\u001b[20d\u001b[?12l\u001b[?25h"]
[8.849629, "o", "\u001b[?25l\u001b[25d\u001b[J\u001b[27d\u001b[?12l\u001b[?25h\u001b[27;1H\u001b[?1049l\u001b[23;0;0t\r\u001b[?1l\u001b>\u001b[?2004l\u001b[?2004hroot@debian-2gb-nbg1-1:~/docker-ddns-ipv64# "]
[11.682145, "o", "\u001b[7mdocker-compose up\u001b[27m"]
[12.164139, "o", "\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\bdocker-compose up\r\n\u001b[?2004l\r"]
[12.303022, "o", "\u001b[1A\u001b[1B\u001b[0G\u001b[?25l[+] Running 0/0\r\n\u001b[37m ⠋ Network docker-ddns-ipv64_default Creating 0.1s\r\n\u001b[0m\u001b[?25h"]
[12.366119, "o", "\u001b[1A\u001b[1A\u001b[0G\u001b[?25l[+] Running 2/1\r\n\u001b[34m ⠿ Network docker-ddns-ipv64_default Created 0.1s\r\n\u001b[0m\u001b[34m ⠿ Container ddns-ipv64 Created 0.0s\r\n\u001b[0m\u001b[?25h"]
[12.368394, "o", "Attaching to ddns-ipv64\r\n"]
[17.766958, "o", "\u001b[36mddns-ipv64 | \u001b[0m================================ START DDNS UPDATER IPV64.NET ================================\r\n\u001b[36mddns-ipv64 | \u001b[0m\r\n\u001b[36mddns-ipv64 | \u001b[0mSie haben einen DOMAIN Key gesetzt\r\n\u001b[36mddns-ipv64 | \u001b[0m\r\n\u001b[36mddns-ipv64 | \u001b[0m\r\n\u001b[36mddns-ipv64 | \u001b[0mSie haben eine DOMAIN gesetzt\r\n\u001b[36mddns-ipv64 | \u001b[0m\r\n\u001b[36mddns-ipv64 | \u001b[0mDeine DOMAIN demo-ipv64.ipv64.net\r\n"]
[17.977174, "o", "\u001b[36mddns-ipv64 | \u001b[0m\r\n\u001b[36mddns-ipv64 | \u001b[0mDie Angaben sind falsch gesetzt : DOMAIN oder DOMAIN KEY\r\n\u001b[36mddns-ipv64 | \u001b[0m\r\n"]
[18.102001, "o", "\u001b[36mddns-ipv64 exited with code 1\r\n\u001b[0m"]
[20.074317, "o", "^CGracefully stopping... (press Ctrl+C again to force)\r\n"]
[20.174766, "o", "\u001b[1A\u001b[1B\u001b[0G\u001b[?25l[+] Running 0/0\r\n\u001b[37m ⠋ Container ddns-ipv64 Stopping 0.1s\r\n\u001b[0m\u001b[?25h"]
[20.219771, "o", "\u001b[1A\u001b[1A\u001b[0G\u001b[?25l\u001b[34m[+] Running 1/1\u001b[0m\r\n\u001b[34m ⠿ Container ddns-ipv64 Stopped 0.1s\r\n\u001b[0m\u001b[?25h"]
[20.221656, "o", "canceled"]
[20.222029, "o", "\r\n"]
[20.224045, "o", "\u001b[?2004h"]
[20.224417, "o", "root@debian-2gb-nbg1-1:~/docker-ddns-ipv64# "]
[21.821976, "o", "\u001b[7mdocker-compose down\u001b[27m"]
[22.131369, "o", "\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\bdocker-compose down\r\n\u001b[?2004l\r"]
[22.24558, "o", "\u001b[1A\u001b[1B\u001b[0G\u001b[?25l[+] Running 2/0\r\n\u001b[34m ⠿ Container ddns-ipv64 Removed 0.0s\r\n\u001b[0m\u001b[34m ⠿ Network docker-ddns-ipv64_default Removed 0.1s\r\n\u001b[0m\u001b[?25h\u001b[?2004h"]
[22.246054, "o", "root@debian-2gb-nbg1-1:~/docker-ddns-ipv64# "]
[23.37785, "o", "docker-compose down"]
[23.707726, "o", "\b\b\b\b\u001b[2Pup"]
[24.004216, "o", "\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\bnano docker-compose.yml"]
[24.992152, "o", "\r\n\u001b[?2004l\r"]
[25.00142, "o", "\u001b[?2004h"]
[25.002667, "o", "\u001b[?1049h\u001b[22;0;0t\u001b[1;27r\u001b(B\u001b[m\u001b[4l\u001b[?7h\u001b[39;49m\u001b[?1h\u001b="]
[25.003288, "o", "\u001b[?1h\u001b="]
[25.003619, "o", "\u001b[?25l"]
[25.004364, "o", "\u001b[39;49m\u001b(B\u001b[m\u001b[H\u001b[2J\u001b[25;45H"]
[25.004708, "o", "\u001b(B\u001b[0;7m[ Reading... ]"]
[25.005032, "o", "\u001b(B\u001b[m"]
[25.005407, "o", "\u001b[25;44H"]
[25.005691, "o", "\u001b(B\u001b[0;7m[ Read 25 lin"]
[25.005947, "o", "es ]"]
[25.006154, "o", "\u001b(B\u001b[m"]
[25.007736, "o", "\u001b[H"]
[25.008131, "o", "\u001b(B\u001b[0;7m GNU nano 5.4 docker-compose.yml \u001b[1;102H"]
[25.008387, "o", "\u001b(B\u001b[m"]
[25.008656, "o", "\r\u001b[26d"]
[25.008927, "o", "\u001b(B\u001b[0;7m^G\u001b(B\u001b[m Help\u001b[15G"]
[25.009158, "o", "\u001b(B\u001b[0;7m^O\u001b(B\u001b[m Write Out \u001b(B\u001b[0;7m^W\u001b(B\u001b[m Where Is \u001b(B\u001b[0;7m^K\u001b(B\u001b[m Cut\u001b[26;57H"]
[25.009382, "o", "\u001b(B\u001b[0;7m^T\u001b(B\u001b[m Execute \u001b(B\u001b[0;7m^C\u001b(B\u001b[m Location \u001b(B\u001b[0;7mM-U\u001b(B\u001b[m Undo\r\u001b[27d"]
[25.009593, "o", "\u001b(B\u001b[0;7m^X\u001b(B\u001b[m Exit\u001b[15G"]
[25.009804, "o", "\u001b(B\u001b[0;7m^R\u001b(B\u001b[m Read File \u001b(B\u001b[0;7m^\\\u001b(B\u001b[m Replace \u001b(B\u001b[0;7m^U\u001b(B\u001b[m Paste\u001b[57G"]
[25.010012, "o", "\u001b(B\u001b[0;7m^J\u001b(B\u001b[m Justify \u001b(B\u001b[0;7m^_\u001b(B\u001b[m Go To Line \u001b(B\u001b[0;7mM-E\u001b(B\u001b[m Redo"]
[25.010559, "o", "\r\u001b[2d"]
[25.010807, "o", "version: \"3.9\"\r\u001b[3d"]
[25.011147, "o", "services:\u001b[4;3H"]
[25.011384, "o", "ddns-ipv64:\u001b[5;5H"]
[25.011652, "o", "build:\u001b[6;7H"]
[25.011941, "o", "dockerfile: ./Dockerfile\u001b[7;5H"]
[25.012199, "o", "image: alcapone1933/ddns-ipv64:latest\u001b[8;5H"]
[25.012416, "o", "container_name: ddns-ipv64\u001b[9;5H"]
[25.012624, "o", "restart: always\r\u001b[10d"]
[25.012895, "o", "\u001b[36m # volumes:\u001b[11;6H"]
[25.013161, "o", "\u001b[1K "]
[25.01338, "o", "# - data:/data\u001b[12;5H"]
[25.01359, "o", "\u001b[39m\u001b(B\u001b[menvironment:\u001b[13;7H"]
[25.013752, "o", "- \"TZ=Europe/Berlin\"\u001b[14;6H"]
[25.01389, "o", "\u001b[36m\u001b[1K "]
[25.014029, "o", "# Standert Alle 15 Minuten\u001b[15;7H"]
[25.014169, "o", "\u001b[39m\u001b(B\u001b[m- \"CRON_TIME=*/1 * * * *\"\u001b[16;6H"]
[25.014307, "o", "\u001b[36m\u001b[1K "]
[25.014449, "o", "# Standert Alle 30 Minuten Abfrage ob der Domain eintrag richtig ist\u001b[17;7H"]
[25.0146, "o", "\u001b[39m\u001b(B\u001b[m- \"CRON_TIME_DIG=*/1 * * * *\"\u001b[18;7H"]
[25.01474, "o", "- \"DOMAIN_IPV64=demo-ipv64.ipv64.net\"\u001b[19;6H"]
[25.014876, "o", "\u001b[36m\u001b[1K "]
[25.015013, "o", "# DOMAIN KEY FALSCH\u001b[20;7H"]
[25.015152, "o", "\u001b[39m\u001b(B\u001b[m- \"DOMAIN_KEY=7nQpaSWPFOozbHLA2miZGtKM\"\u001b[21;6H"]
[25.015295, "o", "\u001b[36m\u001b[1K "]
[25.015439, "o", "# DOMAIN KEY RICHTIG\u001b[22;6H"]
[25.015572, "o", "\u001b[1K "]
[25.015709, "o", "# - \"DOMAIN_KEY=knQpaSWPFOozbHLA2miZGtKM\"\r\u001b[24d"]
[25.015844, "o", "# volumes:\r\u001b[2d"]
[25.015974, "o", "\u001b[39m\u001b(B\u001b[m"]
[25.016146, "o", "\u001b[?12l\u001b[?25h"]
[25.330673, "o", "\u001b[?25l"]
[25.331418, "o", "\u001b[3d"]
[25.331894, "o", "\u001b[?12l\u001b[?25h"]
[25.831529, "o", "\u001b[?25l\u001b[4d\u001b[?12l\u001b[?25h"]
[25.878232, "o", "\u001b[?25l"]
[25.879161, "o", "\u001b[5d"]
[25.879727, "o", "\u001b[?12l\u001b[?25h"]
[25.90831, "o", "\u001b[?25l"]
[25.909404, "o", "\u001b[6d"]
[25.910072, "o", "\u001b[?12l\u001b[?25h"]
[25.941484, "o", "\u001b[?25l"]
[25.942249, "o", "\u001b[7d"]
[25.942564, "o", "\u001b[?12l\u001b[?25h"]
[25.973099, "o", "\u001b[?25l"]
[25.973631, "o", "\u001b[8d"]
[25.974091, "o", "\u001b[?12l\u001b[?25h"]
[26.003005, "o", "\u001b[?25l"]
[26.003568, "o", "\u001b[9d"]
[26.003915, "o", "\u001b[?12l\u001b[?25h"]
[26.034666, "o", "\u001b[?25l"]
[26.035211, "o", "\u001b[10d"]
[26.035512, "o", "\u001b[?12l\u001b[?25h"]
[26.065643, "o", "\u001b[?25l"]
[26.066292, "o", "\u001b[11d"]
[26.066651, "o", "\u001b[?12l\u001b[?25h"]
[26.095953, "o", "\u001b[?25l"]
[26.096493, "o", "\u001b[12d"]
[26.09698, "o", "\u001b[?12l\u001b[?25h"]
[26.142032, "o", "\u001b[?25l"]
[26.142241, "o", "\u001b[13d"]
[26.142409, "o", "\u001b[?12l\u001b[?25h"]
[26.173935, "o", "\u001b[?25l\u001b[14d"]
[26.174448, "o", "\u001b[?12l\u001b[?25h"]
[26.203891, "o", "\u001b[?25l\u001b[15d\u001b[?12l\u001b[?25h"]
[26.234345, "o", "\u001b[?25l\u001b[16d\u001b[?12l\u001b[?25h"]
[26.264978, "o", "\u001b[?25l\u001b[17d\u001b[?12l\u001b[?25h"]
[26.297094, "o", "\u001b[?25l\u001b[18d\u001b[?12l\u001b[?25h"]
[26.32784, "o", "\u001b[?25l\u001b[19d\u001b[?12l\u001b[?25h"]
[26.359473, "o", "\u001b[?25l\u001b[20d\u001b[?12l\u001b[?25h"]
[26.407653, "o", "\u001b[?25l\u001b[21d\u001b[?12l\u001b[?25h"]
[26.409044, "o", "\u001b[?25l\u001b[C\u001b[?12l\u001b[?25h"]
[26.811589, "o", "\u001b[?25l\u001b[C\u001b[?12l\u001b[?25h"]
[26.905981, "o", "\u001b[?25l\u001b[A\u001b[?12l\u001b[?25h"]
[27.081618, "o", "\u001b[?25l \u001b[?12l\u001b[?25h"]
[27.298024, "o", "\u001b[?25l \u001b[?12l\u001b[?25h"]
[27.545592, "o", "\u001b[?25l \u001b[?12l\u001b[?25h"]
[27.773669, "o", "\u001b[?25l\r\u001b[25d\u001b[K\u001b[20;7H\u001b[?12l\u001b[?25h"]
[28.73667, "o", "\u001b[?25l\u001b[1;65H\u001b(B\u001b[0;7m*\u001b[102G\u001b(B\u001b[m\u001b[20;6H\u001b[36m\u001b[1K #- \"DOMAIN_KEY=7nQpaSWPFOozbHLA2miZGtKM\"\u001b[8G\u001b[39m\u001b(B\u001b[m\u001b[?12l\u001b[?25h"]
[28.89698, "o", "\u001b[?25l\u001b[36m - \"DOMAIN_KEY=7nQpaSWPFOozbHLA2miZGtKM\"\u001b[20;9H\u001b[39m\u001b(B\u001b[m\u001b[?12l\u001b[?25h"]
[29.146949, "o", "\u001b[?25l\u001b[21d\u001b[?12l\u001b[?25h"]
[29.501894, "o", "\u001b[?25l\u001b[22d\u001b[?12l\u001b[?25h"]
[29.888123, "o", "\u001b[?25l\b\u001b[1P\u001b[?12l\u001b[?25h"]
[30.067487, "o", "\u001b[?25l\b\b\u001b[1K - \"DOMAIN_KEY=knQpaSWPFOozbHLA2miZGtKM\"\u001b[K\u001b[7G\u001b[?12l\u001b[?25h"]
[30.814693, "o", "\u001b[?25l\r\u001b[25d\u001b(B\u001b[0;7mSave modified buffer? \u001b[26;1H Y\u001b(B\u001b[m Yes\u001b[K\r\u001b[27d\u001b(B\u001b[0;7m N\u001b(B\u001b[m No \u001b[15G \u001b(B\u001b[0;7m^C\u001b(B\u001b[m Cancel\u001b[K\u001b[25;23H\u001b[?12l\u001b[?25h"]
[31.114283, "o", "\u001b[?25l\r\u001b[26d\u001b(B\u001b[0;7m^G\u001b(B\u001b[m Help\u001b[26;26H\u001b(B\u001b[0;7mM-D\u001b(B\u001b[m DOS Format\u001b[26;51H\u001b(B\u001b[0;7mM-A\u001b(B\u001b[m Append\u001b[26;76H\u001b(B\u001b[0;7mM-B\u001b(B\u001b[m Backup File\r\u001b[27d\u001b(B\u001b[0;7m^C\u001b(B\u001b[m Cancel\u001b[17G \u001b(B\u001b[0;7mM-M\u001b(B\u001b[m Mac Format\u001b[27;51H\u001b(B\u001b[0;7mM-P\u001b(B\u001b[m Prepend\u001b[27;76H\u001b(B\u001b[0;7m^T\u001b(B\u001b[m Browse\r\u001b[25d\u001b(B\u001b[0;7mFile Name to Write: docker-compose.yml\u001b(B\u001b[m\u001b[?12l\u001b[?25h"]
[31.457386, "o", "\u001b[?25l\u001b[44G\u001b[1K \u001b(B\u001b[0;7m[ Writing... ]\u001b(B\u001b[m\u001b[K"]
[31.459893, "o", "\u001b[1;65H\u001b(B\u001b[0;7m \u001b[102G\u001b(B\u001b[m\u001b[25;43H\u001b(B\u001b[0;7m[ Wrote 25 lines ]\u001b(B\u001b[m\r"]
[31.460335, "o", "\u001b[J\u001b[27d\u001b[?12l\u001b[?25h\u001b[27;1H\u001b[?1049l\u001b[23;0;0t\r\u001b[?1l\u001b>\u001b[?2004l"]
[31.461695, "o", "\u001b[?2004hroot@debian-2gb-nbg1-1:~/docker-ddns-ipv64# "]
[31.867655, "o", "nano docker-compose.yml"]
[32.073275, "o", "\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\u001b[4Pdocker-compose down"]
[32.745869, "o", "\b\b\b\b\u001b[2Pup"]
[33.124935, "o", "\r\n\u001b[?2004l\r"]
[33.26416, "o", "\u001b[1A\u001b[1B\u001b[0G\u001b[?25l[+] Running 1/0\r\n\u001b[34m ⠿ Network docker-ddns-ipv64_default Created 0.1s\r\n\u001b[0m\u001b[37m ⠋ Container ddns-ipv64 Creating 0.0s\r\n\u001b[0m\u001b[?25h"]
[33.30283, "o", "\u001b[1A\u001b[1A\u001b[1A\u001b[0G\u001b[?25l\u001b[34m[+] Running 2/2\u001b[0m\r\n\u001b[34m ⠿ Network docker-ddns-ipv64_default Created 0.1s\r\n\u001b[0m\u001b[34m ⠿ Container ddns-ipv64 Created 0.1s\r\n\u001b[0m\u001b[?25h"]
[33.304242, "o", "Attaching to ddns-ipv64\r\n"]
[38.667533, "o", "\u001b[36mddns-ipv64 | \u001b[0m================================ START DDNS UPDATER IPV64.NET ================================\r\n\u001b[36mddns-ipv64 | \u001b[0m\r\n\u001b[36mddns-ipv64 | \u001b[0mSie haben einen DOMAIN Key gesetzt\r\n\u001b[36mddns-ipv64 | \u001b[0m\r\n\u001b[36mddns-ipv64 | \u001b[0m\r\n\u001b[36mddns-ipv64 | \u001b[0mSie haben eine DOMAIN gesetzt\r\n\u001b[36mddns-ipv64 | \u001b[0m\r\n\u001b[36mddns-ipv64 | \u001b[0mDeine DOMAIN demo-ipv64.ipv64.net\r\n"]
[38.891467, "o", "\u001b[36mddns-ipv64 | \u001b[0m\r\n"]
[38.892296, "o", "\u001b[36mddns-ipv64 | \u001b[0mDie Angaben sind richtig gesetzt : DOMAIN und DOMAIN KEY\r\n"]
[38.892983, "o", "\u001b[36mddns-ipv64 | \u001b[0m\r\n"]
[46.015311, "o", "\u001b[36mddns-ipv64 | \u001b[0m2022-10-29 07:13:00 Deine DOMAIN demo-ipv64.ipv64.net HAT DIE IP=188.34.202.141\r\n"]
[48.017625, "o", "\u001b[36mddns-ipv64 | \u001b[0m\r\n\u001b[36mddns-ipv64 | \u001b[0m2022-10-29 07:13:00 KEIN UPDATE - Aktuelle IP=188.34.202.141\r\n\u001b[36mddns-ipv64 | \u001b[0m\r\n"]
[54.300299, "o", "^C"]
[54.300963, "o", "Gracefully stopping... (press Ctrl+C again to force)\r\n"]
[54.401256, "o", "\u001b[1A\u001b[1B\u001b[0G\u001b[?25l[+] Running 0/0\r\n\u001b[37m ⠋ Container ddns-ipv64 Stopping 0.1s\r\n\u001b[0m\u001b[?25h"]
[54.456698, "o", "\u001b[1A\u001b[1A\u001b[0G\u001b[?25l\u001b[34m[+] Running 1/1\u001b[0m\r\n\u001b[34m ⠿ Container ddns-ipv64 Stopped 0.2s\r\n\u001b[0m\u001b[?25h"]
[54.457951, "o", "canceled"]
[54.458231, "o", "\r\n"]
[54.459596, "o", "\u001b[?2004h"]
[54.459825, "o", "root@debian-2gb-nbg1-1:~/docker-ddns-ipv64# "]
[54.929777, "o", "docker-compose up"]
[55.144134, "o", "\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\bnano docker-compose.yml"]
[55.562913, "o", "\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\u001b[4Pdocker-compose down"]
[56.156131, "o", "\r\n\u001b[?2004l\r"]
[56.260251, "o", "\u001b[1A\u001b[1B\u001b[0G\u001b[?25l[+] Running 2/0\r\n\u001b[34m ⠿ Container ddns-ipv64 Removed 0.0s\r\n\u001b[0m\u001b[34m ⠿ Network docker-ddns-ipv64_default Removed 0.1s\r\n\u001b[0m\u001b[?25h"]
[56.260868, "o", "\u001b[?2004h"]
[56.261116, "o", "root@debian-2gb-nbg1-1:~/docker-ddns-ipv64# "]
[57.509694, "o", "\u001b[?2004l\r\r\nexit\r\n"]

Binary file not shown.

Before

Width:  |  Height:  |  Size: 130 KiB

View File

@@ -4,7 +4,7 @@ services:
# build:
# dockerfile: ./Dockerfile
image: alcapone1933/ddns-ipv64:latest
# image: alcapone1933/ddns-ipv64:v0.1.4
# image: alcapone1933/ddns-ipv64:v0.1.1
container_name: ddns-ipv64
restart: always
# volumes:
@@ -18,11 +18,8 @@ services:
# - "DOMAIN_PRAEFIX_YES=yes"
# ⚠️ Hier bitte nur ein DOMAIN PRAEFIX (subdomain) eintragen (ersetzen) ⚠️
# - "DOMAIN_PRAEFIX=ddns"
# - "IP_CHECK=Yes"
- "DOMAIN_KEY=1234567890abcdefghijklmn"
# - "SHOUTRRR_URL="
# - "SHOUTRRR_SKIP_TEST=no"
# - "NAME_SERVER=ns1.ipv64.net"
# volumes:
# data:
# name: ddns-ipv64_data