DNS 中的 MX 记录:可信的标志吗?
每个电子邮件地址都以一个域名结尾,也就是 @ 后面的部分。邮件要想送达,服务器就必须知道这个域名的邮件该送到哪里。这正是互联网“电话簿”里一行小小记录的任务:MX 记录。它虽小,却不可或缺……而且非常适合用来识破假地址。
DNS:互联网的电话簿
计算机只认识数字,也就是 IP 地址,例如 203.0.113.10。人类则更喜欢名字,例如 example.com。DNS 负责在两者之间翻译,就像手机通讯录把“妈妈”变成一个电话号码。
对于网站,向 DNS 提出的问题很简单:“这个网站在哪个地址?”回答是一条 A 记录(较新的 IPv6 地址则用 AAAA 记录)。浏览器直接前往这个地址,就这么简单。
邮件有自己专属的路牌:MX
电子邮件享有特殊待遇:它有一种专属的记录类型,叫 MX(Mail eXchanger,“邮件交换器”)。它回答的是另一个问题:“发往 @这个域名 的邮件,应该联系哪台服务器?”
为什么要单独设一块路牌?因为接收邮件的机器往往不是显示网站的那台。一家公司可以把网站放在某个托管服务商那里,而把邮件交给 Google 或 Microsoft。MX 的意思就是:“网站在这里,但信件要送到那里。”
网站不需要绕这个弯:浏览器按地址访问网站,仅此而已。而对于电子邮件,一个想要接收邮件的域名必须声明 MX。标准里确实有一个备用方案(如果没有 MX,服务器会尝试域名本身的地址),但这只是历史遗留,正规的域名不会依赖它。没有 MX,就像房子没有信箱。这正是《一封电子邮件如何从发件人到达收件人》这篇指南中的第 3 步。
| 服务 | 向 DNS 提出的问题 | 记录类型 |
|---|---|---|
| 网站 | “网站在哪里?” | A、AAAA |
| 电子邮件(接收) | “这个域名的邮件该送到哪里?” | MX |
| 电子邮件(防护) | “谁有权以这个域名的名义发信?” | TXT(SPF、DMARC) |
主力和替补
一个域名可以声明多条 MX 记录,每条都有一个优先级数字。要记住的规则是:数字越小越优先,就像打高尔夫球。其他的都是替补,就像坐在板凳上的守门员:只有主力没有响应时才会上场。它看起来是这样的:
example.com. MX 10 mail1.example.com.
example.com. MX 20 mail2.example.com.
在这里,邮件会先发往 mail1(优先级 10)。如果这台服务器宕机,就改试 mail2(优先级 20)。Gmail 等大型服务商都会这样声明多条 MX,确保不丢失任何一封邮件。
可信的标志……但要打个问号
有 MX,是最起码的正规表现。真正的公司、真正的机构、真实的个人,都希望能收到回信。所以他们的域名都有信箱。
发件人域名没有 MX,就是一个警报信号。这意味着“发件人”里显示的地址什么也收不到:如果您回信,您的邮件将无处可去。这个地址很可能是编造的,或者发完就被扔掉了。批量制造地址的垃圾邮件和钓鱼邮件常常如此。
注意,这个问号很重要!有 MX 并不能证明对方诚实。诈骗者自己买一个域名,两分钟就能给它加上 MX,甚至还能配置好 SPF、DKIM 和 DMARC。另一个常见的误解:MX 说明的是邮件在哪里到达,而不是从哪里发出。发送服务器不必是 MX;规范发信的是 SPF,详见指南《网络钓鱼:诈骗者如何让邮件成功送达》。
总结一句:没有 MX,大有疑问;有 MX,是个好开头,但还要继续核实。
Baitback 为什么要检查它
用 Baitback 分析一封邮件时,工具会取出“发件人”地址的域名,并向 DNS 询问:这个域名有 MX 吗,或者至少有备用地址吗?如果都没有,Baitback 就会显示警报(“该域名无法接收电子邮件:一次性或编造的地址”),并在警报分数上加 15 分。
这项检查从不单独使用:它会和其他线索叠加(域名几天前才注册、名称模仿某个品牌、SPF 验证失败……)。正是这些线索合在一起推高分数,帮助判断是否需要举报。
自己动手,10 秒钟就能查
在回复陌生人、点击链接或支付任何费用之前,每个人都应该养成这个习惯。有三种方法:
- 最简单的:把邮件粘贴到 Baitback 中,它会连同其他检查一起自动完成。
- 在电脑上(Windows、Mac 或 Linux),打开终端并输入:
在 Mac 和 Linux 上,也可以使用:nslookup -type=mx example.com
如果回答中没有任何“mail exchanger”或“MX”行,说明该域名没有信箱。dig mx example.com +short - 在线查询:许多免费的“DNS 查询”网站只需点一下就能显示一个域名的 MX 记录。
您有自己的域名吗?如果它要接收邮件,请确认它有 MX。如果它从不收发邮件,就告诉全世界:一条“空 MX”,再加一条禁止任何发信的 SPF(v=spf1 -all),能让诈骗者无法冒用您的名字来骗人。
您知道吗?
- MX 诞生于 1986 年,仅比 DNS 本身晚三年。电子邮件因此成为最早在电话簿里拥有专属路牌的服务之一。
example.com不属于任何人……几乎如此。这个名字,连同example.org以及所有以.example结尾的名字,自 1999 年起就被保留下来专门用作示例。谁也买不到:这就是各种指南都用它的原因。- 还有一种“空 MX”。自 2015 年起,域名可以声明
MX 0 .:这就相当于在信箱上贴了一张“谢绝来信”的贴纸。服务器看到后就知道没必要再尝试了。 - 13 个名字,数百份副本。DNS 的最顶端是根服务器,用 A 到 M 这 13 个字母命名。但每一个都在世界各地复制了数百份:很可能就有一台离您不远。
- DNS 有记忆。每个回答都会被记住一段时间,时长由域名自己设定,叫做 TTL:从几分钟到一天不等。所以修改 MX 之后,可能要过几个小时才能在各处生效。
- DNS 是互联网的电话簿;MX 记录说明哪台服务器负责接收一个域名的邮件。
- 网站不需要 MX,电子邮件需要:想要接收邮件的域名必须声明 MX。
- 可以有多条 MX:优先级数字最小的先上,其他的是替补。
- 发件人域名没有 MX:严重的警报信号。Baitback 会发现这一点,并在分数上加 15 分。
- 有 MX 并不能证明诚实:它只是最低要求,不是保证。