
ddns-go这款开源动态域名解析工具真心好用!它能帮我们轻松搞定动态IP绑定域名的麻烦事,特别适合家里用NAS的小伙伴或者需要远程管理服务器的朋友。
这个用Go语言写的小工具,打包成Docker用起来超方便。支持阿里云、腾讯云这些国内大厂,连国外的Cloudflare、GoDaddy也能轻松对接。最棒的是有可视化网页配置界面,还有贴心的Webhook通知功能。下面我就带大家深入盘一盘它的技术细节和使用技巧。
打开代码仓库你会发现作者是个整理狂,目录排得整整齐齐:/ddns-go
├── config/ ← 配置管家在这里
├── dns/ → 各家DNS服务商的对接秘籍
├── util/ ☆ 实用工具百宝箱
├── web/ 🌐 可视化操作界面
└── ... (其他重要文件)
几个核心模块值得细说:
service库搞定多平台服务安装yaml.v3处理配置得心应手带你看迭代路线:
整理了个表格方便大家比较:
服务商 | IPv4/v6支持 | 使用小贴士 |
|---|---|---|
阿里云 | ✔️ | AccessKey记得开权限 |
Cloudflare | ✔️ | API Token要用区域级别的 |
华为云 | ✔️ | 项目ID别填错地方了 |
GoDaddy | ✔️ | 密钥在开发者设置里找 |
🛑 注意:像.tk/.cf这些免费域名可能在Cloudflare上没法用API改,得手动操作
访问http://你的IP:9876就能看到清爽的配置页面,不过要提醒下: ⚠️ 默认没有HTTPS!建议用Nginx做个反向代理,教程在讨论区584楼有详细步骤
配置示例(拿方糖推送举例):webhook:
启用: 是
URL: "https://sctapi.ftqq.com/你的密钥.send?title=IP又变啦&desp=新地址是#{ipv4Addr}"
实测发现:支持变量替换超方便,但要是网络抽风可能会通知失败,建议自己加个重试机制
# 1. 拉取镜像
docker pull ghcr.io/jeessy2/ddns-go
# 2. 启动容器(配置文件存在/opt/ddns-go)
docker run -d --name ddns-go --restart=always \
--net=host -v /opt/ddns-go:/root ghcr.io/jeessy2/ddns-go
# 3. 浏览器访问 http://你的服务器IP:9876
docker exec ddns-go ddns-go -resetPassword 你的新密码
--net=host参数使用体验:用了大半年确实省心,但这两点希望改进:
给开发者的建议:
总之这是个居家旅行必备良品,Github星标值得一点!遇到问题记得先翻官方文档,大部分常见问题都有解答。

https://github.com/jeessy2/ddns-go