DDNS

DNS Provider 配置指南

本目录包含各个DNS服务商的详细配置指南。DDNS支持多个主流DNS服务商,每个服务商都有其特定的配置要求和API特性。

🚀 快速导航

Provider 服务商 配置文档 英文文档 特点
alidns 阿里云DNS alidns 中文文档 alidns English Doc 阿里云生态集成
aliesa 阿里云ESA aliesa 中文文档 aliesa English Doc 阿里云边缘安全加速
callback 自定义API (Webhook) callback 中文文档 callback English Doc 自定义HTTP API
cloudflare Cloudflare cloudflare 中文文档 cloudflare English Doc 全球CDN和DNS服务
debug 调试Provider debug 中文文档 debug English Doc 仅打印IP地址,用于调试
dnscom(51dns) 51DNS 51dns 中文文档 51dns English Doc ⚠️ 等待验证
dnspod_com DNSPod Global dnspod_com 中文文档 dnspod_com English Doc ⚠️ 等待验证
dnspod DNSPod 中国版 dnspod 中文文档 dnspod English Doc 国内最大DNS服务商
he HE.net he 中文文档 he English Doc ⚠️ 等待验证,不支持自动创建记录
huaweidns 华为云 DNS huaweidns 中文文档 huaweidns English Doc ⚠️ 等待验证
namesilo NameSilo namesilo 中文文档 namesilo English Doc ⚠️ 等待验证
noip No-IP noip 中文文档 noip English Doc 不支持自动创建记录
tencentcloud 腾讯云DNSPod tencentcloud 中文文档 tencentcloud English Doc 腾讯云DNSPod服务
edgeone 腾讯云EdgeOne edgeone 中文文档 edgeone English Doc 腾讯云边缘安全加速平台

添加新的Provider, 创建Issue,并按照模板填好链接

支持自动创建记录

大部分provider支持自动创建不存在的DNS记录,但有例外:

📝 配置示例

命令行配置

cli 提供了命令行配置方式,以下是一些常用的命令行示例:

# DNSPod中国版
ddns --dns dnspod --id 12345 --token your_token --ipv4 ddns.newfuture.cc

# 阿里云DNS
ddns --dns alidns --id your_access_key --token your_secret --ipv4 ddns.newfuture.cc

# Cloudflare (使用邮箱)
ddns --dns cloudflare --id user@example.com --token your_api_key --ipv4 ddns.newfuture.cc

# Cloudflare (使用Token)
ddns --dns cloudflare --token your_api_token --ipv4 ddns.newfuture.cc

# 腾讯云EdgeOne
ddns --dns edgeone --id your_secret_id --token your_secret_key --ipv4 ddns.newfuture.cc

# No-IP
ddns --dns noip --id your_username --token your_password --ipv4 ddns.newfuture.cc

JSON配置文件

JSON配置文件提供了更灵活的配置方式,以下是一些常用的JSON配置示例:

单Provider格式

{
  "$schema": "https://ddns.newfuture.cc/schema/v4.0.json",
  "dns": "dnspod",
  "id": "12345",
  "token": "your_token_here",
  "ipv4": ["ddns.newfuture.cc", "*.newfuture.cc"],
  "index4": ["default"],
  "ttl": 600
}

多Provider格式

{
  "$schema": "https://ddns.newfuture.cc/schema/v4.1.json",
  "ssl": "auto",
  "cache": true,
  "log": {"level": "INFO"},
  "providers": [
    {
      "provider": "cloudflare",
      "id": "user@example.com",
      "token": "cloudflare-token",
      "ipv4": ["cf.example.com"],
      "ttl": 300
    },
    {
      "provider": "dnspod", 
      "id": "12345",
      "token": "dnspod-token",
      "ipv4": ["dnspod.example.com"],
      "ttl": 600
    }
  ]
}

多配置文件方式

命令行指定多个配置文件

# 使用多个独立的配置文件
ddns -c cloudflare.json -c dnspod.json -c alidns.json

# 使用环境变量指定多个配置文件
export DDNS_CONFIG="cloudflare.json,dnspod.json,alidns.json"
ddns

多配置文件示例

cloudflare.json:

{
  "dns": "cloudflare",
  "id": "user@example.com",
  "token": "your-cloudflare-token",
  "ipv4": ["cf.example.com"]
}

dnspod.json:

{
  "dns": "dnspod",
  "id": "12345", 
  "token": "your-dnspod-token",
  "ipv4": ["dnspod.example.com"]
}

环境变量配置

环境变量配置提供了另一种配置方式,以下是一些常用的环境变量示例:

export DDNS_DNS=dnspod
export DDNS_ID=12345
export DDNS_TOKEN=your_token_here
export DDNS_IPV4=ddns.newfuture.cc
export DDNS_INDEX4=default
ddns --debug

📚 相关文档


如有疑问或需要帮助,请查看FAQ 或在 GitHub Issues 中提问。