Files
Meshray-Manager/docs/DDNS 双场景区分说明.md
T
2026-06-30 15:14:37 +08:00

11 KiB
Raw Blame History

DDNS 双场景区分说明

问题时间: 2026-03-26
核心问题: 用户混淆了"DDNS 服务配置"和"组网 DDNS 同步"两个不同的使用场景


🎯 两种 DDNS 使用场景

场景 1: DDNS 服务配置(服务市场)

入口: 服务市场 → DNS 服务 → 添加 DDNS

用途:

  • 配置通用的 DDNS 服务
  • 支持 A/AAAA/TXT 多种记录类型
  • 可用于各种用途:
    • IP 动态解析(A/AAAA 记录)
    • MeshSeed 同步(TXT 记录)
    • 其他自定义用途

表单内容:

服务商:Cloudflare / 阿里云 / 腾讯云
记录类型:A / AAAA / TXT
域名:example.com

如果是 A/AAAA 记录:
├─ 主机记录:@ 或 www
├─ 目标 IP: 1.2.3.4
└─ 检测端口:80

如果是 TXT 记录:
├─ TXT 记录名称:_meshray._mesh
└─ TXT 记录值:v=spf1 ...

特点:

  • 功能完整(支持所有记录类型)
  • 灵活多用(不仅限于 MeshSeed)
  • 可配置多个(不同域名、不同用途)
  • ⚠️ 不直接绑定到具体网络

示例配置:

配置 1: Cloudflare DDNS (用于 MeshSeed 同步)
├─ 记录类型:TXT
├─ 域名:mesh.example.com
└─ TXT 记录名称:_meshray._mesh

配置 2: 阿里云 DDNS (用于 NAS 动态域名)
├─ 记录类型:A
├─ 域名:nas.example.com
├─ 主机记录:@
└─ 目标 IP: 自动检测

配置 3: 腾讯云 DDNS (用于监控设备)
├─ 记录类型:A
├─ 域名:camera.example.com
├─ 主机记录:device1
└─ 目标 IP: 自动检测

场景 2: 组网 DDNS 同步(组网创建时)

入口: 组网管理 → 创建组网 → 启用 DDNS 同步

用途:

  • 将特定组网的 MeshSeed 同步到 DNS
  • 必须选择已配置的 DDNS 服务
  • 只能使用 TXT 记录类型
  • 自动绑定到具体网络

表单内容:

启用 DDNS 同步:✅ ON

选择 DDNS 服务:
└─ 下拉框显示已在"服务市场"配置的 DDNS 服务
   └─ 示例:Cloudflare DDNS (mesh.example.com)

前缀模式:
├─ ✨ 自动生成(默认)
│   └─ 预览:_meshray.{短 ID}.mesh.example.com
│
└─ 🔧 自定义
    └─ 输入:office
        └─ 检测:是否被占用

特点:

  • 简单直观(只需选择服务)
  • 自动处理(自动生成 TXT 记录名)
  • 绑定到具体网络
  • ⚠️ 只能用 TXT 记录
  • ⚠️ 依赖场景 1 的配置

示例流程:

1. 在"服务市场"配置 DDNS
   └─ Cloudflare + mesh.example.com + TXT 记录

2. 创建组网"办公网络"
   ├─ 启用 DDNS 同步:✅ ON
   ├─ 选择 DDNS 服务:Cloudflare (mesh.example.com)
   ├─ 前缀模式:自动生成
   └─ 结果:_meshray.EjRWeJyt5uU.mesh.example.com

3. 系统自动:
   ├─ 生成 Usage 记录
   ├─ 绑定 Network 和 DDNS 服务
   └─ 准备同步 MeshSeed 到 DNS TXT

🔄 两种场景的关系

场景 1(服务市场)→ 配置 DDNS 服务
       ↓
       提供可用的 DDNS 服务列表
       ↓
场景 2(组网创建)→ 选择 DDNS 服务并绑定到网络
       ↓
       创建 Usage 和绑定关系
       ↓
后续:DDNSService 自动同步 MeshSeed 到 DNS

类比理解

