智能摘要 DeepSeek
本文介绍了通过CloudFlare实现动态IP服务器DDNS解析的方法,适用于动态IP服务器和家庭带宽绑定域名。步骤如下: 1. **安装依赖**:不同系统(Debian/Ubuntu/CentOS/Alpine)需安装`jq`、`curl`和`cron`。 2. **获取并执行脚本**:下载对应系统的DDNS脚本(如`cloudflare_ddns.sh`或`alpine_cf-ddns.sh`),配置CloudFlare的API Token、区域ID和域名信息。 3. **设置定时任务**:通过`crontab`每2分钟运行脚本更新IP,并设置日志清理(保留7天)。支持实时

通过CloudFlare实现动态IP服务器DDNS解析域名-易云博客

通过CloudFlare实现动态IP服务器DDNS解析域名,方便用于动态IP服务器绑定域名、家庭带宽动态IP绑定

1. 安装必要依赖

Debian/Ubuntu:

sudo apt update && sudo apt install -y jq curl
apt install cron

CentOS/RHEL:

sudo yum install -y epel-release sudo yum install -y jq curl
yum install cron

Alpine:

apk update && apk add curl

2. 获取 DDNS 脚本并执行

Debian/Ubuntu/CentOS/RHEL:

curl -# -o /usr/local/bin/cloudflare_ddns.sh https://raw.githubusercontent.com/chenzai666/cloudflare-ddns/refs/heads/main/cloudflare_ddns.sh && chmod +x /usr/local/bin/cloudflare_ddns.sh && /usr/local/bin/cloudflare_ddns.sh

按提示输入CloudFlare的token、域名区域ID以及域名全称后直接回车即可

CloudFlare的token创建地址:管理账户 -> 账户API令牌

通过CloudFlare实现动态IP服务器DDNS解析域名-易云博客

域名区域ID:

通过CloudFlare实现动态IP服务器DDNS解析域名-易云博客

Alpine:

curl -o /usr/local/bin/alpine_cf-ddns.sh https://raw.githubusercontent.com/blassck/alpine_cf-ddns/main/alpine_cf-ddns.sh && chmod +x /usr/local/bin/alpine_cf-ddns.sh

下载后编辑alpine_cf-ddns.sh

vi /usr/local/bin/alpine_cf-ddns.sh

修改如下设置并保存

CFTOKEN="你的_Cloudflare_API_Token" # 获取方法如上方一致
CFUSER="你的Cloudflare登录邮箱" # 填入邮箱
CFZONE_NAME="你的根域名.com" # 例如: example.com
CFRECORD_NAME="子域名.你的根域名.com" # 例如: home.example.com
CFRECORD_TYPE="A" # IPv4 填 A, IPv6 填 AAAA
WANIPSITE="https://api.ipify.org" # 获取IP的地址,IPv6请用 https://api6.ipify.org

3. 设置 crontab 定时任务

crontab -e

Debian/Ubuntu/CentOS/RHEL:

每2分钟运行一次DDNS脚本并记录日志

*/2 * * * * /usr/local/bin/cloudflare_ddns.sh >> /root/.cloudflare_ddns/cloudflare_ddns.log 2>&1

每天凌晨清理日志(保留7天日志)

0 0 * * * find /root/.cloudflare_ddns/cloudflare_ddns.log -mtime +7 -delete

实时查看日志

tail -f /root/.cloudflare_ddns/cloudflare_ddns.log

Alpine:

每2分钟运行一次DDNS脚本并记录日志

*/2 * * * * /usr/local/bin/alpine_cf-ddns.sh >> /var/log/cf-ddns.log 2>&1

每天凌晨清理日志(保留7天日志)

0 0 * * * find /var/log/cf-ddns.log -mtime +7 -delete

实时查看日志

tail -f /var/log/cf-ddns.log

本文参考:https://github.com/chenzai666/cloudflare-ddns以及https://github.com/blassck/alpine_cf-ddns