#!/bin/bash # Konfiguration DYNDNS_ACCOUNT="356205" PASSWORD="yaytVupov9" HOSTNAME="cloud.schoedl.bayern" UPDATE_URL_BASE="https://${DYNDNS_ACCOUNT}:${PASSWORD}@carol.selfhost.de/nic/update?hostname=${HOSTNAME}" # Pfade zu den Dateien, in denen die letzte bekannte IP gespeichert wird LAST_IP4_FILE="./last_ip4.txt" LAST_IP6_FILE="./last_ip6.txt" # --- IPv4 Prüfung und Update --- CURRENT_IP4=$(curl -s -4 icanhazip.com) LAST_IP4="" if [ -f "$LAST_IP4_FILE" ]; then LAST_IP4=$(cat "$LAST_IP4_FILE") fi if [ -n "$CURRENT_IP4" ] && [ "$CURRENT_IP4" != "$LAST_IP4" ]; then echo "IPv4-Adresse hat sich geändert ($LAST_IP4 -> $CURRENT_IP4). Update wird gesendet." curl -s "${UPDATE_URL_BASE}&myip=${CURRENT_IP4}" echo "$CURRENT_IP4" > "$LAST_IP4_FILE" else echo "IPv4-Adresse unverändert oder Fehler bei der Ermittlung. Kein Update nötig." fi # --- IPv6 Prüfung und Update --- CURRENT_IP6=$(curl -s -6 icanhazip.com) LAST_IP6="" if [ -f "$LAST_IP6_FILE" ]; then LAST_IP6=$(cat "$LAST_IP6_FILE") fi if [ -n "$CURRENT_IP6" ] && [ "$CURRENT_IP6" != "$LAST_IP6" ]; then echo "IPv6-Adresse hat sich geändert ($LAST_IP6 -> $CURRENT_IP6). Update wird gesendet." curl -s "${UPDATE_URL_BASE}&myip6=${CURRENT_IP6}" echo "$CURRENT_IP6" > "$LAST_IP6_FILE" else echo "IPv6-Adresse unverändert oder Fehler bei der Ermittlung. Kein Update nötig." fi echo "Skriptlauf abgeschlossen."