
当电子邮件未被传递或接收时,最常见的原因之一是MX记录不正确或缺失。MXToolbox是开发人员和服务器管理员常用的免费工具,用于全面检查电子邮件DNS配置——包括MX、SPF、DKIM、DMARC、黑名单和实时SMTP测试。
什么是MX记录?
MX(邮件交换)记录是一种DNS记录,它告诉全球哪台邮件服务器接受您域名的电子邮件。当有人向 [email protected] 发送电子邮件时,发件人的邮件服务器会查找 company.com 的MX记录以找到接收服务器的地址。缺失或不正确的MX记录会导致电子邮件立即退回。
如何使用MXToolbox检查您的MX记录
- 访问 mxtoolbox.com
- 在搜索框中输入您的域名,例如
company.com - 选择 MX Lookup 并按Enter
- 该工具显示所有MX记录及其优先级值
- 验证主机名是否正确 — 优先级数字越小 = 优先接收电子邮件
从命令行检查MX记录(dig MX、nslookup)
除了MXToolbox网站,您还可以直接从自己的终端检查MX记录,无需依赖任何外部服务。当您需要速度或想查询特定DNS服务器时,这非常方便。两个主要命令是 dig(Linux/macOS)和 nslookup(Windows和所有平台)。两者都返回与MXToolbox MX查询相同的数据,但查询在您的计算机上运行。
以简短形式使用 dig 检查MX记录,仅显示您关心的值:
dig MX company.com +short
# 示例输出:
# 10 mail.company.com.
# 20 mail2.company.com.
查看包括TTL和所有部分的完整结果:
dig MX company.com
;; ANSWER SECTION:
company.com. 3600 IN MX 10 mail.company.com.
company.com. 3600 IN MX 20 mail2.company.com.
在Windows或任何没有 dig 的机器上,改用 nslookup:
nslookup -type=mx company.com
# 或指定DNS服务器以绕过缓存:
nslookup -type=mx company.com 8.8.8.8
要更深入地查询,直接查询权威名称服务器以避免过时的缓存值:
dig MX company.com @ns1.yourhost.com
如何读取MX结果(优先级、多条记录、备用)
当MX查询返回多行时,每个主机名前的数字是 优先级(或偏好)。较低 的数字会先被选择。在上面的示例中,10 mail.company.com 首先接收邮件,而 20 mail2.company.com 是一个备用服务器,当第一个服务器离线或满负荷时接管。
- 最低优先级 = 主服务器 — 发件人的邮件服务器总是先尝试这个。
- 更高优先级 = 备用服务器 — 当主服务器无法响应时使用,这样在维护期间邮件不会丢失。
- 相等的优先级值 — 系统会在这些服务器之间随机负载均衡。
- 单个MX记录 — 可以正常工作但没有备用;如果该服务器宕机,邮件会在发件人端排队直到其恢复。
重要提示:MX记录中的主机名必须是解析到真实IP的A/AAAA记录——它不能指向CNAME。RFC规范禁止MX记录指向CNAME,这是某些服务器拒绝邮件的非常常见原因。
MX检查捕获的问题(黑名单、反向DNS/PTR、SPF、开放中继)
彻底的MX检查不仅告诉您记录是否正确——它揭示推送邮件到垃圾邮件或导致邮件被拒的潜在问题:
IP被列在黑名单中(RBL/DNSBL)
如果您的邮件服务器IP出现在Spamhaus或Barracuda等黑名单上,邮件会被立即拒绝或归档到垃圾邮件。MX检查报告您被列入的清单数量并提供请求移除黑名单的链接。
反向DNS/PTR不匹配
接收服务器通常验证发送IP是否具有与其主机名匹配的PTR记录(FCrDNS)。缺失或不匹配的PTR会降低您的信誉分数。使用 dig -x YOUR.IP +short 检查它。
SPF缺失或语法错误
SPF记录省略发送IP或堆积多条记录会导致接收方将邮件视为欺骗。MX检查会在SPF过于宽松(+all)或超过10个DNS查询(PermError)时发出警告。
服务器充当开放中继
SMTP测试检查您的服务器是否在没有身份验证的情况下为外部人员接受和转发邮件。开放中继很快就会被滥用来发送垃圾邮件并迅速被列入黑名单——必须立即关闭。
修复不正确MX记录的步骤
当MX检查标记问题时,按照这些步骤修复根本原因:
- 首先确认正确的值 — 与您的电子邮件/托管提供商核对哪个主机名和优先级是正确的(对于AsiaGB,它是
mail.yourdomain.com,优先级为10)。 - 打开DNS管理 — DirectAdmin → DNS管理,或域名使用的实际名称服务器(运行
dig NS company.com查看谁控制该区域)。 - 移除错误的旧MX记录,然后添加一个新的,其主机名解析为真实A记录,而不是CNAME。
- 调整SPF以覆盖您的IP —
v=spf1 +a +mx +ip4:YOUR.IP ~all并确保只有一条SPF记录。 - 临时降低TTL为300秒然后进行编辑,这样新值传播迅速,等一切稳定后再设回3600。
- 等待传播并重新检查 — 从多个网络运行
dig MX company.com +short,或使用DNS传播检查直到该值全球一致。
其他有用的MXToolbox功能
电子邮件健康检查
一次检查所有内容:MX、SPF、DKIM、DMARC、黑名单、反向DNS——推荐在任何新域名设置上线前使用。
黑名单检查
检查您的服务器IP是否出现在任何电子邮件黑名单上。被列入黑名单的IP会导致电子邮件被拒绝或进入垃圾邮件。
SMTP测试
测试真实的SMTP服务器连接——显示Banner、EHLO、STARTTLS响应。在电子邮件发送完全失败时用于调试非常有用。
DNS传播检查
验证您新更改的MX记录是否已传播到全球DNS服务器。在更改名称服务器后必不可少。
常见问题及解决方法
MX记录缺失或为空
前往DirectAdmin → DNS管理 → 添加MX记录。AsiaGB托管的标准值是 mail.yourdomain.com,优先级为 10。
MX指向错误的服务器
验证MX记录中的主机名是否解析到正确的服务器IP(使用MXToolbox上的A查询进行检查)。
SPF不覆盖您的服务器IP
将您的服务器IP添加到SPF记录:v=spf1 +a +mx +ip4:YOUR.IP ~all
提示:修改任何DNS记录后,在重新测试前请等待24-48小时以确保完全传播。设置较低的TTL值(例如300秒)会加快传播速度,但会增加服务器上的DNS查询负载。
MXToolbox的替代方案
- dnschecker.org — 从多个全球位置检查DNS传播
- mail-tester.com — 测试垃圾邮件评分以及SPF/DKIM验证
- Google Admin Toolbox — 通过Google基础设施检查DNS记录
- dig(命令行) — 在终端中运行
dig MX company.com以快速查询
常见问题(FAQ)
我在哪里可以免费检查MX记录?
有多种免费选项:MXToolbox网站(mxtoolbox.com)、dnschecker.org、Google Admin Toolbox,或在Linux/macOS上使用 dig MX yourdomain.com +short,在Windows上使用 nslookup -type=mx yourdomain.com 进行命令行查询。所有都是免费的且返回匹配的结果。
我应该有多少条MX记录?
至少一条可以工作,但建议两条或以上,每条具有不同的优先级(例如10和20),这样当主服务器离线时备用服务器可以接受邮件——防止在维护或中断期间邮件退回。
更改MX记录后多久才会生效?
这取决于旧记录的TTL。通常允许24-48小时以实现完全全球传播。如果在编辑前降低TTL(为300秒),更改会在几分钟内传播。使用DNS传播检查追踪进度。
当MX记录正确时,为什么电子邮件仍然退回?
原因通常不是MX本身——可能是被列入黑名单的IP、不匹配的反向DNS/PTR、不覆盖发送IP的SPF记录,或MX主机名指向CNAME。运行电子邮件健康检查以找到真正的原因。