用途:通过 Cloudflare REST API 管理 DNS 记录,适用于将 Cloudflare 配置为 Azure 托管服务的权威 DNS 提供商的场景。
主要能力:DNS 记录增删改查、代理(橙云)设置、DNS 解析验证、区域导出为 BIND 格式,以及 Kubernetes External-DNS 集成。附带脚本 scripts/cloudflare-dns.sh,提供 preflight、verify-token、list-zones、list-records、get-record、create-a、create-cname、delete-record、export、verify-dns 等命令。
使用方式:凭据从 .env 自动加载,优先级为环境变量、项目级 <cwd>/.env、技能级 ${SKILL_DIR}/.env。需配置 CF_API_TOKEN(Zone:Read + DNS:Edit),CF_ZONE_ID 可选。首次使用需在 https://dash.cloudflare.com/profile/api-tokens 创建自定义令牌。典型流程:先运行 bash ${SKILL_DIR}/scripts/cloudflare-dns.sh preflight 检查环境,再 list-records 查看现状,然后执行 create-cname、create-a 等操作,最后用 verify-dns 验证。
限制:核心记录操作仅依赖 curl 与 jq;缺少 dig 时跳过 verify-dns,缺少 kubectl 时跳过 Kubernetes 集成。DNS 传播通常需 1-5 分钟。令牌应限定具体区域、定期轮换并存放于 .env,避免硬编码。更多 curl 示例、Kubernetes 与 Azure 集成细节见 references 目录下对应文件。