
https://goreportcard.com/badge/github.com/jeessy2/ddns-go/v6](https://goreportcard.com/report/github.com/jeessy2/ddns-go/v6)
中文 | https://github.com/jeessy2/ddns-go/blob/master/README_EN.md
自动获得你的公网 IPv4 或 IPv6 地址,并解析到对应的域名服务。
阿里云 阿里云 ESA 腾讯云 Dnspod Cloudflare 华为云 Callback 百度云 Porkbun GoDaddy Namecheap NameSilo Dynadot DNSLA 时代互联 Eranet Tnethk Gcore EdgeOne IBM NS1 Connect 雨云禁止从公网访问[!NOTE] 建议在启用公网访问时,使用 Nginx 等反向代理软件启用 HTTPS 访问,以保证安全性。https://github.com/jeessy2/ddns-go/wiki/FAQ
sudo ./ddns-go -s install.\ddns-go.exe -s installhttp://localhost:9876进行初始化配置sudo ./ddns-go -s uninstall.\ddns-go.exe -s uninstall-l 监听地址-f 同步间隔时间(秒)-cacheTimes 间隔N次与服务商比对-c 自定义配置文件路径-noweb 不启动web服务-skipVerify 跳过证书验证-dns 自定义 DNS 服务器-resetPassword 重置密码bash./ddns-go -s install -f 600 -c /Users/name/.ddns_go_config.yaml
bash./ddns-go -s install -f 10 -cacheTimes 180
bash./ddns-go -resetPassword 123456 ./ddns-go -resetPassword 123456 -c /Users/name/.ddns_go_config.yaml
挂载主机目录, 使用docker host模式。可把 /opt/ddns-go 替换为你主机任意目录, 配置文件为隐藏文件
bashdocker run -d --name ddns-go --restart=always --net=host -v /opt/ddns-go:/root jeessy/ddns-go
打开浏览器并访问http://Docker主机IP:9876进行初始化配置
[可选] 使用 ghcr.io 镜像
bashdocker run -d --name ddns-go --restart=always --net=host -v /opt/ddns-go:/root ghcr.io/jeessy2/ddns-go
[可选] 支持启动带参数 -l监听地址 -f间隔时间(秒)
bashdocker run -d --name ddns-go --restart=always --net=host -v /opt/ddns-go:/root jeessy/ddns-go -l :9877 -f 600
[可选] 不使用docker host模式
bashdocker run -d --name ddns-go --restart=always -p 9876:9876 -v /opt/ddns-go:/root jeessy/ddns-go
[可选] 重置密码
bashdocker exec ddns-go ./ddns-go -resetPassword 123456 docker restart ddns-go
--net=hostddns-go并下载jeessy/ddns-go -> 启动 -> 高级设置 -> 网络中勾选使用与 Docker Host 相同的网络,高级设置中勾选启动自动重新启动http://群晖IP:9876,修改你的配置,成功--net=host模式。参考 Docker中使用支持webhook, 域名更新成功或不成功时, 会回调填写的URL
支持的变量
| 变量名 | 说明 |
|---|---|
| #{ipv4Addr} | 新的IPv4地址 |
| #{ipv4Result} | IPv4地址更新结果: 未改变 失败 成功 |
| #{ipv4Domains} | IPv4的域名,多个以,分割 |
| #{ipv6Addr} | 新的IPv6地址 |
| #{ipv6Result} | IPv6地址更新结果: 未改变 失败 成功 |
| #{ipv6Domains} | IPv6的域名,多个以,分割 |
| #{timestamp} | 当前 UTC+0 时间戳(秒) |
如 RequestBody 为空则为 GET 请求,否则为 POST 请求
https://sctapi.ftqq.com/[SendKey].send?title=你的公网IP变了&desp=主人IPv4变了#{ipv4Addr},域名更新结果:#{ipv4Result}
https://api.day.app/[YOUR_KEY]/主人IPv4变了#{ipv4Addr},域名更新结果:#{ipv4Result}
自定义关键词, 输入的关键字必须包含在RequestBody的content中, 如:你的公网IP变了Webhook地址json{ "msgtype": "markdown", "markdown": { "title": "你的公网IP变了", "text": "#### 你的公网IP变了 \n - IPv4地址:#{ipv4Addr} \n - 域名更新结果:#{ipv4Result} \n" } }
自定义关键词, 输入的关键字必须包含在RequestBody的content中, 如:你的公网IP变了Webhook地址json{ "msg_type": "post", "content": { "post": { "zh_cn": { "title": "你的公网IP变了", "content": [ [ { "tag": "text", "text": "IPv4地址:#{ipv4Addr}" } ], [ { "tag": "text", "text": "域名更新结果:#{ipv4Result}" } ] ] } } } }
https://github.com/WingLim/ddns-***-bot
https://www.pushplus.plus/sendjson{ "token": "your token", "title": "你的公网IP变了", "content": "你的公网IP变了 \n - IPv4地址:#{ipv4Addr} \n - 域名更新结果:#{ipv4Result} \n" }
Webhook网址json{ "content": "域名 #{ipv4Domains} 动态解析 #{ipv4Result}.", "embeds": [ { "description": "#{ipv4Domains} 的动态解析 #{ipv4Result}, IP: #{ipv4Addr}", "color": 15258703, "author": { "name": "DDNS" }, "footer": { "text": "DDNS #{ipv4Result}" } } ] }
https://ilinkai.weixin.qq.com/ilink/bot/sendmessagejson{ "msg": { "from_user_id": "", "to_user_id": "$your_user_id@im.wechat", "client_id": "ddns-#{timestamp}", "message_type": 2, "message_state": 2, "item_list": [ { "type": 1, "text_item": { "text": "📡 IPv4: #{ipv4Result}\n 新地址: #{ipv4Addr}\n 已绑定域名: #{ipv4Domains}\n\n📡 IPv6: #{ipv6Result}\n 新地址: #{ipv6Addr}\n 已绑定域名: #{ipv6Domains}" } } ] }, "base_info": { "channel_version": "2.1.7" } }
Content-Type: application/json AuthorizationType: ilink_bot_token Authorization: Bearer $your_bot_token iLink-App-Id: bot iLink-App-ClientVersion: 131335
https://github.com/jeessy2/ddns-go/issues/327
通过自定义回调可支持更多的第三方DNS服务商
配置的域名有几行, 就会回调几次
支持的变量
| 变量名 | 说明 |
|---|---|
| #{ip} | 新的IPv4/IPv6地址 |
| #{domain} | 当前域名 |
| #{recordType} | 记录类型 A或AAAA |
| #{ttl} | TTL |
如 RequestBody 为空则为 GET 请求,否则为 POST 请求
https://github.com/jeessy2/ddns-go/wiki/Callback%E9%85%8D%E7%BD%AE%E5%8F%82%E8%80%83
!https://raw.githubusercontent.com/jeessy2/ddns-go/master/ddns-web.png
make build 生成本地编译后的 ddns-go 可执行文件make build_docker_image 自行编译 Docker 镜像您可以使用以下命令拉取该镜像。请将 <标签> 替换为具体的标签版本。如需查看所有可用标签版本,请访问 标签列表页面。
探索更多轩辕镜像的使用方法,找到最适合您系统的配置方式
通过 Docker 登录认证访问私有仓库
无需登录使用专属域名
Kubernetes 集群配置 Containerd
K3s 轻量级 Kubernetes 镜像加速
VS Code Dev Containers 配置
Podman 容器引擎配置
HPC 科学计算容器配置
ghcr、Quay、nvcr 等镜像仓库
Harbor Proxy Repository 对接专属域名
Portainer Registries 加速拉取
Nexus3 Docker Proxy 内网缓存
需要其他帮助?请查看我们的 常见问题Docker 镜像访问常见问题解答 或 提交工单
docker search 限制
站内搜不到镜像
离线 save/load
插件要用 plugin install
WSL 拉取慢
安全与 digest
新手拉取配置
镜像合规机制
manifest unknown
no matching manifest(架构)
invalid tar header(解压)
TLS 证书失败
DNS 超时
域名连通性排查
410 Gone 排查
402 与流量用尽
401 认证失败
429 限流
D-Bus 凭证提示
413 与超大单层
来自真实用户的反馈,见证轩辕镜像的优质服务