场景 1 就像"购买云服务"
└─ 你购买了 AWS S3 存储桶
   └─ 配置好 AccessKey、Bucket 名称等

场景 2 就像"应用使用云存储"
└─ 某个应用要备份数据到 S3
   └─ 选择已配置的 S3 Bucket
   └─ 开始备份数据

📋 用户常见问题解答

Q1: 为什么服务市场的 DDNS 表单有 A/AAAA/TXT 选项?

A: 因为这是通用 DDNS 服务配置,不仅用于 MeshSeed 同步,还可以:

  • 动态解析家庭宽带 IPA 记录)
  • 为 NAS 配置动态域名(A 记录)
  • 为监控设备配置动态域名(A 记录)
  • MeshSeed 同步(TXT 记录)
  • SPF/DKIM 邮件验证(TXT 记录)
  • 其他自定义用途

示例:

用户在服务市场配置了 3 个 DDNS:
├─ DDNS #1: Cloudflare + mesh.example.com (TXT) ← 用于 MeshSeed 同步
├─ DDNS #2: 阿里云 + nas.example.com (A) ← 用于 NAS 动态域名
└─ DDNS #3: 腾讯云 + camera.example.com (A) ← 用于监控设备

然后在不同场景选择使用:
├─ 创建组网 → 选择 DDNS #1 同步 MeshSeed
├─ 配置 NAS → 选择 DDNS #2 同步 IP
└─ 配置监控 → 选择 DDNS #3 同步 IP

Q2: 为什么组网创建时只能选择 DDNS 服务,不能新建?

A: 因为:

  1. 职责分离: 服务配置和服务使用应该分开
  2. 复用性: 一个 DDNS 服务可以被多个组网使用
  3. 安全性: 避免在组网创建时暴露复杂的 DDNS 配置
  4. 简洁性: 组网创建流程已经复杂,不应再增加负担

好处:

✅ 一次配置,多次使用
✅ 集中管理所有 DDNS 服务
✅ 组网创建时只需简单选择
✅ 便于权限控制(配置 vs 使用)

Q3: 如果我只想用 DDNS 同步 MeshSeed,该怎么配置?

推荐步骤:

步骤 1: 配置 DDNS 服务

访问:服务市场 → DNS 服务 → 添加 DDNS

填写:
├─ 服务类型:DDNS
├─ 服务商:Cloudflare
├─ 记录类型:TXT
├─ 域名:mesh.example.com
├─ TXT 记录名称:_meshray._mesh (固定前缀)
└─ API Token: cf_xxxxx

保存后,这个 DDNS 服务就可用了

步骤 2: 创建组网并启用同步

访问:组网管理 → 创建组网

基础信息:
├─ 组网名称:办公网络
├─ 子网:10.0.0.0/24
├─ 启用 DDNS 同步:✅ ON
├─ 选择 DDNS 服务:Cloudflare (mesh.example.com)
└─ 前缀模式:自动生成(默认)

提交后:
├─ 系统自动创建 Usage 记录
├─ 绑定 Network 和 DDNS 服务
└─ 准备同步 MeshSeed 到 _meshray.{短 ID}.mesh.example.com

Q4: 同一个 DDNS 服务可以给多个组网使用吗?

可以! 这正是设计的优势:

DDNS 服务:Cloudflare + mesh.example.com
├─ 组网 A(办公网络)→ _meshray.ID_A.mesh.example.com
├─ 组网 B(测试环境)→ _meshray.ID_B.mesh.example.com
└─ 组网 C(生产环境)→ _meshray.ID_C.mesh.example.com

每个组网自动生成不同的 TXT 记录名,互不冲突

原理:

虽然使用同一个 DDNS 服务(同一个域名、同一个 API Token)
但每个组网会生成不同的 TXT 记录名:
├─ _meshray.{NetworkID_A}.mesh.example.com
├─ _meshray.{NetworkID_B}.mesh.example.com
└─ _meshray.{NetworkID_C}.mesh.example.com

DNS 提供商(如 Cloudflare)会把这些当作不同的 DNS 记录处理

