插件开源地址 https://github.com/Tencent-Cloud-Plugins/tencentcloud-openwrt-plugin-ddns

进入 openwrt 后台,进入 「系统」 -> 「软件包」 然后在 「下载并安装软件包」 的输入框里粘贴此 uri http://openwrt-tencentddns-1301800460.cos.ap-guangzhou.myqcloud.com/luci-app-tencentddns_0.1.0-1_all.ipk 然后点击确认,一般不出错的话,包含 luci 的 tencent ddns 就安装好了,刷新页面后如图所示

20220624214233然后就是配置了,可以参考下图

20220624221741我配置过程中遇到了这个错误: ERROR, Please Check Config/Time

这个问题是因为填错了 id 和 token。注意这个 「密钥ID」 和 「密钥Token」 的来源: https://console.dnspod.cn/account/token/token 是进入这个页面新建一个 「密钥」,使用其 ID 和 Token 填到 OpenWrt 插件设置中。可以看看这个 issue

20220624221644配置好了之后点击 「保存&应用」即可。

一开始运行想要尽快看到结果,可以设置检查时间为 1 分钟,等看到 update 成功的日志就可以去 dnspod.cn 的后台查看是否成功添加了这条 dns A 记录。

其实 ddns 的原理很简单,就是路由器定时检测它的 wan 接口的 public ip,然后定时的报告给 dns 服务商,报告给 dns 服务商就是新增或者更新 A 记录。一般是发一个 HTTP POST 请求,里面带上一些认证信息,就比如 id 和 token,然后 public ip,这条 A 记录的 主机等值,如果请求成功,那么这条 dns A 记录就被成功添加或更新。

运行一段时间后可以看到日志如下

2022-06-24 19:00:00 WAN-IP: 111.111.111.111
2022-06-24 19:00:00 DOMAIN-IP: 111.111.111.111
2022-06-24 19:00:00 IP dont need UPDATE...
2022-06-24 19:40:00 WAN-IP: 111.111.111.111
2022-06-24 19:40:00 DOMAIN-IP: 111.111.111.111
2022-06-24 19:40:00 IP dont need UPDATE...
2022-06-24 20:00:00 WAN-IP: 111.111.111.111
2022-06-24 20:00:00 DOMAIN-IP: 111.111.111.111
2022-06-24 20:00:00 IP dont need UPDATE...
2022-06-24 20:40:00 WAN-IP: 111.111.111.111
2022-06-24 20:40:00 DOMAIN-IP: 111.111.111.111
2022-06-24 20:40:00 IP dont need UPDATE...
2022-06-24 21:00:00 WAN-IP: 111.111.111.111
2022-06-24 21:00:00 DOMAIN-IP: 111.111.111.111
2022-06-24 21:00:00 IP dont need UPDATE...
2022-06-24 21:40:00 WAN-IP: 111.111.111.111
2022-06-24 21:40:00 DOMAIN-IP: 111.111.111.111
2022-06-24 21:40:00 IP dont need UPDATE...

ps: 111.111.111.111 是已经打码的 IP 地址