使用CloudFlare的DDNS解析你的VPS

如果购买的vps或者vds是动态IP,那么可以利用cloudflare在vps上部署脚本来让cloudflare自动获取最新的ip地址

要自建DDNS服务,首先必须要有自己的域名且域名已经接入 Cloudflare (即DNS为CF提供的地址)。

1. 获取CF APIKEY

注册好cloudflare账号并将域名接入cloudflare后,

打开网页:https://dash.cloudflare.com/profile

image.png

查看Global API Key,并保存下来

2. 设置用于 DDNS 解析的二级域名

在 Cloudflare 中新建一个A记录,如:ddns.yourdomain.com,指向 1.1.1.1
(可随意指定,如123.123.123.123等等,主要用于后续查看 DDNS 是否生效)

3. 下载 DDNS 脚本

yum install -y wget && wget  -N --no-check-certificate https://raw.githubusercontent.com/heaid/cloudflare-api-v4-ddns/master/cf-v4-ddns.sh

4. 修改 DDNS 脚本并填写相关信息

您可在线使用 nano/vi/vim 等工具进行修改,也可以下载到本地进行修改再上传覆盖!
可以参考下面命令使用vi进行编辑

我自己是使用finalshell 直接双击就可以编辑了。

vi cf-v4-ddns.sh
# incorrect api-key results in E_UNAUTH error
CFKEY=   # 这里填写上一步获取的CFKEY

# Username, eg: [email protected]
CFUSER=    # 登陆CF的Username, eg: [email protected](即CF的登录邮箱)

# Zone name, eg: example.com
CFZONE_NAME=   #输入你需要解析用来DDNS解析的根域名 eg: example.com,比如我的域名是123.com,那么此处填写123.com

# Hostname to update, eg: homeserver.example.com
CFRECORD_NAME=   # 填写用来DDNS解析的二级域名,与上面设置的要一致, eg: ddns.yourdomain.com(例 ddns.123.com)

image.png

5. 脚本授权并执行

chmod +x cf-v4-ddns.sh
./cf-v4-ddns.sh

如果脚本相关信息填写正确,输出内容会显示当前母鸡IP,登录 Cloudflare DNS选项 查看之前设置的 1.1.1.1 已变为母鸡IP

6. 设置定时任务

crontab -e
*/2 * * * * /root/cf-v4-ddns.sh -f true  >/dev/null 2>&1

或者

(crontab -l 2>/dev/null; echo "*/2 * * * * /root/cf-v4-ddns.sh -f true >/dev/null 2>&1") | crontab -
最后修改:2024 年 06 月 01 日
如果觉得文章有用,想请博主喝杯咖啡的话。