操作手册
RUNBOOK

DNS-Iemail 多供应商配置指南

面向 TS 的邮件 DNS 执行手册:按客户接受度选择 NS 委托、CNAME 中间层或 TXT/MX/A 兜底方案,并为后续多通道切换预留命名空间。

TS 操作手册 2026-05-29 ~12 分钟阅读

最终推荐

要点

TS 对客户默认只记一句:能委托专用子域 NS,就选方案 A;不能委托但能配 CNAME,就选方案 B;NS 和 CNAME 都不接受,才用方案 C,并明确告知后续新增或切换供应商大概率还要客户改 DNS。

本手册用于 TS 在客户沟通中快速判断方案、给出对应记录、确认话术边界,并识别哪些场景必须升级给技术同事。

TS 先问客户的 8 个问题

在给任何 DNS 记录前,先收集下面 8 个信息。缺少这些信息时,不要直接承诺“以后切换供应商不用改 DNS”。

一屏判断流程

flowchart TD
  Start[客户需要配置发信 DNS] --> Q1{是否接受专用子域 NS 委托?}
  Q1 -->|接受| A[方案 A:NS 子域委托]
  Q1 -->|不接受| Q2{是否允许配置 CNAME?}
  Q2 -->|允许| B[方案 B:CNAME 中间层]
  Q2 -->|不允许| Q3{是否接受后续切换仍可能改 DNS?}
  Q3 -->|接受| C[方案 C:TXT / MX / A 兜底]
  Q3 -->|不接受| Esc[升级技术评审]
  A --> PromiseA[客户改一次,后续切换通常由我们维护]
  B --> PromiseB[多数场景可减少客户后续改动]
  C --> PromiseC[只做基础兼容,不承诺免改]
        
TS 选择方案时只按客户 DNS 接受度走分支;遇到不接受后续改动但又拒绝 NS/CNAME 的客户,必须升级评审。

三档客户接受度方案

方案 B — 中接受度:CNAME + 必要 TXT

客户不愿委托 NS,但允许 CNAME。我们用中间域名隐藏底层供应商,适合大多数客户,但供应商精确校验时可能仍要补配置。

方案 C — 低接受度:无 CNAME 兜底

客户只允许 TXT/MX/A/AAAA。可做基础发信认证,但新增供应商、品牌追踪、DKIM 和 Bounce 的后续变更成本最高。

方案 A:NS 子域委托

适合长期使用、多通道、多供应商切换、对交付率和维护成本要求高的客户。推荐按通道委托子域,而不是所有邮件都混在一个 em.example.com 下面。

客户接受度客户需要做什么TS 可承诺什么不能承诺什么适合场景
新增专用子域并配置 NS,例如 tx.example.commkt.example.com后续多数 DNS 调整由我们维护,客户通常无需再次改 DNS不能承诺所有供应商都零审批;客户内部安全审批仍由客户负责中大型客户、长期项目、多供应商切换、事务邮件和营销邮件并存

✓ 优点

  • 后续新增 Spotler、SendGrid、AAA、BBB 等供应商,客户通常不用再改 DNS。
  • DKIM、SPF、DMARC、MX、CNAME、A/AAAA 都可以由我们统一维护。
  • 最适合多通道切换:事务邮件和营销邮件可以分开管理。

✕ 缺点

  • 大企业客户可能需要安全审批。
  • 客户可能不愿把子域 DNS 控制权委托给外部。
  • 我们需要维护 DNS 管理、监控、变更记录和回滚流程。

方案 B:CNAME 中间层

适合大多数客户。客户把 Tracking、DKIM、部分 Bounce 域名 CNAME 到我们的中间域名;我们再把中间域名指向 SendGrid、Spotler 或其他供应商。

客户接受度客户需要做什么TS 可承诺什么不能承诺什么适合场景
配置 CNAME,以及 SPF/DMARC 所需 TXT我们用中间层降低供应商切换时的客户改动概率不能承诺所有 DKIM、Tracking、Bounce 都能被中间层完全抽象客户能加 CNAME,但不愿做 NS 委托;希望隐藏底层邮件供应商

方案 C:TXT / MX / A 兜底