Q5: 如果我不想用服务市场,只想快速配置 DDNS 同步怎么办?

快速入门流程:

方案 1(推荐): 先配置后使用
├─ 步骤 1: 花 2 分钟在服务市场配置 DDNS
└─ 步骤 2: 创建组网时选择已配置的服务

方案 2(未来优化): 一键配置
└─ 在组网创建页面点击"暂无 DDNS 服务?立即配置"
    → 跳转到服务市场,预填基本信息
    → 配置完成后自动返回继续创建组网

🎯 架构设计优势

配置与使用解耦 🏆

传统设计(耦合):
┌─────────────────────────────┐
│  创建组网时配置 DDNS         │
│  ├─ 选择服务商              │
│  ├─ 填写 Token              │
│  ├─ 填写域名                │
│  └─ 立即使用               │
└─────────────────────────────┘

问题:
❌ 每次创建组网都要重复配置
❌ 无法复用已有配置
❌ 配置分散难以管理
❌ 组网创建流程复杂

新设计(解耦):
┌─────────────────────────────┐
│  服务市场:配置 DDNS 服务     │
│  └─ 集中管理所有配置         │
└─────────────────────────────┘
         ↓
┌─────────────────────────────┐
│  组网创建:选择 DDNS 服务     │
│  └─ 简单选择,无需重复配置   │
└─────────────────────────────┘

优势:
✅ 一次配置,多次使用
✅ 集中管理,清晰明了
✅ 组网创建流程简化
✅ 便于扩展(未来可增加更多用途)

灵活性和扩展性 🚀

当前用途:
└─ MeshSeed 同步(TXT 记录)

未来可扩展:
├─ IP 动态解析(A/AAAA 记录)
├─ 设备注册(TXT 记录)
├─ 配置同步(TXT 记录)
├─ 日志投递(TXT 记录)
└─ 其他自定义用途

示例场景:

公司有多个业务需要 DDNS:
├─ 组网 A → 同步 MeshSeed 到 DNS TXT
├─ NAS → 同步公网 IP 到 DNS A 记录
├─ 监控 → 同步公网 IP 到 DNS A 记录
└─ 邮件服务器 → 同步 SPF 记录到 DNS TXT

全部可以在服务市场统一配置和管理

📊 对比表格

特性 服务市场-DDNS 配置 组网创建-DDNS 同步
入口 服务市场 → DNS 服务 组网管理 → 创建组网
用途 配置通用 DDNS 服务 绑定组网到 DDNS 服务
记录类型 A/AAAA/TXT 全选 仅 TXT
配置复杂度 高(填写所有参数) 低(只需选择)
复用性 可被多个组网复用 一次性绑定
管理方式 集中管理 分散在各组网
典型用户 管理员 普通用户

最佳实践建议

对于管理员

  1. 统一配置: 由管理员在服务市场统一配置 DDNS 服务
  2. 命名规范: 使用清晰的命名(如"公司主域名-MeshSeed 同步"
  3. 分类管理: 不同用途使用不同的 DDNS 配置(MeshSeed、NAS、监控等)

对于普通用户

  1. 直接使用: 创建组网时直接选择已配置的 DDNS 服务
  2. 推荐模式: 使用"自动生成"前缀模式,无需思考
  3. 隐私保护: TXT 记录不包含网络名称,安全放心

🎉 总结

两种场景,各司其职

服务市场-DDNS 配置:
└─ 定位:基础设施配置
└─ 用户:管理员
└─ 频率:低频(配置一次,长期使用)
└─ 功能:完整、强大、灵活

组网创建-DDNS 同步:
└─ 定位:应用层使用
└─ 用户:所有人
└─ 频率:中频(每次创建组网时使用)
└─ 功能:简单、直观、易用

设计原则

  1. 配置与使用分离 - 专业的人做专业的事
  2. 一次配置,多次使用 - 避免重复劳动
  3. 灵活性 + 易用性兼顾 - 管理员灵活配置,用户简单使用
  4. 面向未来扩展 - 支持更多 DDNS 应用场景

理解了这两种场景的区别和联系,就能正确使用 DDNS 功能了!🎯