创建Cloudflare API

Cloudflare创建区域DNS API 提高安全性,进入“我的个人资料-API令牌-创建令牌-选择编辑区域DNS模板-选择需要的域名-继续以显示摘要”
会获得一个api令牌,只会显示一次,安全保存

安装ddclinet客户端

下载客户端

wget https://github.com/ddclient/ddclient/archive/refs/tags/v3.11.2.tar.gz

*建议前往项目下载最新客户端 https://github.com/ddclient/ddclient/releases

解压程序,并进入解压后的目录

tar xvfa v3.11.2.tar.gz 
cd ddclient-3.11.2

安装autoconf

apt-get install autoconf -y
apt-get install build-essential -y

安装Perl (这一步可能不需要?)

cpan HTTP::Daemon HTTP::Daemon::SSL HTTP::Message::PSGI HTTP::Request HTTP::Response Test::MockModule Test::TCP Test::Warnings URI

编译安装

./autogen
./configure \
    --prefix=/usr \
    --sysconfdir=/etc/ddclient \
    --localstatedir=/var
make
make VERBOSE=1 check
sudo make install

编辑 /etc/ddclient/ddclient.conf 可以参考下面的配置

######################################################################
##
## 全局配置
##
######################################################################
daemon=60                              # 每60秒检查一次IP更新
syslog=yes                              # 将更新日志写入系统日志
mail=root                               # 将所有消息发送到root用户
mail-failure=root                       # 将失败的更新消息发送到root用户
pid=/var/run/ddclient.pid               # PID文件路径
ssl=yes                                 # 使用SSL支持

######################################################################
##
## 获取公网 IP 的配置(通过 Web 服务)
##
######################################################################
use=web                                 # 使用Web服务获取IP
web=https://ipinfo.io/ip                 # 获取外部IP的Web服务

######################################################################
##
## Cloudflare 区域 API Token 配置
##
######################################################################
protocol=cloudflare                     # 使用Cloudflare协议
zone=your-domain.com                    # 替换为你的主域名
login=token                             # 使用API Token进行登录
password=your-api-token                 # 替换为你的API Token
your-domain.com,subdomain.your-domain.com  # 替换为你的主域名和子域名

复制systemd文件

cp sample-etc_systemd.service /etc/systemd/system/ddclient.service

启动并设置开机自启

systemctl enable ddclient.service
systemctl start ddclient.service

参考资料:

ChatGPT
ddclinet项目地址: https://github.com/ddclient/ddclient