Hi there!
Is it possible to update a freedns.afraid.org AAAA record with the IP of the UTM External interface?
If yes: How?
This thread was automatically locked due to age.
freedns.afraid.org/.../update.php&address=1111:2222::ffff
#!/bin/sh
#FreeDNS updater script
INTERFACE=eth1
UPDATEURLBASE="freedns.afraid.org/.../update.php&address="
DOMAIN=""
IPV6REGEX="((([0-9A-Fa-f]{1,4}[[[[[[[[:)]]]]]]]]{7}(([0-9A-Fa-f]{1,4})|[[[[[[[[:)]]]]]]]])|(([0-9A-Fa-f]{1,4}[[[[[[[[:)]]]]]]]]{6}(:|((25[0-5]|2[0-4]\d|[01]?\d{1,2})(\.(25[0-5]|2[0-4]\d|[01]?\d{1,2})){3})|(:[0-9A-Fa-f]{1,4})))|(([0-9A-Fa-f]{1,4}[[[[[[[[:)]]]]]]]]{5}(([[[[[[[:(]]]]]]](25[0-5]|2[0-4]\d|[01]?\d{1,2})(\.(25[0-5]|2[0-4]\d|[01]?\d{1,2})){3})?)|((:[0-9A-Fa-f]{1,4}){1,2})))|(([0-9A-Fa-f]{1,4}[[[[[[[[:)]]]]]]]]{4}(:[0-9A-Fa-f]{1,4}){0,1}(([[[[[[[:(]]]]]]](25[0-5]|2[0-4]\d|[01]?\d{1,2})(\.(25[0-5]|2[0-4]\d|[01]?\d{1,2})){3})?)|((:[0-9A-Fa-f]{1,4}){1,2})))|(([0-9A-Fa-f]{1,4}[[[[[[[[:)]]]]]]]]{3}(:[0-9A-Fa-f]{1,4}){0,2}(([[[[[[[:(]]]]]]](25[0-5]|2[0-4]\d|[01]?\d{1,2})(\.(25[0-5]|2[0-4]\d|[01]?\d{1,2})){3})?)|((:[0-9A-Fa-f]{1,4}){1,2})))|(([0-9A-Fa-f]{1,4}[[[[[[[[:)]]]]]]]]{2}(:[0-9A-Fa-f]{1,4}){0,3}(([[[[[[[:(]]]]]]](25[0-5]|2[0-4]\d|[01]?\d{1,2})(\.(25[0-5]|2[0-4]\d|[01]?\d{1,2})){3})?)|((:[0-9A-Fa-f]{1,4}){1,2})))|(([0-9A-Fa-f]{1,4}[[[[[[[[:)]]]]]]]](:[0-9A-Fa-f]{1,4}){0,4}(([[[[[[[:(]]]]]]](25[0-5]|2[0-4]\d|[01]?\d{1,2})(\.(25[0-5]|2[0-4]\d|[01]?\d{1,2})){3})?)|((:[0-9A-Fa-f]{1,4}){1,2})))|([[[[[[[:(]]]]]]]:[0-9A-Fa-f]{1,4}){0,5}(([[[[[[[:(]]]]]]](25[0-5]|2[0-4]\d|[01]?\d{1,2})(\.(25[0-5]|2[0-4]\d|[01]?\d{1,2})){3})?)|((:[0-9A-Fa-f]{1,4}){1,2})))|(((25[0-5]|2[0-4]\d|[01]?\d{1,2})(\.(25[0-5]|2[0-4]\d|[01]?\d{1,2})){3})))(%.+)?"
registered=$(nslookup -q=AAAA $DOMAIN|grep $DOMAIN|grep AAAA|egrep -i -o $IPV6REGEX)
current=$(ip -f inet6 addr show $INTERFACE|egrep -i -o "inet6.*scope global dynamic"|egrep -i -o $IPV6REGEX)
logger $0: "Running FreeDNS IPv6 Updater Script for hostname $DOMAIN..."
logger $0: "Current IPv6 of interface $INTERFACE is $current"
if [ "$current" != "$registered" ]; then
logger $0: "This doesn't match the registered IPv6 address ($registered). Calling update URL..."
updateurl=$UPDATEURLBASE$current
wget -q -O /dev/null $updateurl
logger $0: "Done."
else
logger $0: "This matches the registered IPv6 address. Doing nothing."
fi
freedns.afraid.org/.../update.php&address=1111:2222::ffff
#!/bin/sh
#FreeDNS updater script
INTERFACE=eth1
UPDATEURLBASE="freedns.afraid.org/.../update.php&address="
DOMAIN=""
IPV6REGEX="((([0-9A-Fa-f]{1,4}[[[[[[[[:)]]]]]]]]{7}(([0-9A-Fa-f]{1,4})|[[[[[[[[:)]]]]]]]])|(([0-9A-Fa-f]{1,4}[[[[[[[[:)]]]]]]]]{6}(:|((25[0-5]|2[0-4]\d|[01]?\d{1,2})(\.(25[0-5]|2[0-4]\d|[01]?\d{1,2})){3})|(:[0-9A-Fa-f]{1,4})))|(([0-9A-Fa-f]{1,4}[[[[[[[[:)]]]]]]]]{5}(([[[[[[[:(]]]]]]](25[0-5]|2[0-4]\d|[01]?\d{1,2})(\.(25[0-5]|2[0-4]\d|[01]?\d{1,2})){3})?)|((:[0-9A-Fa-f]{1,4}){1,2})))|(([0-9A-Fa-f]{1,4}[[[[[[[[:)]]]]]]]]{4}(:[0-9A-Fa-f]{1,4}){0,1}(([[[[[[[:(]]]]]]](25[0-5]|2[0-4]\d|[01]?\d{1,2})(\.(25[0-5]|2[0-4]\d|[01]?\d{1,2})){3})?)|((:[0-9A-Fa-f]{1,4}){1,2})))|(([0-9A-Fa-f]{1,4}[[[[[[[[:)]]]]]]]]{3}(:[0-9A-Fa-f]{1,4}){0,2}(([[[[[[[:(]]]]]]](25[0-5]|2[0-4]\d|[01]?\d{1,2})(\.(25[0-5]|2[0-4]\d|[01]?\d{1,2})){3})?)|((:[0-9A-Fa-f]{1,4}){1,2})))|(([0-9A-Fa-f]{1,4}[[[[[[[[:)]]]]]]]]{2}(:[0-9A-Fa-f]{1,4}){0,3}(([[[[[[[:(]]]]]]](25[0-5]|2[0-4]\d|[01]?\d{1,2})(\.(25[0-5]|2[0-4]\d|[01]?\d{1,2})){3})?)|((:[0-9A-Fa-f]{1,4}){1,2})))|(([0-9A-Fa-f]{1,4}[[[[[[[[:)]]]]]]]](:[0-9A-Fa-f]{1,4}){0,4}(([[[[[[[:(]]]]]]](25[0-5]|2[0-4]\d|[01]?\d{1,2})(\.(25[0-5]|2[0-4]\d|[01]?\d{1,2})){3})?)|((:[0-9A-Fa-f]{1,4}){1,2})))|([[[[[[[:(]]]]]]]:[0-9A-Fa-f]{1,4}){0,5}(([[[[[[[:(]]]]]]](25[0-5]|2[0-4]\d|[01]?\d{1,2})(\.(25[0-5]|2[0-4]\d|[01]?\d{1,2})){3})?)|((:[0-9A-Fa-f]{1,4}){1,2})))|(((25[0-5]|2[0-4]\d|[01]?\d{1,2})(\.(25[0-5]|2[0-4]\d|[01]?\d{1,2})){3})))(%.+)?"
registered=$(nslookup -q=AAAA $DOMAIN|grep $DOMAIN|grep AAAA|egrep -i -o $IPV6REGEX)
current=$(ip -f inet6 addr show $INTERFACE|egrep -i -o "inet6.*scope global dynamic"|egrep -i -o $IPV6REGEX)
logger $0: "Running FreeDNS IPv6 Updater Script for hostname $DOMAIN..."
logger $0: "Current IPv6 of interface $INTERFACE is $current"
if [ "$current" != "$registered" ]; then
logger $0: "This doesn't match the registered IPv6 address ($registered). Calling update URL..."
updateurl=$UPDATEURLBASE$current
wget -q -O /dev/null $updateurl
logger $0: "Done."
else
logger $0: "This matches the registered IPv6 address. Doing nothing."
fi