27 Commits

Author SHA1 Message Date
alcapone1933
7ec1bd7ee2 update 2024-04-12 00:23:13 +02:00
alcapone1933
01f657f6eb Merge pull request 'v0.1.4' (#14) from development into master 2024-03-29 13:17:26 +01:00
alcapone1933
aa25108b5d v0.1.4 2024-03-29 13:13:22 +01:00
alcapone1933
4a6817a290 SHOUTRRR_SKIP_TEST 2024-03-29 13:02:18 +01:00
alcapone1933
81b8ae07eb Merge branch 'development' 2023-10-09 23:12:07 +02:00
alcapone1933
4d51b4e43f v0.1.3 2023-10-07 12:33:31 +02:00
alcapone1933
fa232af923 v0.1.3 2023-10-07 11:41:51 +02:00
alcapone1933
ebe1442b15 dev-v0.1.3 2023-10-07 10:38:35 +02:00
alcapone1933
48122dc045 v0.1.2 2023-04-11 19:25:56 +02:00
alcapone1933
d222704306 v0.1.2 2023-04-11 19:21:56 +02:00
alcapone1933
9efddb5d50 Merge pull request 'v0.1.2' (#10) from development into master
v0.1.2
2023-04-11 19:02:39 +02:00
alcapone1933
1c08c983aa v0.1.2 2023-04-11 18:56:11 +02:00
alcapone1933
d879a192d6 update 2023-03-06 19:03:20 +01:00
alcapone1933
84a2b80e7c update 2023-03-06 19:02:46 +01:00
alcapone1933
7ad42db5bd „README.md“ ändern 2023-03-06 18:55:50 +01:00
alcapone1933
b115ab16b4 „README.md“ ändern 2023-03-06 18:54:58 +01:00
alcapone1933
8335b0715a demo Shoutrrr 2023-01-08 18:50:35 +01:00
alcapone1933
d637666032 demo Shoutrrr 2023-01-08 18:49:04 +01:00
alcapone1933
f7516fb34b Merge pull request 'demo Shoutrrr' (#9) from development into master 2023-01-08 18:47:46 +01:00
alcapone1933
7b739d1563 demo shoutrrr 2023-01-08 18:39:23 +01:00
alcapone1933
6919e87ac3 demo shoutrrr 2023-01-08 18:33:12 +01:00
alcapone1933
4c795f3939 update 2023-01-03 06:36:44 +01:00
alcapone1933
ef97a43fae update 2023-01-03 06:36:24 +01:00
alcapone1933
8a12e1c920 update 2023-01-03 03:41:47 +01:00
alcapone1933
98099d10bd update 2023-01-03 03:40:39 +01:00
alcapone1933
1514a2d362 update 2023-01-01 12:08:16 +01:00
alcapone1933
cbffb2c88a update 2023-01-01 12:07:02 +01:00
15 changed files with 189 additions and 346 deletions

View File

@@ -18,7 +18,7 @@ trigger:
event: event:
- custom - custom
- push - push
- pull_request # - pull_request
--- ---
kind: pipeline kind: pipeline
@@ -37,7 +37,7 @@ steps:
repo: alcapone1933/ddns-ipv64 repo: alcapone1933/ddns-ipv64
# tags: latest # tags: latest
auto_tag: true auto_tag: true
auto_tag_suffix: v0.1.1 auto_tag_suffix: v0.1.4
trigger: trigger:
branch: 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.created="$(date +%Y-%m-%d\ %H:%M)" \
org.opencontainers.image.authors="alcapone1933 <alcapone1933@cosanostra-cloud.de>" \ org.opencontainers.image.authors="alcapone1933 <alcapone1933@cosanostra-cloud.de>" \
org.opencontainers.image.url="https://hub.docker.com/r/alcapone1933/ddns-ipv64" \ org.opencontainers.image.url="https://hub.docker.com/r/alcapone1933/ddns-ipv64" \
org.opencontainers.image.version="v0.1.1" \ org.opencontainers.image.version="v0.1.4" \
org.opencontainers.image.ref.name="alcapone1933/ddns-ipv64" \ org.opencontainers.image.ref.name="alcapone1933/ddns-ipv64" \
org.opencontainers.image.title="DDNS Updater ipv64.net" \ org.opencontainers.image.title="DDNS Updater ipv64.net" \
org.opencontainers.image.description="Community DDNS Updater fuer ipv64.net" org.opencontainers.image.description="Community DDNS Updater fuer ipv64.net"
@@ -12,9 +12,12 @@ LABEL maintainer="alcapone1933 <alcapone1933@cosanostra-cloud.de>" \
ENV TZ=Europe/Berlin \ ENV TZ=Europe/Berlin \
CRON_TIME="*/15 * * * *" \ CRON_TIME="*/15 * * * *" \
CRON_TIME_DIG="*/30 * * * *" \ CRON_TIME_DIG="*/30 * * * *" \
VERSION="v0.1.1" \ VERSION="v0.1.4" \
CURL_USER_AGENT="docker-ddns-ipv64/version=v0.1.1 github.com/alcapone1933/docker-ddns-ipv64" \ CURL_USER_AGENT="docker-ddns-ipv64/version=v0.1.4 github.com/alcapone1933/docker-ddns-ipv64" \
SHOUTRRR_URL="" SHOUTRRR_URL="" \
SHOUTRRR_SKIP_TEST="no" \
IP_CHECK="yes" \
NAME_SERVER="ns1.ipv64.net"
RUN apk add --update --no-cache tzdata curl bash tini bind-tools jq && \ RUN apk add --update --no-cache tzdata curl bash tini bind-tools jq && \
rm -rf /var/cache/apk/* rm -rf /var/cache/apk/*
@@ -24,9 +27,9 @@ RUN ln -snf /usr/share/zoneinfo/$TZ /etc/localtime && echo $TZ > /etc/timezone &
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 cd /data && chmod +x *.sh && mv /data/entrypoint.sh /usr/local/bin/entrypoint.sh && \ 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 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
# VOLUME [ "/data" ] # VOLUME [ "/data" ]
WORKDIR /data
ENTRYPOINT ["/sbin/tini", "--", "/usr/local/bin/entrypoint.sh"] 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=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 # HEALTHCHECK --interval=5s --timeout=30s --start-period=5s --retries=2 CMD /usr/local/bin/healthcheck.sh

View File

@@ -1,6 +1,6 @@
MIT License MIT License
Copyright (c) 2022 alcapone1933 Copyright (c) 2023 alcapone1933
Permission is hereby granted, free of charge, to any person obtaining a copy Permission is hereby granted, free of charge, to any person obtaining a copy
of this software and associated documentation files (the "Software"), to deal 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 AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, 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 OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
SOFTWARE. SOFTWARE.

View File

@@ -81,6 +81,9 @@ docker run -d \
"⚠️ Hier bitte nur ein DOMAIN PRAEFIX (subdomain) eintragen (ersetzen) ⚠️" "⚠️ Hier bitte nur ein DOMAIN PRAEFIX (subdomain) eintragen (ersetzen) ⚠️"
-e "DOMAIN_PRAEFIX=ddns" \ -e "DOMAIN_PRAEFIX=ddns" \
-e "SHOUTRRR_URL=" \ -e "SHOUTRRR_URL=" \
-e "SHOUTRRR_SKIP_TEST=no" \
-e "NAME_SERVER=ns1.ipv64.net" \
``` ```
## Docker Compose ## Docker Compose
@@ -103,6 +106,8 @@ services:
# - "DOMAIN_PRAEFIX=ddns" # - "DOMAIN_PRAEFIX=ddns"
- "DOMAIN_KEY=1234567890abcdefghijklmn" - "DOMAIN_KEY=1234567890abcdefghijklmn"
# - "SHOUTRRR_URL=" # - "SHOUTRRR_URL="
# - "SHOUTRRR_SKIP_TEST=no"
# - "NAME_SERVER=ns1.ipv64.net"
``` ```
&nbsp; &nbsp;
@@ -128,9 +133,12 @@ services:
| DOMAIN KEY: DEIN DOMAIN KEY bzw. DynDNS Updatehash zu finden unter https://ipv64.net/dyndns.php | DOMAIN_KEY | ------------------ | 1234567890abcdefghijklmn | | 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 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 | | 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 | | DOMAIN PRAEFIX YES: Damit wird das Domain PRAEFIX aktiv genutzt | DOMAIN_PRAEFIX_YES | no | yes (yes oder no) |
| DEIN DOMAIN PRAEFIX (subdomain) : ⚠️ Nur ein Praefix verwenden ⚠️ z.b. ddns | DOMAIN_PRAEFIX | ------------------ | ddns | | 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 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 |
* * * * * *
@@ -144,7 +152,7 @@ So könnte die Nachricht ausehen.
```txt ```txt
Betreff: DDNS IPV64 IP UPDATE Betreff: DDNS IPV64 IP UPDATE
# Die Nachricht wird fest vom Script # Die Nachricht wird fest vom Script erstellt.
Nachricht: DOCKER DDNS UPDATER IPV64.NET - IP UPDATE !!! Nachricht: DOCKER DDNS UPDATER IPV64.NET - IP UPDATE !!!
DATUM UPDATE !!! DATUM UPDATE !!!
Update IP=IP - Alte-IP=IP Update IP=IP - Alte-IP=IP
@@ -174,13 +182,50 @@ Das sind Beispiele für Shoutrrr als Benachrichtigungsdienst, für weitere Servi
| Service Name | URL Beispiel (Beispiel text) | | Service Name | URL Beispiel (Beispiel text) |
| ------------ | ----------------------------------------------------------------------------------------------------------------------------- | | ------------ | ----------------------------------------------------------------------------------------------------------------------------- |
| gotify | `gotify://domain.de/123456abc/?title=DDNS IPV64 IP UPDATE&priority=5` | | gotify | `gotify://domain.de/123456abc/?title=DDNS+IPV64+IP+UPDATE&priority=5` |
| discord | `discord://123456abc@555555555555555?title=DDNS IPV64 IP UPDATE` | | discord | `discord://123456abc@555555555555555?title=DDNS+IPV64+IP+UPDATE` |
| telegram | `telegram://1111111111:123456abc@telegram/?chats=5555555555&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` | | 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>
&nbsp; &nbsp;
## DEMO ## DEMO
<img src="demo/demo.gif" width="700" height="400"> <img src="demo/demo.gif" width="700" height="400">

View File

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

View File

@@ -1,11 +1,13 @@
#!/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 -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" 2>&1 > /dev/null; then
if ! curl -4sf --user-agent "${CURL_USER_AGENT}" "https://ipv64.net/ipcheck.php" 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 1 exit 1
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)"')
IP=$(curl -4sSL --user-agent "${CURL_USER_AGENT}" "https://ipv64.net/ipcheck.php?ipv4")
UPDIP=$(cat $PFAD/updip.txt) UPDIP=$(cat $PFAD/updip.txt)
sleep 1 sleep 1
@@ -33,11 +35,12 @@ function CHECK_A_DOMAIN() {
DATUM=$(date +%Y-%m-%d\ %H:%M:%S) DATUM=$(date +%Y-%m-%d\ %H:%M:%S)
UPDIP=$(cat $PFAD/updip.txt) 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_PRAEFIX}.${DOMAIN_IPV64} A @ns1.ipv64.net) 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})
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 @${NAME_SERVER}`"
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"
@@ -53,7 +56,7 @@ else
fi fi
# curl -4sSL https://ipv64.net/update.php?dkey=${DOMAIN_KEY}=${DOMAIN_IPV64}&praefix=${DOMAIN_PRAEFIX}&ip=<ipaddr>&ip6=<ip6addr>&output=min # curl -4sSL https://ipv64.net/update.php?dkey=${DOMAIN_KEY}=${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 @${NAME_SERVER}`"
fi fi
} }
CHECK_A_DOMAIN CHECK_A_DOMAIN

View File

@@ -1,12 +1,14 @@
#!/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 -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" 2>&1 > /dev/null; then
if ! curl -4sf --user-agent "${CURL_USER_AGENT}" "https://ipv64.net/ipcheck.php" 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 1 exit 1
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)
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)"')
IP=$(curl -4sSL --user-agent "${CURL_USER_AGENT}" "https://ipv64.net/ipcheck.php?ipv4")
UPDIP=$(cat $PFAD/updip.txt) UPDIP=$(cat $PFAD/updip.txt)
sleep 1 sleep 1
@@ -34,11 +36,12 @@ function CHECK_A_DOMAIN() {
DATUM=$(date +%Y-%m-%d\ %H:%M:%S) DATUM=$(date +%Y-%m-%d\ %H:%M:%S)
UPDIP=$(cat $PFAD/updip.txt) 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) IP=$(curl -4sSL --user-agent "${CURL_USER_AGENT}" "https://ipv64.net/ipcheck.php?ipv4")
DOMAIN_CHECK=$(dig +short ${DOMAIN_IPV64} A @${NAME_SERVER})
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 @${NAME_SERVER}`"
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"
@@ -54,7 +57,7 @@ else
fi fi
# curl -4sSL https://ipv64.net/update.php?dkey=${DOMAIN_KEY}&domain=${DOMAIN_IPV64}&ip=<ipaddr>&ip6=<ip6addr>&output=min # curl -4sSL https://ipv64.net/update.php?dkey=${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 @${NAME_SERVER}`"
fi fi
} }
CHECK_A_DOMAIN CHECK_A_DOMAIN

View File

@@ -2,16 +2,17 @@
PFAD="/data" PFAD="/data"
DATUM=$(date +%Y-%m-%d\ %H:%M:%S) DATUM=$(date +%Y-%m-%d\ %H:%M:%S)
# set -e # 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" 2>&1 > /dev/null; then
if ! curl -4sf --user-agent "${CURL_USER_AGENT}" "https://ipv64.net/ipcheck.php" 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"
STATUS="OK" STATUS="OK"
NAMESERVER_CHECK=$(dig +timeout=1 @ns1.ipv64.net 2> /dev/null) NAMESERVER_CHECK=$(dig +timeout=1 @${NAME_SERVER} 2> /dev/null)
echo "$NAMESERVER_CHECK" | grep -s -q "timed out" && { NAMESERVER_CHECK="Timeout" ; STATUS="FAIL" ; } echo "$NAMESERVER_CHECK" | grep -s -q "timed out" && { NAMESERVER_CHECK="Timeout" ; STATUS="FAIL" ; }
if [ "${STATUS}" = "FAIL" ] ; then if [ "${STATUS}" = "FAIL" ] ; then
echo "$DATUM FEHLER !!! - 404 NAMESERVER ns1.ipv64.net ist nicht ist nicht erreichbar. Sie haben kein Netzwerk oder Internetzugang" echo "$DATUM FEHLER !!! - 404 NAMESERVER ${NAME_SERVER} ist nicht ist nicht erreichbar. Sie haben kein Netzwerk oder Internetzugang"
echo "==============================================================================================" echo "=============================================================================================="
fi fi
if ! curl -4sf "https://google.net" 2>&1 > /dev/null; then if ! curl -4sf "https://google.de" 2>&1 > /dev/null; then
echo "$DATUM FEHLER !!! - 404 Sie haben kein Netzwerk oder Internetzugang oder die Webseite google.de ist nicht erreichbar" echo "$DATUM FEHLER !!! - 404 Sie haben kein Netzwerk oder Internetzugang oder die Webseite google.de ist nicht erreichbar"
echo "==============================================================================================" echo "=============================================================================================="
exit 1 exit 1
@@ -40,7 +41,8 @@ if ! curl -4sf --user-agent "${CURL_USER_AGENT}" "https://ipv64.net" 2>&1 > /dev
fi fi
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/update.php?howismyip" | jq -r 'to_entries[] | "\(.value)"')
IP=$(curl -4sSL --user-agent "${CURL_USER_AGENT}" "https://ipv64.net/ipcheck.php?ipv4")
UPDIP=$(cat $PFAD/updip.txt) UPDIP=$(cat $PFAD/updip.txt)
sleep 1 sleep 1
@@ -103,13 +105,14 @@ function CHECK_A_DOMAIN() {
DATUM=$(date +%Y-%m-%d\ %H:%M:%S) DATUM=$(date +%Y-%m-%d\ %H:%M:%S)
UPDIP=$(cat $PFAD/updip.txt) 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) IP=$(curl -4sSL --user-agent "${CURL_USER_AGENT}" "https://ipv64.net/ipcheck.php?ipv4")
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=$(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)
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 @${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 @ns1.ipv64.net`"; done 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
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"
@@ -128,8 +131,8 @@ else
echo "$IP" > $PFAD/updip.txt 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 # 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 @${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 @ns1.ipv64.net`"; done 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
else else
echo "$DATUM FEHLER !!! - UPDATE IP=$IP WURDE NICHT AN IPV64.NET GESENTET" 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") 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")
@@ -151,5 +154,11 @@ else
fi fi
fi fi
} }
CHECK_A_DOMAIN
if [[ "$IP_CHECK" =~ (YES|yes|Yes) ]] ; then
CHECK_A_DOMAIN
else
echo > /dev/null
fi
echo "==============================================================================================" echo "=============================================================================================="

View File

@@ -2,16 +2,17 @@
PFAD="/data" PFAD="/data"
DATUM=$(date +%Y-%m-%d\ %H:%M:%S) DATUM=$(date +%Y-%m-%d\ %H:%M:%S)
# set -e # 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" 2>&1 > /dev/null; then
if ! curl -4sf --user-agent "${CURL_USER_AGENT}" "https://ipv64.net/ipcheck.php" 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"
STATUS="OK" STATUS="OK"
NAMESERVER_CHECK=$(dig +timeout=1 @ns1.ipv64.net 2> /dev/null) NAMESERVER_CHECK=$(dig +timeout=1 @${NAME_SERVER} 2> /dev/null)
echo "$NAMESERVER_CHECK" | grep -s -q "timed out" && { NAMESERVER_CHECK="Timeout" ; STATUS="FAIL" ; } echo "$NAMESERVER_CHECK" | grep -s -q "timed out" && { NAMESERVER_CHECK="Timeout" ; STATUS="FAIL" ; }
if [ "${STATUS}" = "FAIL" ] ; then if [ "${STATUS}" = "FAIL" ] ; then
echo "$DATUM FEHLER !!! - 404 NAMESERVER ns1.ipv64.net ist nicht ist nicht erreichbar. Sie haben kein Netzwerk oder Internetzugang" echo "$DATUM FEHLER !!! - 404 NAMESERVER ${NAME_SERVER} ist nicht ist nicht erreichbar. Sie haben kein Netzwerk oder Internetzugang"
echo "==============================================================================================" echo "=============================================================================================="
fi fi
if ! curl -4sf "https://google.net" 2>&1 > /dev/null; then if ! curl -4sf "https://google.de" 2>&1 > /dev/null; then
echo "$DATUM FEHLER !!! - 404 Sie haben kein Netzwerk oder Internetzugang oder die Webseite google.de ist nicht erreichbar" echo "$DATUM FEHLER !!! - 404 Sie haben kein Netzwerk oder Internetzugang oder die Webseite google.de ist nicht erreichbar"
echo "==============================================================================================" echo "=============================================================================================="
exit 1 exit 1
@@ -41,7 +42,8 @@ if ! curl -4sf --user-agent "${CURL_USER_AGENT}" "https://ipv64.net" 2>&1 > /dev
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) # 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)"')
IP=$(curl -4sSL --user-agent "${CURL_USER_AGENT}" "https://ipv64.net/ipcheck.php?ipv4")
UPDIP=$(cat $PFAD/updip.txt) UPDIP=$(cat $PFAD/updip.txt)
sleep 1 sleep 1
@@ -104,13 +106,14 @@ function CHECK_A_DOMAIN() {
DATUM=$(date +%Y-%m-%d\ %H:%M:%S) DATUM=$(date +%Y-%m-%d\ %H:%M:%S)
UPDIP=$(cat $PFAD/updip.txt) 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) IP=$(curl -4sSL --user-agent "${CURL_USER_AGENT}" "https://ipv64.net/ipcheck.php?ipv4")
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=$(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)
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 @${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 @ns1.ipv64.net`"; done 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
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"
@@ -129,8 +132,8 @@ else
echo "$IP" > $PFAD/updip.txt echo "$IP" > $PFAD/updip.txt
# 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 @${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 @ns1.ipv64.net`"; done 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
else else
echo "$DATUM FEHLER !!! - UPDATE IP=$IP WURDE NICHT AN IPV64.NET GESENTET" 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") 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")
@@ -152,5 +155,11 @@ else
fi fi
fi fi
} }
CHECK_A_DOMAIN
if [[ "$IP_CHECK" =~ (YES|yes|Yes) ]] ; then
CHECK_A_DOMAIN
else
echo > /dev/null
fi
echo "==============================================================================================" echo "=============================================================================================="

View File

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

View File

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

View File

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

View File

@@ -1,257 +0,0 @@
{"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"]

BIN
demo/shoutrrr-demo.gif Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 130 KiB

View File

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