segfault 发表于 2022-7-28 19:01:59

freedns DDNS shell脚本

(本文首发于 https://www.right.com.cn/forum/thread-8246545-1-1.html )

这个脚本我是跑在HS8145V自带的OpenWrt里的。我把它加进了OpenWrt的/etc/rc.local,然后就可以开机自启。

脚本代码在这里,可以右键点raw另存为:https://gist.github.com/segfault ... 05ebe6da638d3669abd
然后我也发到附件里了。

这样就可以用 freedns.afraid.org 提供的服务。(而且OpenWrt还可以装支持HTTPS的wget来走HTTPS更新DDNS)
使用dynamic update interface (version 2),这样还可以支持IPv6;
认证方式选Randomized Update Token。

然后直接把更新DDNS的请求网址加进/root/ddns_urls.txt里,很简单就是每行一个,比如一个更新IPv4一个更新IPv6。

脚本依赖光猫自己的DDNS功能来被通知拨号成功。
(实际发现,接到光猫的DDNS更新请求时网可能还没通,需要等几秒才能通,所以我还加了一个等待,等网通了再更新)

在光猫(“快速装维”版设置界面)的DDNS设置里:
选择“服务提供商”为“no-ip”,
“服务提供商主机”为“127.0.0.1”,
“服务端口”为“12380”。
WAN名称一定也要选对。
光猫DDNS设置里的“域名”和“用户名”“密码”都没有意义,可以随便填一些数值。

日志在/tmp/freednsv2/log.txt里。


wqm210 发表于 2022-7-30 13:39:11

谢谢楼主~

zhang260gt 发表于 2022-8-2 10:23:24

WAP(Dopra Linux) # tail: can't open '/tmp/freednsv2/log.txt': No such file or directory
tail: no files
./ddns.sh: line 59: nslookup: not found
./ddns.sh: line 59: nslookup: not found
./ddns.sh: line 59: nslookup: not found
...................

zhang260gt 发表于 2022-8-2 10:39:10

WAP(Dopra Linux) # ./ddns.sh
WAP(Dopra Linux) #
WAP(Dopra Linux) # ./ddns.sh: line 59: nslookup: not found
./ddns.sh: line 59: nslookup: not found
./ddns.sh: line 59: nslookup: not found
./ddns.sh: line 59: nslookup: not found
./ddns.sh: line 59: nslookup: not found
./ddns.sh: line 59: nslookup: not found
............

zhang260gt 发表于 2022-8-3 03:49:42

WAP>display ddns info
ERROR::Interface does not exist

811431394 发表于 2022-8-18 00:52:10

谢谢分享

zhang260gt 发表于 2022-8-18 03:36:20

谁成功了言语声
2022.8.18

811431394 发表于 2022-9-17 01:00:34

谢谢分享
页: [1]
查看完整版本: freedns DDNS shell脚本