

本文属于机器翻译版本。若本译文内容与英语原文存在差异，则一律以英文原文为准。

# 域和电子邮件地址验证问题
<a name="troubleshoot-verification"></a>

要使用 Amazon SES 验证域或电子邮件地址，可使用 Amazon SES 控制台或 Amazon SES API 启动该过程。本节包含有可能帮助解决验证过程问题的信息。

**注意**  
在以下过程中，对 DNS 记录的引用可以指向 CNAME 记录或 TXT 记录，具体取决于您使用的 DKIM 的形式。Easy DKIM 使用 CNAME 记录，而自带 DKIM (BYODKIM) 使用 TXT 记录。我们针对每个 [Easy DKIM](creating-identities.md#easy-dkim-verify-tab) 或 [BYODKIM](creating-identities.md#byodkim-verify-tab) 提供了详细的验证程序。

## 常见的域验证问题
<a name="troubleshoot-verification-domain"></a>

如果您尝试使用 [与您的 DNS 提供商一起验证 DKIM 域身份](creating-identities.md#just-verify-domain-proc) 中的步骤验证域时遇到问题，请查看下面的可能原因和解决方案。
+ **您正在尝试验证不归您所有的域**：您无法验证不归自己所有的域。例如，如果您想通过 Amazon SES 从 *gmail.com* 域上的地址发送电子邮件，您需要[专门验证该电子邮件地址](creating-identities.md#just-verify-email-proc)。您无法验证整个 *gmail.com* 域。
+ **您正在尝试验证私有域**：如果 DNS 记录无法通过公共 DNS 解析，则无法验证域。
+ **DNS 提供商不允许 DNS 记录名称中有下划线**：少数 DNS 提供商不允许在记录名称中包含下划线 (\_)。但是，DKIM 记录名称中的下划线是必需的。如果您的 DNS 提供商不允许您在记录名称中输入下划线，请联系提供商的客户支持团队以获取帮助。
+ **DNS 提供商将域名附加到 DNS 记录的结尾**：某些 DNS 提供商会自动将您的域名附加到 DNS 记录的属性名称中。例如，如果您创建一条属性名为 *\_domainkey.example.com* 的记录，提供商可能会附加域名，最终的属性名称将为 *\_domainkey.example.com.example.com*。要避免域名重复，请在输入 DNS 记录时向域名结尾添加句点。此步骤告知 DNS 提供商没有必要将域名附加到记录。
+ **您的 DNS 提供商修改了 DNS 记录值**：某些提供商会自动修改 DNS 记录值以仅使用小写字母。Amazon SES 仅在以下情况下才验证您的域：您的域检测到其属性值与您启动域验证流程时 Amazon SES 提供的值完全匹配的验证记录。如果域的 DNS 提供商将 DNS 记录值更改为仅使用小写字母，请与 DNS 提供商联系以获取更多帮助。
+ **您想多次验证同一个域名 — 您可能需要多次**验证您的域名，因为您在不同的地区发送邮件，或者因为您使用同一个域名从多个 AWS 账户发送邮件。如果 DNS 提供商不允许您拥有多条具有相同属性名称的 DNS 记录，您仍可以验证两个域。如果 DNS 提供商允许，您可以将多个属性值分配到同一条 DNS 记录。例如，如果 DNS 由 Amazon Route 53 管理，您可以完成以下步骤为同一条 CNAME 记录设置多个值：

  1. 在 Route 53 控制台中，选择在验证第一个区域中的域时创建的 CNAME 记录。

  1. 在 **Value**（值）框中，转到现有属性值的末尾，然后按 Enter。

  1. 添加附加区域的属性值，然后保存记录集。

  如果 DNS 提供商不允许为同一条 DNS 记录分配多个值，则可以在 DNS 记录属性名称中包含 *\_domainkey* 来验证域一次，然后从属性名称中删除 *\_domainkey* 并再验证一次。此解决方案的缺点是只能对同一个域验证两次。

## 检查域验证设置
<a name="troubleshoot-verification-domain-dns"></a>

您可以使用以下过程验证您的 Amazon SES 域验证 DNS 记录是否已正确地发布到您的 DNS 服务器。此过程使用 [nslookup](http://en.wikipedia.org/wiki/Nslookup) 工具，目前支持的平台有 Windows 和 Linux。在 Linux 上，您也可以使用 [dig](http://en.wikipedia.org/wiki/Dig_(command))。

这些说明中的命令在 Windows 7 中执行，我们使用的示例域为 *ses-example.com*，这是通过使用 CNAME 记录的 Easy DKIM 配置的。

在此过程中，您首先要查找适用于您的域的 DNS 服务器，然后查询这些服务器以查看 CNAME 记录。您要查询为您的域名提供服务的 DNS 服务器，因为这些服务器包含的域 up-to-date信息最多，可能需要一段时间才能传播到其他 DNS 服务器。

**验证您的域验证 CNAME 记录是否已发布到您的 DNS 服务器**

1. 通过采取以下步骤查找您的域的名称服务器。

   1. 进入命令行。要进入 Windows 7 中的命令行，请选择 **Start**（开始），然后键入 **cmd**。在基于 Linux 的操作系统中，打开终端窗口。

   1. 在命令提示符处，键入以下命令，其中 *<domain>* 是您的域。此操作将列出所有可用于您的域的名称服务器。

      ```
      1. nslookup -type=NS <domain>
      ```

      如果您的域为 *ses-example.com*，此命令将类似于：

      ```
      1. nslookup -type=NS ses-example.com
      ```

      命令的输出将列出可用于您的域的名称服务器。您将在下一步骤中查询这些服务器之一。

1. 通过执行以下步骤，验证 CNAME 记录是否已正确发布。*请记住，Amazon SES 将生成三条 CNAME 记录以进行 Easy DKIM 身份验证，因此，需要分别对这三条记录重复以下过程。*

   1. 在命令提示符处，键入以下命令，其中 *<random string>* 是 SES 生成的 CNAME 名称，*<domain>* 是您的域，*<name server>* 是您在步骤 1 中找到的其中一个名称服务器。

      ```
      1. nslookup -type=CNAME <random string>._domainkey.<domain> <name server>
      ```

      在我们的 *ses-example.com* 示例中，如果我们在步骤 1 中找到的名称服务器名为 *ns1.name-server.net*，并且 SES 生成的 *<random string>* 为 `4hzwn5lmznmmjyl2pqf2agr3uzzzzxyz`，则我们将键入以下内容：

      ```
      1. nslookup -type=CNAME 4hzwn5lmznmmjyl2pqf2agr3uzzzzxyz_domainkey.ses-example.com ns1.name-server.net
      ```

   1. 在命令的输出中，请验证 `canonical name =` 后的字符串是否与在 Amazon SES 控制台的身份列表中选择域时看到的 CNAME 值匹配。

      在我们的示例中，我们正在 `4hzwn5lmznmmjyl2pqf2agr3uzzzzxyz`*\_domainkey.ses-example.com* 下寻找值为 `4hzwn5lmznmmjyl2pqf2agr3uzzzzxyz.dkim.amazonses.com` 的 CNAME 记录。如果记录已正确发布，我们希望命令具有以下输出：

      ```
      1. 4hzwn5lmznmmjyl2pqf2agr3uzzzzxyz_domainkey.ses-example.com canonical name = "4hzwn5lmznmmjyl2pqf2agr3uzzzzxyz.dkim.amazonses.com"
      ```

## 常见电子邮件验证问题
<a name="troubleshoot-verification-email"></a>
+ **验证电子邮件未送达**：如果完成 [验证电子邮件地址身份](creating-identities.md#just-verify-email-proc) 中的步骤，但在几分钟内没有收到验证电子邮件，请完成以下步骤：
  + 检查垃圾邮件或垃圾邮件文件夹中是否有要验证的电子邮件地址。
  + 确认您尝试验证的地址能够接收电子邮件。使用单独的电子邮件地址（例如您的个人电子邮件地址），将测试电子邮件发送到您要验证的地址。
  + 检查 [Amazon SES 控制台中已验证地址的列表](https://console.aws.amazon.com/ses/home#verified-senders-email:)。确保您尝试验证的电子邮件地址没有任何错误。