Cloudflare DNS 动态解析更新工具:自动获取本机公网 IPv4 / IPv6 地址,并在地址变化时更新 Cloudflare 指定的 DNS 记录,可选通过 Telegram 发送通知。
注意:
config.json必须是合法的 JSON 文件,标准 JSON 不支持//注释,正式使用前请删除上述注释并补齐逗号。
字段说明:
| 字段 | 说明 |
|---|---|
email |
Cloudflare 账户邮箱 |
key |
Cloudflare API 密钥 |
domain |
根域名(如 B.com,二级域名 A.B.com 的根域为 B.com) |
dns |
用于获取本机 IPv4/IPv6 地址及解析的 DNS 服务器地址列表 |
apis |
在线获取本机公网 IP 的 API(当直连取到的 IP 为内网时回退使用) |
preferIPV |
偏好协议,4/6 或 ipv4/ipv6,默认 auto |
subs |
需要更新的子域名列表,cates 支持 A(IPv4) 与 AAAA(IPv6) |
telegram.update |
是否启用 Telegram 通知 |
telegram.id / telegram.url |
Telegram 对话 ID 与 Bot API 地址 |
insecureSkipVerify |
是否跳过 TLS 证书校验,可省略,默认 true |
config.json 与程序同目录时:
./updateCFIP
./updateCFIP.exe否则通过 -file 指定配置文件路径:
./updateCFIP -file config.json文件所在位置- 程序会先在 Cloudflare 查询根域名对应 Zone,再逐个子域名、逐个记录类型比对本地公网 IP 与云端记录,发生变更才执行更新。
- 开启
telegram.update时,每次运行都会以 HTML 富文本 推送一条汇总消息(标题带✅/❌状态与时间戳),逐行列出各记录的✅ 已更新/ℹ️ 未变化/❌ 失败结果。 - 调试模式可输出更详细日志,方便排查问题。
{ "email": "CF邮箱", "key": "CF密钥", "domain": "根域名", "dns": ["223.5.5.5", "2400:3200::1"], // 用于获取本机IP/解析的DNS,可自行更换 "apis": { "ipv4": "获取ipv4地址的api", "ipv6": "获取ipv6地址的api" }, "preferIPV": "4", "subs": [ { "name": "二级域名", "cates": ["A", "AAAA"] // ipv4:A、ipv6:AAAA } ], "telegram": { "update": true, "id": "对话ID", "url": "API" }, "insecureSkipVerify": true }