31 lines
832 B
Bash
Executable File
31 lines
832 B
Bash
Executable File
#!/bin/sh
|
|
|
|
SERVER="dyn.paphosting.net"
|
|
PORT="53"
|
|
TSIG="bWFyaWVsbGU="
|
|
INTERFACE_A="eth0"
|
|
INTERFACE_AAAA="eth0"
|
|
|
|
# Generated variables follow:
|
|
UPDATE_FILE="/tmp/go-dyndns-nsupdate.$$"
|
|
A_RECORD=$(ip addr show $INTERFACE_A | awk '/inet .*scope global/ { ip=$2; gsub("/.*","", ip); } END { print ip}')
|
|
AAAA_RECORD=$(ip addr show $INTERFACE_AAAA | awk '/inet6 .*scope global/ { ip=$2; gsub("/.*","", ip); } END { print ip}')
|
|
HOSTNAME_SHORT=$(hostname -s)
|
|
|
|
cat << EOL > $UPDATE_FILE
|
|
server $SERVER $PORT
|
|
key key bWFyaWVsbGU=
|
|
; debug
|
|
zone dyn.ipng.nl.
|
|
; update delete ${HOSTNAME_SHORT}.dyn.ipng.nl. A
|
|
; update delete ${HOSTNAME_SHORT}.dyn.ipng.nl. AAAA
|
|
update add ${HOSTNAME_SHORT}.dyn.ipng.nl. 120 A ${A_RECORD}
|
|
update add ${HOSTNAME_SHORT}.dyn.ipng.nl. 120 AAAA ${AAAA_RECORD}
|
|
show
|
|
send
|
|
EOL
|
|
|
|
nsupdate ${UPDATE_FILE}
|
|
rm -f ${UPDATE_FILE}
|
|
|