只在客户明确拒绝 NS 委托和 CNAME 时使用。它不是推荐方案,而是兼容兜底方案。TS 必须提前说明:后续新增或切换供应商时,很可能需要客户再次添加或修改 DNS。

客户接受度客户需要做什么TS 可承诺什么不能承诺什么适合场景
仅配置 TXT、MX、A/AAAA 等直接记录尽量完成基础发信认证;SPF 和 DMARC 可部分稳定不能承诺品牌追踪可用,也不能承诺后续供应商切换免改 DNSDNS 权限受限、只做基础发信、不强依赖 branded tracking 的客户

多通道命名规则

为了后续多通道切换,不要所有邮件都使用同一组 click.example.combounce.example.coms1._domainkey.example.com。建议按通道拆分命名。

flowchart LR
  Root[example.com] --> TX[tx.example.com
事务 / iemail] Root --> MKT[mkt.example.com
营销邮件] TX --> TXDNS[tx 中间 DNS] MKT --> MKTDNS[mkt 中间 DNS] TXDNS --> ProviderA[供应商 A] MKTDNS --> ProviderB[供应商 B] MKTDNS -.营销通道切换.-> ProviderC[供应商 C]
按通道拆分命名后,营销供应商切换不会影响事务邮件通道;事务邮件也不会占用营销通道的 DKIM、Tracking、Bounce 域名。
用途推荐命名不要默认使用原因
事务 / iemail 发信域tx.example.comexample.com保护客户主域名声誉,便于单独切换事务通道。
营销发信域mkt.example.comnews.example.comexample.com营销邮件投诉、退订、声誉应与事务邮件隔离。
点击追踪click.tx.example.com / click.mkt.example.comclick.example.com 共用一个 hostname 不能同时 CNAME 到两个供应商。
退信 / MAIL FROMb.tx.example.com / b.mkt.example.combounce.example.com 共用多供应商并行时 Bounce 路由、VERP、统计归属容易冲突。
DKIM selectortx-sg1tx-sg2mkt-sp1mkt-sp2s1s2 全局复用便于供应商重叠期、密钥轮换、回滚和故障定位。

DNS 记录模板

下面记录是 TS 给客户沟通时的模板。正式生成时必须由技术或系统把 example.comcustomer123yourcompany.com、供应商目标值替换为真实值。

方案 A 记录模板:客户只做 NS 委托

Host / 主机记录TypeValue / 记录值TTL谁维护后续记录说明
tx.example.comNSns1.your-dns.com300-3600我们事务 / iemail 通道专用子域。
tx.example.comNSns2.your-dns.com300-3600我们至少两条 NS,保证冗余。
mkt.example.comNSns1.your-dns.com300-3600我们营销通道专用子域;如果客户暂时没有营销通道,可先预留。
mkt.example.comNSns2.your-dns.com300-3600我们后续营销供应商切换不影响事务通道。
方案 A 中由我们维护的典型记录
_spf.tx.example.com TXT "v=spf1 include:_spf.yourcompany.com -all"
_dmarc.tx.example.com TXT "v=DMARC1; p=none; rua=mailto:dmarc-reports@example.com"
tx-sg1._domainkey.tx.example.com CNAME tx-sg1.dkim.customer123.mta.yourcompany.com
tx-sg2._domainkey.tx.example.com CNAME tx-sg2.dkim.customer123.mta.yourcompany.com
click.tx.example.com CNAME click.tx.customer123.mta.yourcompany.com
open.tx.example.com CNAME open.tx.customer123.mta.yourcompany.com
b.tx.example.com CNAME b.tx.customer123.mta.yourcompany.com

注意:如果实际供应商要求 Bounce 使用 MX 而不是 CNAME,则由技术同事在委托子域内维护对应 MX/A/AAAA。

方案 B 记录模板:客户配置 CNAME + 必要 TXT

