DynDNS CURL

Programmet cURL är ett verktyg för UNIX som kan användas för att uppdatera IP-adressen dynamiskt. Programmet kan användas på följande sätt (radbrytningar som bör tas bort är markerade med \)

curl -s --user 'användarnamn:lösenord' \
"https://dyndns.loopia.se? \
hostname=dindomän.se&myip=dinipadress"

Notera att ovanstående kommando skrivs på en rad. Vi har färdigställt ett enkelt skript som dessutom tar reda på IP-adressen åt dig.

#!/bin/sh
curl -s --user 'användarnamn:lösenord' \
"https://dyndns.loopia.se?\
hostname=dindomän.se&myip="`curl -s  dyndns.loopia.se/checkip | 
\ sed 's/^.*: \([^<]*\).*$/\1/'`; echo

Notera att ovanstående kommando skrivs på en rad. Placera innehållet i en fil med namnet loopiadns.sh och sätt rättigheterna på filen med chmod +x loopiadns.sh. Ett exempel på detta finns att ladda ned här.

Du kan också använda nedanstående exempel för att använda dig utav cURL-metoden för en Asus-router med Asus-WRT (Tack till vår kund Peter för detta exempel):

#!/bin/sh
# https://support.loopia.com/wiki/CURL
# Add your credentials here
cred=username:password
hostname=domain.com
# Don't edit anything beyond this point
burl=https://dyndns.loopia.se
wanip=$(curl -s ipecho.net/plain)
url="$burl"'?hostname='"$hostname"'&'myip="$wanip&wildcard=NOCHG"

loopia_dns_update() {
  CMD=$(curl -s --user "$cred" "$url")
  logger "ddns status: $CMD"
  case "$CMD" in
    good*|nochg*) /sbin/ddns_custom_updated 1 ;;
    abuse) /sbin/ddns_custom_updated 1 ;;
    *) /sbin/ddns_custom_updated 0 ;;
  esac
}
loopia_dns_update
exit 0
Was this article helpful?

Related Articles