准备条件
有cf账户,有域名并托管在cf上,需要设置的vps主机。
获取cf的global key
访问CF官网,右上角点自己头像-个人资料,左边找API令牌 ,在页面下方找到 Global API Key,点击右侧查看 Key,并保存下来
设置解析域名
在需要解析的域名下,DNS中添加一条A记录,例如:hkt.test.com,IP地址处写1.1.1.1 小云朵不要打开(代理状态为仅DNS)
下载ddns脚本
Curl https://raw.githubusercontent.com/aipeach/cloudflare-api-v4-ddns/master/cf-v4-ddns.sh > /root/cf-v4-ddns.sh && chmod +x /root/cf-v4-ddns.sh
修改配置文件
打开root目录下的cf-v4-ddns.sh文件,修改如下位置信息保存
(nano/vim或者直接finalshell打开文件修改都可以)
nano cf-v4-ddns.sh
# incorrect api-key results in E_UNAUTH error# 填写 Global API Key CFKEY= #你刚才获取的CF的Global密钥 # Username, eg: [email protected]# 填写 CloudFlare 登陆邮箱 CFUSER= #你的CF账号(注意是邮箱) # Zone name, eg: example.com# 填写需要用来 DDNS 的一级域名 CFZONE_NAME= #你的域名如test.com # Hostname to update, eg: homeserver.example.com# 填写 DDNS 的二级域名(只需填写前缀) CFRECORD_NAME= #你的二级解析域名如上述hkt.test.com
运行脚本
./cf-v4-ddns.sh
首次运行脚本,输出内容会显示当前IP
进入cloudflare查看 确保IP已变更为当前IP
设置定时任务
crontab -e */2 * * * * /root/cf-v4-ddns.sh >/dev/null 2>&1 # 如果需要日志,使用如下代码 */2 * * * * /root/cf-v4-ddns.sh >> /var/log/cf-ddns.log 2>&1
这行代码的意思是每隔 2 分钟执行一次 /root/cf-v4-ddns.sh 脚本,并将标准输出和错误输出重定向到 /dev/null。保存退出。
重启服务
rc-service crond restart
重启 crond 服务以使更改生效
发布者:木木,转载请注明出处:https://blog.mmcool.site/5846.html