Lazy loaded image
Linux
如何使用 Cloudflare API 实现 DDNS 并自动定时更新
字数 649阅读时长 2 分钟
2023-11-20
2024-12-23
type
status
date
slug
summary
category
tags
password
icon

前言

动态域名解析(DDNS)允许您将变动的公网 IP 地址与域名关联起来。本教程将指导您如何使用 Cloudflare 的 API 在 Linux 系统上实现 DDNS,并通过 cron 定时任务来自动更新您的 DNS 记录。

准备工作

在开始之前,请确保您已经有了 Cloudflare 账户,并且您的域名已经添加到 Cloudflare 中。

第一步:获取 API 密钥和区域 ID

  1. 登录您的 Cloudflare 账户。
  1. 进入“我的个人资料”页面。
  1. 在“API 令牌”部分创建一个具有编辑 DNS 记录权限的 API 密钥。
接下来,使用以下命令获取区域 ID:

第二步:获取 DNS 记录 ID

使用区域 ID 执行以下命令,获取您想要更新的 DNS 记录的 ID:

第三步:编写 Shell 脚本

创建一个新的 Shell 脚本 ddns_update.sh,并添加以下内容:
记得替换脚本中的 CF_API_KEY, CF_EMAIL, CF_ZONE_ID, CF_RECORD_ID 以及域名。

第四步:赋予脚本执行权限

通过运行以下命令,为脚本赋予执行权限:

第五步:设置定时任务

使用 crontab -e 命令打开当前用户的 crontab 文件,并添加以下内容:
这将每30分钟执行一次脚本。

第六步:确认定时任务

保存并退出文本编辑器后,确认您的定时任务已经被添加:

结语

现在,您已经成功设置了一个自动更新 DNS 记录的定时任务,确保即使公网 IP 发生变化,域名解析也能保持最新。
请确保脚本路径正确,且测试脚本在您的环境中能够正常运行。如有需要,您可以将脚本的输出重定向到日志文件进行错误追踪和记录。

祝您部署成功,若有疑问,欢迎在下方评论区留言讨
论。
 
上一篇
05引入weui组件库
下一篇
Vim 基础使用教程