Host / 主机记录TypeValue / 记录值TTL是否必填说明
click.tx.example.comCNAMEclick.tx.customer123.mta.yourcompany.com300-3600按需事务邮件点击追踪;不做品牌追踪时可不启用。
open.tx.example.comCNAMEopen.tx.customer123.mta.yourcompany.com300-3600按需事务邮件打开追踪或图片域名。
tx-sg1._domainkey.tx.example.comCNAMEtx-sg1.dkim.customer123.mta.yourcompany.com300-3600必填DKIM selector,示例中 sg 代表 SendGrid;正式值按供应商生成。
tx-sg2._domainkey.tx.example.comCNAMEtx-sg2.dkim.customer123.mta.yourcompany.com300-3600必填第二个 DKIM selector,便于轮换和冗余。
b.tx.example.comCNAMEb.tx.customer123.mta.yourcompany.com300-3600按供应商Return-Path / Bounce;部分供应商要求 CNAME,部分要求 MX/TXT,需按实际供应商确认。
tx.example.comTXT"v=spf1 include:_spf.yourcompany.com -all"300-3600按 MAIL FROMSPF 校验的是实际 MAIL FROM / Return-Path 域;如果供应商使用 b.tx.example.com 作为 MAIL FROM,则 SPF 位置需按供应商方案确认。
_dmarc.tx.example.comTXT"v=DMARC1; p=none; rua=mailto:dmarc-reports@example.com"300-3600建议先用 p=none 观察对齐情况,再考虑升级到 quarantinereject

方案 C 记录模板:无 CNAME,仅做兼容

Host / 主机记录TypeValue / 记录值TTL风险说明
tx.example.comTXT"v=spf1 include:_spf.yourcompany.com -all"300-3600仅当 MAIL FROM 使用该域或供应商要求时配置;客户已有 SPF 时只能合并,不能新增第二条 SPF。
_dmarc.tx.example.comTXT"v=DMARC1; p=none; rua=mailto:dmarc-reports@example.com"300-3600DMARC 通常不随供应商频繁变化,但必须确认 DKIM 或 SPF 与 Header From 对齐。
tx-sg1._domainkey.tx.example.comTXT"v=DKIM1; k=rsa; p=xxxx"300-3600仅适用于供应商支持 DKIM TXT 的情况;如果供应商只支持 CNAME,则不可用。
b.tx.example.comMX10 mx.yourcompany.com300-3600只有我们处理退信或供应商明确要求 MX 时使用;MX 目标不要是 CNAME。
click.tx.example.comA / AAAA1.2.3.4300-3600仅当我们自建追踪代理且能维护固定入口、TLS 证书和监控时使用;不要直接指向供应商易变 IP。

后续切换供应商流程

1

确认切换范围

先确认是只切换事务 / iemail,还是只切换营销,或者两个通道都切换。不要把 txmkt 的记录混用。

TS必做
2

检查当前方案等级

方案 A 通常由我们内部改;方案 B 先验证供应商是否接受中间 CNAME;方案 C 默认需要客户再次改 DNS。

A/B/C
3

预生成新供应商记录

提前生成 DKIM、Tracking、Bounce、验证 TXT。新旧 DKIM selector 不要复用,例如从 tx-sg1 切到 tx-sp1

技术
4

降低 TTL 并等待生效

切换前 24-48 小时降低相关记录 TTL;注意 DNS 有负缓存和各供应商验证延迟,不要刚改完就立刻切全量。

DNS24-48h
5

灰度切换并观察

按通道、客户、批次逐步切换。观察 SPF/DKIM/DMARC 通过率、退信率、打开点击追踪、投诉和退订数据。

灰度监控
6

保留旧记录一段时间

不要切完马上删除旧 DKIM、Tracking、Bounce、验证记录。等确认没有旧邮件、旧链接、旧 Bounce 还在使用后再清理。

回滚清理

必须升级处理的情况

触发条件为什么要升级TS 先收集什么对客户怎么说
客户已有 p=reject 或严格 DMARC如果 DKIM/SPF 没有和 Header From 对齐,邮件可能直接被拒收。现有 SPF、DMARC、DKIM、发信 From 域名。“需要先确认认证对齐,避免影响投递。”
客户 SPF 已经很长或接近 10 次 lookupSPF 超过 10 次 DNS lookup 会导致 permerror。当前完整 SPF TXT。“需要评估是否能安全合并 SPF。”
客户只允许根域名,不愿使用子域根域名 CNAME 不推荐,且营销声誉会影响主域。客户为什么必须根域、是否可接受 tx/mkt/news“为了保护主域名和后续切换能力,建议使用专用子域。”
供应商要求精确 CNAME 值我们的中间层可能无法通过供应商校验。供应商给出的校验失败截图或记录要求。“该供应商可能要求直接解析,需要技术确认是否能兼容中间层。”
客户要多供应商并行发送Tracking、Bounce、DKIM selector 容易冲突。哪些通道、哪些供应商、各自 From 域名。“多通道并行需要先做命名规划,避免后续互相影响。”
客户拒绝 NS 和 CNAME,但又要求未来切换免改 DNS技术上无法稳定承诺。客户 DNS 限制说明。“如果不能使用 NS/CNAME,中间层能力受限,后续切换通常仍需改 DNS。”

