> ## Documentation Index
> Fetch the complete documentation index at: https://documentation.onesignal.com/llms.txt
> Use this file to discover all available pages before exploring further.

# 邮件 DNS 配置

> 手动添加 DNS 记录（SPF、DKIM、DMARC、CNAME、MX）以验证 OneSignal 邮件发送的发送域。

配置 OneSignal 提供的 DNS 记录以验证您的发送域。在大多数情况下，DNS 可以从 OneSignal 仪表板自动配置，如[邮件设置](./email-setup)指南中所述。需要手动添加记录时请使用本页。

## 要求

要手动配置 DNS 记录，您必须：

* 拥有发送域。
* 通过您的提供商访问 DNS 设置。

如果您没有域，我们建议通过 Cloudflare 购买一个。本指南以 Cloudflare 为例，但大多数 DNS 提供商的操作方式相同。

<Accordion title="使用 Cloudflare 注册您的域" icon="circle-chevron-down">
  在 [Cloudflare.com](https://www.cloudflare.com/) 创建帐户。

  转到 **Domain Registration > Register Domains**。

  <Frame caption="Cloudflare 域名注册页面">
    <img src="https://mintcdn.com/onesignal/jBdBk5XvQR5eKOks/images/docs/738ee09-Register_a_Domain.png?fit=max&auto=format&n=jBdBk5XvQR5eKOks&q=85&s=327f5030dcc96a69aacf608556573bad" alt="显示注册域名页面的 Cloudflare 仪表板" width="1300" height="775" data-path="images/docs/738ee09-Register_a_Domain.png" />
  </Frame>

  搜索可用名称并购买。

  <Frame caption="Cloudflare 域名购买页面">
    <img src="https://mintcdn.com/onesignal/tc0EvmtSSX56SX0c/images/docs/914f661-Purchase_Domain.png?fit=max&auto=format&n=tc0EvmtSSX56SX0c&q=85&s=b81467e17066a8937256778554c2d014" alt="带有购买选项的 Cloudflare 域名搜索结果" width="1386" height="542" data-path="images/docs/914f661-Purchase_Domain.png" />
  </Frame>

  购买后，您的域将出现在 **Domain Registration > Managed Domains** 下。

  <Frame caption="Cloudflare 托管域名页面">
    <img src="https://mintcdn.com/onesignal/MUgio66t0sYhGEvj/images/docs/64857b3-Domain_Active.png?fit=max&auto=format&n=MUgio66t0sYhGEvj&q=85&s=a3354c52a0f2442467d289d9e8071872" alt="显示活跃域名的 Cloudflare 托管域名列表" width="1303" height="817" data-path="images/docs/64857b3-Domain_Active.png" />
  </Frame>
</Accordion>

***

## 添加 DNS 记录

完成[邮件设置](./email-setup)步骤，直到提示您添加 DNS 记录，然后返回此处或使用 **Auto-Configure DNS** 按钮。

从 OneSignal 仪表板：

* ⚠️ 表示当前 DNS 记录不匹配
* ✅ 表示当前 DNS 记录匹配

每个 DNS 记录都需要添加到您的 DNS 提供商。MX 记录除外——您必须配置 MX 记录，但它们可以指向不同的邮件服务器（例如 Gmail）。

<Frame caption="将 OneSignal 的 DNS 记录复制到您的 DNS 提供商">
  <img src="https://mintcdn.com/onesignal/TrjGYudL1B3K9oZG/images/dashboard/dns-manual-configure.png?fit=max&auto=format&n=TrjGYudL1B3K9oZG&q=85&s=826b4fdef6343099bc3063dbf0dc6667" alt="显示需要复制到提供商的 DNS 记录的 OneSignal 仪表板" width="991" height="760" data-path="images/dashboard/dns-manual-configure.png" />
</Frame>

在您的 DNS 提供商界面（例如 Cloudflare）中，转到 **DNS > Records** 并添加每个记录。

### TXT 记录

* **Type：** `TXT`
* **Name：** OneSignal "Hostname"
* **Content：** OneSignal "Value"
* **TTL：** Auto 或最低

<Warning>
  如果您已有 SPF TXT 记录，请勿创建第二条。将其他 `include:` 指令附加到现有记录：

  `v=spf1 include:spf.onesignal.email include:mailgun.org include:your-other-spf-records ~all`
</Warning>

<Frame caption="Cloudflare 中的 TXT DNS 记录界面">
  <img src="https://mintcdn.com/onesignal/YOTSrtBSoqdrJ37A/images/docs/476fea15213effba6c92f335f940246d1fc7d214233e5feee83b9f8a0f6390b2-Screenshot_2024-10-23_at_10.31.55_AM.png?fit=max&auto=format&n=YOTSrtBSoqdrJ37A&q=85&s=73f5e5388f8b6d5f3728aed32f03741a" alt="Cloudflare 添加 TXT DNS 记录的界面，显示主机名和值字段" width="2540" height="1062" data-path="images/docs/476fea15213effba6c92f335f940246d1fc7d214233e5feee83b9f8a0f6390b2-Screenshot_2024-10-23_at_10.31.55_AM.png" />
</Frame>

#### SPF（发送者策略框架）

验证发送 IP 是否被授权代表您的域发送邮件。

#### DMARC

为 SPF/DKIM 失败添加策略执行。\*\*DMARC 是安全邮件发送所必需的。\*\*了解更多：[邮件发送者指南](https://support.google.com/mail/answer/81126)

<Warning>
  OneSignal 对 DMARC 记录使用值 `v=DMARC1; p=none;`。如果您已有 DMARC 记录，请勿添加重复记录——验证现有记录是否包含此策略。
</Warning>

### CNAME 记录

用于打开、点击和取消订阅跟踪。

* **Type：** `CNAME`
* **Name：** OneSignal "Hostname"
* **Target：** OneSignal "Value"
* **TTL：** Auto 或最低

<Note>
  如果使用 Cloudflare，请将 CNAME 记录的 **Proxy** 设置为"DNS only"，**Flattening** 设置为"Off"。其他 DNS 提供商通常不需要这些设置。
</Note>

<Frame caption="Cloudflare 中的 CNAME DNS 记录界面">
  <img src="https://mintcdn.com/onesignal/3zq1PvSaqvUE2bIx/images/docs/2e304d0eeb876a92bd325eeb490a7f8e5a7ba53d381bdc86009143146f7e6405-Screenshot_2024-10-23_at_10.36.52_AM.png?fit=max&auto=format&n=3zq1PvSaqvUE2bIx&q=85&s=c268cad031c5d52f44cd5fce1e81b105" alt="Cloudflare 添加 CNAME 记录的界面，显示主机名和目标字段" width="2540" height="1062" data-path="images/docs/2e304d0eeb876a92bd325eeb490a7f8e5a7ba53d381bdc86009143146f7e6405-Screenshot_2024-10-23_at_10.36.52_AM.png" />
</Frame>

#### DKIM（域名密钥识别邮件）

验证消息内容未被更改且确实由您发送。公钥包含在 OneSignal 提供的 CNAME DNS 记录中。

### MX 记录

接收邮件回复和退信。即使您只发送邮件，MX 记录也有助于避免域验证错误。

<Warning>
  如果您已使用其他邮件提供商（例如 Gmail），请勿覆盖现有的 MX 记录。
</Warning>

* **Type：** `MX`
* **Name：** OneSignal "Hostname"
* **Mail server：** OneSignal "Value"
* **TTL：** Auto 或最低
* **Priority：** `10`

<Frame caption="Cloudflare 中的 MX DNS 记录界面">
  <img src="https://mintcdn.com/onesignal/Xl2NHJvxakrK4JbL/images/docs/f267f956723811f57b5a7d5db5190619a44c7641699a0bf5b3511f617597ada1-Screenshot_2024-10-23_at_10.50.19_AM.png?fit=max&auto=format&n=Xl2NHJvxakrK4JbL&q=85&s=538fb5cd52395b619b641eeb23f4a610" alt="Cloudflare 添加 MX 记录的界面，显示邮件服务器和优先级字段" width="2540" height="884" data-path="images/docs/f267f956723811f57b5a7d5db5190619a44c7641699a0bf5b3511f617597ada1-Screenshot_2024-10-23_at_10.50.19_AM.png" />
</Frame>

***

## DNS 验证与故障排除

添加记录后：

1. 返回 OneSignal 仪表板。
2. 点击 **Check Records** 或刷新按钮。

已验证的记录显示 ✅。除 MX 外，所有记录都应通过验证——如果 MX 指向不同的邮件服务器（例如 Google Workspace），可能显示 ⚠️，这是预期且可接受的情况。

<Frame caption="OneSignal 仪表板中已验证的 DNS 记录">
  <img src="https://mintcdn.com/onesignal/2-gyvU4UfJHiycCa/images/dashboard/dns-check-records.png?fit=max&auto=format&n=2-gyvU4UfJHiycCa&q=85&s=74380955130736264e42e26f2ae14a39" alt="显示已验证 DNS 记录并带有绿色勾选状态的 OneSignal 仪表板" width="2250" height="1290" data-path="images/dashboard/dns-check-records.png" />
</Frame>

<Warning>
  验证通常需要几分钟，但最多可能需要 48 小时。
</Warning>

### 排查 DNS 传播问题

1. 如有记录待处理，使用 [whatsmydns.net](https://www.whatsmydns.net/) 检查传播情况。
2. 对于显示 ⚠️ 的记录，将 OneSignal 仪表板中的主机名复制到搜索栏并设置 DNS 类型。
3. 检查结果——✅ 表示记录已在全球验证，❌ 表示尚未传播到该服务器。

如果 whatsmydns.net 上显示的值与 OneSignal 提供的不同，请检查您的 DNS 提供商并更新记录以匹配。

<Frame caption="使用 whatsmydns.net 检查 DNS 传播">
  <img src="https://mintcdn.com/onesignal/RWtLFPeffHrC81wI/images/docs/a3011bc8b7477b7a1e18cb16cfd69bba03cc1f19cf623ccddd1926722bfc585c-Screenshot_2024-10-23_at_11.02.59_AM.png?fit=max&auto=format&n=RWtLFPeffHrC81wI&q=85&s=6b259000725c32c495332ec81842db00" alt="whatsmydns.net 结果，显示带有绿色和红色指示器的全球 DNS 传播状态" width="2578" height="1492" data-path="images/docs/a3011bc8b7477b7a1e18cb16cfd69bba03cc1f19cf623ccddd1926722bfc585c-Screenshot_2024-10-23_at_11.02.59_AM.png" />
</Frame>

#### 常见错误与解决方案

* **TXT SPF 记录未通过验证**
  * 您可能已有现有的 SPF 记录。您只应有一条 SPF TXT 记录——将其他 `include:` 指令附加到其值中。请参阅上方的 [TXT 记录](#txt-记录)部分。
* **DNS 未完全传播**
  * 如果 [whatsmydns.net](https://www.whatsmydns.net/) 显示 ✅ 和 ❌ 的混合，记录尚未完全传播。这可能需要长达 48 小时。请等待并再次检查，或联系您的 DNS 提供商。
* **DNS 值与 OneSignal 不匹配**
  * 如果 [whatsmydns.net](https://www.whatsmydns.net/) 上的值与 OneSignal 提供的不匹配：
    * 指向其他地方的 MX 记录（例如 Google Mail）是预期的——只要它们在 whatsmydns.net 上显示 ✅ 就没问题。
    * 验证主机名是否正确。`mail.yourdomain.com` 与 `yourdomain.com` 不同。
    * 联系您的 DNS 提供商寻求帮助。

***

## 常见问题

### DNS 验证需要多长时间？

验证通常在几分钟内完成，但 DNS 传播可能需要长达 48 小时，具体取决于您的提供商和 TTL 设置。使用 [whatsmydns.net](https://www.whatsmydns.net/) 检查进度。

### 如果我已有 SPF 或 DMARC 记录怎么办？

请勿创建重复记录。对于 SPF，将 OneSignal 的 `include:spf.onesignal.email` 附加到您现有的 SPF TXT 记录。对于 DMARC，验证您现有的记录是否包含 `v=DMARC1; p=none;` 或更严格的策略。

### 如果我只发送邮件，是否需要 MX 记录？

即使对于仅发送的配置，MX 记录也有助于避免域验证错误。如果您已使用 Gmail 或 Google Workspace 等邮件提供商，请保留现有的 MX 记录——您无需用 OneSignal 的值覆盖它们。

***

<Check>
  返回[邮件设置](./email-setup)以完成配置并开始发送邮件。
</Check>

## 相关页面

<Columns cols={2}>
  <Card title="邮件设置" icon="envelope" href="./email-setup">
    完整的邮件频道设置，包括提供商选择和自动 DNS 配置。
  </Card>

  <Card title="发件人" icon="paper-plane" href="./senders">
    管理发送域、回复地址和发件人身份。
  </Card>

  <Card title="邮件预热指南" icon="temperature-arrow-up" href="./email-warm-up">
    逐步增加邮件量以建立发件人声誉并提高可交付性。
  </Card>

  <Card title="邮件消息" icon="envelopes-bulk" href="./email-messaging">
    使用模板、个性化和计划安排撰写并发送邮件活动。
  </Card>
</Columns>
