From 3bed4c4bbc786919572c679c650f98149bcf3dcc Mon Sep 17 00:00:00 2001 From: root Date: Mon, 29 Jun 2026 12:16:56 +0100 Subject: [PATCH] always uses @ for subdomain when on root --- dyndns.sh | 17 ++++++++++------- 1 file changed, 10 insertions(+), 7 deletions(-) diff --git a/dyndns.sh b/dyndns.sh index 127629c..fcce427 100755 --- a/dyndns.sh +++ b/dyndns.sh @@ -31,14 +31,17 @@ SUBDOMAIN=`echo $DOMAIN | sed "s/[^.]\+\.[^.]\+$//g"` if [ -z "$SUBDOMAIN" ]; then SUBDOMAIN="@" ROOT_DOMAIN=$DOMAIN +elif [ "$SUBDOMAIN" = "@." ]; then + SUBDOMAIN="@" + ROOT_DOMAIN=`echo $DOMAIN | sed "s/^@.//"` else SUBDOMAIN=`echo $SUBDOMAIN | sed "s/\.$//g"` ROOT_DOMAIN=`echo $DOMAIN | sed "s/^${SUBDOMAIN}\.//g"` fi REPEAT_CHECK_DIR=${CACHE_DIR} -REPEAT_CHECK_A=$REPEAT_CHECK_DIR/REPEAT_CHECK_${DOMAIN}_A -REPEAT_CHECK_AAAA=$REPEAT_CHECK_DIR/REPEAT_CHECK_${DOMAIN}_AAAA +REPEAT_CHECK_A=$REPEAT_CHECK_DIR/REPEAT_CHECK_${SUBDOMAIN}.${ROOT_DOMAIN}_A +REPEAT_CHECK_AAAA=$REPEAT_CHECK_DIR/REPEAT_CHECK_${SUBDOMAIN}.${ROOT_DOMAIN}_AAAA REPEAT_CHECK="$([ $ip_version = 4 ] && echo $REPEAT_CHECK_A || echo $REPEAT_CHECK_AAAA)" get_a_record_ids() { @@ -90,7 +93,7 @@ add_aaaa_record() { } delete_record_by_id() { - echo deleting existing A/AAAA record for $DOMAIN + echo deleting existing A/AAAA record for ${SUBDOMAIN}.${ROOT_DOMAIN} curl -X DELETE \ -H "Content-Type: application/json" \ -H "Authorization: Bearer $DIGITALOCEAN_TOKEN" \ @@ -104,10 +107,10 @@ replace_a_records() { new_record_id=`add_a_record` if [ "$new_record_id" = "null" ] ; then - echo unable to add new A record for $DOMAIN with value: $IP + echo unable to add new A record for ${SUBDOMAIN}.${ROOT_DOMAIN} with value: $IP return 1 fi - echo added new A record for $DOMAIN with value: $IP + echo added new A record for ${SUBDOMAIN}.${ROOT_DOMAIN} with value: $IP } @@ -118,10 +121,10 @@ replace_aaaa_records() { new_record_id=`add_aaaa_record` if [ "$new_record_id" = "null" ] ; then - echo unable to add new AAAA record for $DOMAIN with value: $IP + echo unable to add new AAAA record for ${SUBDOMAIN}.${ROOT_DOMAIN} with value: $IP return 1 fi - echo added new AAAA record for $DOMAIN with value: $IP + echo added new AAAA record for ${SUBDOMAIN}.${ROOT_DOMAIN} with value: $IP } replace_records() {