看到很多CloudXNS的DDNS客户端都是基于官方的Python SDK做的,于是根据官方的API文档撸了个bash下的一个轮子。
修改自原脚本,使用wget
代替curl
,因为有些 openwrt 路由器固件没有curl
和opkg
,还没有外置储存,无法挂载 opt 环境
另有一个已经测试可以给梅林固件用的脚本
参考:https://github.com/RMerl/asuswrt-merlin/wiki/Custom-DDNS
- 系统需支持curl命令,适合在闪存容量小,不能安装Python的路由器上运行。
- 在CloudXNS申请API Key,只需要在脚本中填写API Key,不需要提供账号密码,绿色安全。
- 不像DNSPod那样繁琐,需要先通过客户端查询域名ID、记录ID,只需提供需要DDNS的域名。
-
wget https://raw.githubusercontent.com/YKilin/CloudXNS-DDNS/master/CloudXNS-ddns.sh
-
在CloudXNS获得API Key后,将API Key、Secret Key填入脚本。
-
在CloudXNS添加需要DDNS的域名,并在脚本填写该域名。
domain="www.cloudxns.net."
-
设置好具有公网IP的网卡
interface="" #留空时,CloudXNS则会自动获取你的公网IP interface="ppp0" #tomato路由器使用ppp0作为网卡名 interface="pppoe-wan1" #OpenWRT路由器使用wan1作为网卡名
-
执行
sh CloudXNS-ddns.sh
。
在当WAN联机时事件中添加本脚本。
- 方法1:安装ddns-scripts和luci-app-ddns,在DDNS服务下添加本脚本。
- 方法2:将99-ddns放至/etc/hotplug.d/iface下,网卡启动时将自动运行本脚本,注意修改脚本中网卡名和你放置脚本的路径。
GNU General Public License v3.0
- https://www.cloudxns.net/Support/detail/id/1361.html -- CloudXNS 官方 API 文档
- http://git.oschina.net/zhengwei804/DNSPodForNET -- DNSPodForNET