
您已完成DNS配置 — 但您如何知道它是否正确? 通常当网站无法加载或电子邮件无法发送时,根本原因是一条拼写错误或被遗忘的记录。检查您的DNS和MX记录与设置本身一样重要。本文展示了如何使用在线工具和命令行进行检查。
需要检查的DNS记录
| 记录 | 作用 | 您应该看到什么 |
|---|---|---|
| A | 将域指向服务器的IPv4 | 诸如203.0.113.10的IP |
| AAAA | 将域指向IPv6 | 诸如2400:cb00::1的IPv6(如果有) |
| CNAME | 使一个名称指向另一个 | 目标域,例如www → root |
| MX | 指定收邮服务器 | 邮件服务器名称+优先级值 |
| TXT | 存储文本如SPF、验证 | SPF、DKIM、服务验证 |
| NS | 指定管理域的名字服务器 | 提供者的ns1/ns2 |
方法1 — 使用在线工具检查DNS
对于不愿打开终端的任何人来说,最简单的方法是在线DNS检查器。只需输入域名,该工具就会提取每种记录类型,显示每个值指向的位置。
诸如dnsxray.com的域名健康工具将DNS、邮件服务器、SSL和WHOIS检查捆绑在一个地方 — 单次查询显示您的A、MX、NS和TXT记录。它非常适合概览检查每条记录是否存在且指向正确,无需记住任何命令。
方法2 — 从命令行检查DNS
如果您想要更多细节或正在调试特定问题,dig(macOS/Linux)和nslookup(所有系统)是标准工具。
检查A记录
dig example.com A +short
# 或
nslookup example.com
检查MX记录
dig example.com MX +short
# 结果: 10 mail.example.com.
检查TXT(包括SPF)
dig example.com TXT +short
检查NS记录
dig example.com NS +short
提示:在dig命令后附加@8.8.8.8以直接查询Google的DNS服务器,例如dig example.com A @8.8.8.8 — 在检查传播时很有用,以查看外部DNS服务器是否已有新值。
如何检查MX记录和电子邮件系统
正确的MX记录只是"一半"的工作电子邮件。另一半是反欺骗记录 — 您需要检查所有四个。
1. MX记录
它必须指向正确的邮件服务器,优先级排序正确(较小的数字=第一个)。如果MX指向错误的位置或缺失,传入邮件立即退回。
2. SPF(TXT记录)
SPF声明哪些服务器允许代表您的域发送邮件。示例:v=spf1 include:_spf.example.com ~all。应该只有一条SPF记录。
3. DKIM(TXT记录)
DKIM是附加到每条消息的数字签名,收件人使用它来验证邮件在传输中未被更改。在您的邮件提供者指定的选择器名称下检查它。
4. DMARC(TXT记录)
DMARC告诉收件人如何处理未通过SPF/DKIM的邮件。在_dmarc.example.com检查它;典型值是v=DMARC1; p=quarantine;
深入理解DNS传播
当您更改名字服务器或更新重要记录时,DNS传播是全球递归解析器刷新其缓存以反映新值的过程。理解这个过程有助于您预测需要等待多久 — 以及去哪里查看。
控制传播速度的因素
- TTL(生存时间) — 低TTL(300秒)意味着解析器每5分钟重新获取一次;高TTL(86,400秒= 1天)让它们将旧值保留长达24小时。在更改DNS前,您应提前至少24-48小时降低TTL。
- 解析器层 — 您的ISP解析器、您公司的解析器和公共解析器(8.8.8.8、1.1.1.1)各自维护单独的缓存,因此它们可能在不同时间看到新值。
- 名字服务器更改 — 交换NS记录需要注册表首先更新(长达24-48小时),任何降低TTL的尝试都无法加快这个过程。
同时从多个点检查传播
而不是仅查询您自己的解析器(它可能仍缓存旧值),询问几个不同的DNS服务器:
# 查询Google Public DNS(8.8.8.8)
dig example.com A @8.8.8.8 +short
# 查询Cloudflare DNS(1.1.1.1)
dig example.com A @1.1.1.1 +short
# 查询OpenDNS(208.67.222.222)
dig example.com A @208.67.222.222 +short
# 如果所有三个都一致,传播完成
使用dig查看剩余TTL
# 显示完整输出包括TTL
dig example.com A
# 第二列(IN A前的数字)是剩余的TTL(秒)
最佳实践:在迁移主机或更改名字服务器前,至少提前24小时将A记录TTL降至300秒。如果出错,您可以在几分钟内回滚。一旦迁移稳定,将TTL恢复至3,600或86,400。
详细检查DKIM和排查其故障
DKIM比SPF更复杂,因为记录名称以"选择器"开头,每个邮件提供者定义不同。以下是如何找到正确的选择器并验证记录。
首先找到选择器名称
选择器存在于您的系统发送的任何电子邮件的标头中。将测试消息转发到您可以读取的邮箱,然后查看原始标头并找到以DKIM-Signature:开头的行。例如:
DKIM-Signature: v=1; a=rsa-sha256; d=example.com; s=mail;
# s=之后的值是选择器 — 本例中为"mail"
使用dig检查DKIM记录
# 格式: [selector]._domainkey.[domain]
dig mail._domainkey.example.com TXT +short
# Google Workspace通常使用选择器"google"
dig google._domainkey.example.com TXT +short
# 正确的结果以"v=DKIM1; k=rsa; p=..."开头
常见DKIM错误
| 症状 | 原因 | 修复 |
|---|---|---|
| 找不到记录 | DKIM还未添加或选择器错误 | 从您的邮件提供者获取新密钥并添加TXT记录 |
| 签名失败 | DNS中的密钥与服务器签署的密钥不同 | 从邮件服务器重新下载DKIM公钥 |
| 记录被截断 | DKIM公钥很长;某些DNS编辑器会将其截断 | 在TXT记录中将值分割为多个引用字符串 |
用于调试电子邮件和网络问题的高级dig技术
当问题变得复杂时 — 邮件退回或网站在某些国家加载但在其他国家不加载 — dig具有远超基本查询的高级选项。
一次获取所有记录类型
dig example.com ANY +noall +answer
追踪完整的委派路径
# 显示从根向下的解析路径
dig example.com +trace
# 用于验证NS委派是否正确
# 以及胶水记录是否到位
检查反向DNS(PTR记录)
# 对于IP地址203.0.113.10
dig -x 203.0.113.10 +short
# PTR应该与邮件服务器的主机名匹配
# 缺失或不匹配的PTR会导致发出的邮件被垃圾邮件过滤器阻止
检查SOA记录以查看区域版本
dig example.com SOA +short
# 第三个数字是序列 — 每次区域更改时递增
# 如果辅助名字服务器的序列落后,区域转移有问题
电子邮件退回调试工作流:(1)使用dig MX检查MX → (2)检查发送IP的PTR → (3)验证SPF覆盖该IP → (4)检查DKIM选择器 → (5)检查DMARC策略。按照此顺序,大多数退回问题会在前三个步骤内出现。
比较DNS检查工具
有几种类型的DNS检查工具 — 为您的情况选择正确的。
| 工具 | 优势 | 最适用于 |
|---|---|---|
| dnsxray.com | 一次查询中DNS + MX + SSL + WHOIS | 快速域名概览,无需终端 |
| dig(命令行) | 完整细节 — TTL、追踪、反向DNS | 系统管理员调试特定问题 |
| nslookup | 在Windows/macOS/Linux上工作,无需安装 | 从Windows计算机进行快速检查 |
| MXToolbox | MX + 黑名单 + 实时SMTP测试 | 检查您的IP是否在垃圾邮件黑名单上 |
| Intodns.com | 根据建议为您的区域健康评分 | 启动前一次性审计 |
常见DNS/MX问题
| 症状 | 常见原因 |
|---|---|
| 网站无法加载 | A记录指向错误的IP,或NS仍是旧的 |
| www工作但根域不工作(反之亦然) | 忘记为另一个设置A或CNAME |
| 传入邮件从不到达 | MX指向错误的位置,或没有MX记录 |
| 每封发出的电子邮件都进入垃圾邮件 | 没有SPF或DKIM |
| 多个SPF记录 | 域有两个堆叠的SPF TXT记录 — 必须合并为一个 |
一分钟检查:打开dnsxray.com,输入您的域,并查看DNS和Email部分 — 它同时显示A、MX、NS和TXT,以便您立即看到记录是否缺失或配置错误。
常见问题
问:设置DNS后,检查需要多长时间才能显示?
这取决于TTL — 低TTL(300秒)您会在几分钟内看到新值;高TTL(1天)您可能需要等待更久。同时,不同的DNS服务器可能仍显示旧值。
问:dig和nslookup有什么区别?
它们的工作方式相似 — dig提供更详细的输出,受系统管理员青睐,而nslookup随Windows一起提供,对于基本检查更简单。
问:我的MX是正确的,但邮件仍进入垃圾邮件 — 为什么?
MX仅控制接收邮件。您的发出邮件进入他人的垃圾邮件源于缺失SPF/DKIM/DMARC — 您也需要检查这些TXT记录。
问:我在哪里编辑DNS?
在运行您域的名字服务器的提供者的DNS管理面板中。使用AsiaGB托管,您可以在DirectAdmin中编辑它,或开工单让团队帮助。
总结:设置DNS后始终验证它 — 使用在线工具进行A/MX/NS/TXT概览,或使用dig/nslookup逐个深入检查记录。别忘了SPF/DKIM/DMARC以便传入和发出电子邮件都完全工作。
使用DirectAdmin简化DNS的托管
AsiaGB托管让您可以在DirectAdmin面板中自己编辑DNS、MX和TXT记录,并有团队帮助您检查 — SSD托管起价泰铢500/年,99%正常运行时间,免费SSL。
查看托管计划