客户沟通话术

推荐方案 A 时

为了保证邮件认证、点击追踪、退信处理以及后续多供应商切换能力,我们建议为邮件发送单独委托子域,例如 tx.example.commkt.example.com。客户侧只需完成一次 NS 委托,后续 DKIM、Tracking、Bounce 或底层供应商调整通常由我们维护,减少后续反复改 DNS 的成本。

推荐方案 B 时

如果贵司不方便做 NS 子域委托,可以配置我们提供的 CNAME 和必要 TXT 记录。这样大多数 Tracking、DKIM、Bounce 场景可以通过我们的中间域名维护,后续切换底层邮件服务商时通常不需要您重复修改同一批记录。但少数供应商可能要求精确校验值,如遇到这种情况我们会提前说明。

只能使用方案 C 时

如果贵司策略不允许 NS 委托和 CNAME,我们可以尽量通过 TXT、MX、A/AAAA 等记录完成基础发信配置。但这种模式下供应商抽象能力有限,未来新增或切换邮件服务商时,DKIM、Tracking、Bounce 或供应商验证记录很可能需要再次由贵司添加或修改。

技术原理速查

记录 / 概念解决什么问题能否抽象TS 需要记住的话
SPF授权哪些服务器可以代表某个 MAIL FROM / Return-Path 域发信可通过 include:_spf.yourcompany.com 部分抽象SPF 是 TXT;同一个域名只能有一条 SPF;最多 10 次 DNS lookup。
DKIM邮件签名公钥,证明内容未被篡改且由签名域授权CNAME 最适合;TXT 取决于供应商是否支持多供应商最好每个供应商用不同 selector,不要复用 s1
DMARC定义 SPF/DKIM 与 Header From 对齐后的处理策略和报告地址通常不需要按供应商抽象一个域名通常一条 DMARC;先 p=none 观察,再逐步收紧。
Tracking点击、打开、图片等品牌追踪域名很适合 CNAME 或 NS 委托一个追踪域名不能同时 CNAME 到两个供应商,所以要按通道拆分。
Return-Path / Bounce退信接收、投递失败统计、MAIL FROM 域取决于供应商;CNAME、MX、TXT 都可能出现先确认供应商要求;MX 目标不要是 CNAME。
A / AAAA把域名直接指向 IP不适合做供应商抽象不要让客户直接指向供应商 IP,除非技术确认有固定入口和证书方案。
DMARC 对齐为什么重要

收件方看到的是 Header From,例如 brand@news.example.com。DMARC 要求 SPF 或 DKIM 至少有一个通过,并且与这个 Header From 域名对齐。

  • SPF 看的是实际 MAIL FROM / Return-Path,不一定是用户看到的 From。
  • DKIM 看的是签名里的 d= 域名。
  • 如果只认证了 em.example.com,但用户看到的是 @example.com,并不一定能通过 DMARC。
第三方 DMARC 报告地址注意事项

如果客户的 DMARC 使用外部报告地址,例如 rua=mailto:dmarc@yourcompany.com,接收报告的域名通常需要做外部报告授权。否则部分收件方可能不会发送聚合报告。遇到这种需求时,TS 应升级技术确认,不要自行给最终记录。

最终结论

要点

方案 A 是推荐标准,方案 B 是大多数客户可接受标准,方案 C 是兜底兼容且必须提示后续变更成本。为了支持后续多通道切换,域名、Tracking、Bounce、DKIM selector 都要按通道拆分,避免事务邮件、营销邮件和不同供应商互相占用同一组 DNS 名称。