刚才配置树梅派的 ddns 配置了半天发现它系统里面的 inadyn 版本太老。其它感觉又太大。无奈自己写了个脚本,分享给大家。我用的是 dns.he.net ,五年前就只有它支持 ipv6,改 curl 后面的参数就可以适应其它 ddns 了。
*/10 * * * * /opt/dns.he.sh 加入 crotab 10 分钟运行一次
#!/bin/bash
export LastIP=`/bin/cat /var/log/ipv6addr`
export NowIP=`/bin/ip -o -6 addr show scope global | /bin/sed -e's/^.*inet6 \([^ ]*\)\/.*$/\1/;t;d'`
if [ -z "$NowIP" ]
then
echo `date` 没有 IPV6 !退出!>> /var/log/dns.he.log
exit
fi
if [ "$NowIP" != "$LastIP" ]
then
echo -n "$NowIP" > /var/log/ipv6addr
echo `date` "IP 改变,更新 Dns..." >> /var/log/dns.he.log
echo -n `date` [ >> /var/log/dns.he.log
#下面一行代码是更新 dns,请根据自己情况修改
curl -6 -k "https://dyn.dns.he.net/nic/update" -d "hostname=你的域名" -d "password=你的密码" >> /var/log/dns.he.log
echo ] >>/var/log/dns.he.log
else
echo `date` "IP 没有变化..." >> /var/log/dns.he.log
fi