# cloudflare-ddns-toolkit **Repository Path**: oij/cloudflare-ddns-toolkit ## Basic Information - **Project Name**: cloudflare-ddns-toolkit - **Description**: ddns toolkit for cloudflare update - **Primary Language**: Unknown - **License**: Not specified - **Default Branch**: master - **Homepage**: None - **GVP Project**: No ## Statistics - **Stars**: 0 - **Forks**: 0 - **Created**: 2026-02-15 - **Last Updated**: 2026-05-07 ## Categories & Tags **Categories**: Uncategorized **Tags**: None ## README # Cloudflare DDNS Toolkit ## 简介 Cloudflare DDNS Toolkit 是一个用于自动更新 Cloudflare DNS 记录的动态域名解析工具。该工具可以帮助用户轻松管理动态IP地址与域名的绑定关系,确保域名始终指向最新的IP地址。 ## 主要功能 - **自动检测公网IP**:自动检测并获取当前公网IP地址 - **Cloudflare DNS更新**:自动更新Cloudflare上的DNS记录 - **多域名支持**:支持管理多个域名和子域名 - **自动记录信息拉取**:支持命令更新域名下的记录信息到本地文件 - **日志记录**:记录详细的运行日志,便于问题排查 ## 系统要求 - Linux/Unix 系统 (支持 bash) - curl 工具 - 网络连接 - Cloudflare 账户及 API 密钥 ## 快速开始 ### 1. 生成域名配置文件 ```shell ./cloudflare-ddns-toolkit.sh create example.com ``` 命令执行后会在脚本所在目录的 `domains` 目录中,创建名为 `example.com` 文件。打开该文件,内容大致如下: ```ini VALID=true # https://dash.cloudflare.com/xxxx/domains/overview ZONE_ID= # https://dash.cloudflare.com/profile/api-tokens API_KEY= ``` - **VALID**:设定该域名为自动更新 - **ZONE_ID**:获取域名管理中, - **API_KEY**:在[API管理](https://dash.cloudflare.com/profile/api-tokens)页面中,增加记录管理API TOKEN。 ### 2. 获取 API 密钥 登录 Cloudflare 账户,获取以下信息: - Global API Key 或 API Token - 域名 Zone ID ### 3. 拉取记录信息并编辑 ```bash ./cloudflare-ddns-toolkit.sh pull ``` 命令执行后,会在 `domains` 中所有域名配置文件的尾部增加相应dns记录。根据更新需求,取消相应内容前的`#`注释标记。追加内容大致如下: ```ini ###### #DNS_RECORD_ID=12345676890abcd #DNS_RECORD_NAME=abc.xyz #DNS_RECORD_CONTENT=1.1.1.1 #DNS_RECORD_PROXIED=true ``` ### 4. 手动更新 ```bash ./cloudflare-ddns-toolkit.sh push ``` - 如果`logs`目录中存在`ip`地址与更新后的地址不一致,则会自动更新相应记录。 ## 常见问题 ### Q1: 脚本运行失败怎么办? A1: 请检查: 1. API 密钥是否正确 2. Zone ID 是否有效 3. 网络连接是否正常 ### Q2: 如何查看日志? A1: 查看日志文件: ```bash cat logs/域名文件 ``` ### Q3: 可以更新多个域名吗? A3: 可以在`domains`目录中创建多个配置文件,每个文件对应相应域名。 ## 安全建议 1. **保护API密钥**:不要将配置文件提交到公开的代码仓库 2. **使用Token**:建议使用具有最小权限的API Token而非Global API Key 3. **定期更新**:定期检查并更新脚本到最新版本 ## 贡献指南 欢迎提交 Issue 和 Pull Request 来改进这个项目。 ## 许可证 本项目遵循 MIT 许可证。 ## 联系信息 如有问题或建议,请通过以下方式联系: - 提交 [Issue](https://gitee.com/oij/cloudflare-ddns-toolkit/issues) - 邮件联系项目维护者 --- **注意**:由于无法访问实际的代码文件,以上 README 基于项目名称和典型 DDNS 工具的功能编写。如果实际功能与我描述的有所不同,请提供具体的代码内容,我将相应更新 README 文件。 --- ## 项目信息 - **项目地址**: https://gitee.com/oij/cloudflare-ddns-toolkit - **作者**: oij - **许可证**: MIT License