什么是灰名单?

灰名单(Greylisting)是一种反垃圾邮件技术:接收邮件服务器会暂时拒收来自陌生发件人的邮件,告诉对方稍后再试,对方重试后邮件即被接受。其原理在于,正规邮件服务器会自动重试,而许多垃圾邮件系统从不重试。

定义

灰名单是一种由邮件传输代理(代表域名接收邮件的软件)执行的垃圾邮件过滤方法。当邮件来自接收服务器不认识的发件人时,服务器既不接受,也不直接拒收,而是发出临时拒绝,相当于说:请稍后再来。

这个名字道出了其中的逻辑。黑名单是明确的拒绝,白名单是明确的接受,而灰名单介于两者之间,是一种有意为之的“待定”。接收服务器在首次接触时暂缓判断,观察发件人接下来的举动。行为规范的发件人会按照邮件标准的要求重试,从而获得接受;而在一次失败后就放弃的发件人,永远无法送达。

灰名单之所以有效,是因为发件人的行为存在不对称性。配置正确的邮件服务器会把临时失败视为正常现象,将邮件排队等待再次尝试,因为短暂故障在电子邮件中很常见。相比之下,许多批量垃圾邮件操作是为高速一次性投递而设计的,并不维护重试队列,因此一次临时拒绝就足以让这些垃圾邮件消失。灰名单把电子邮件协议的一项基本要求变成了一个低成本的过滤器。

工作原理

邮件到达时,启用灰名单的服务器会记录三项信息,通常称为三元组:发送服务器的 IP 地址、发件人邮箱地址和收件人邮箱地址。它会检查之前是否见过完全相同的三元组。如果没有,服务器就会以 4xx SMTP 回复代码(常见为 451)返回临时失败,按照邮件标准,这表示稍后再试,而不是放弃。具体的代码和措辞因邮件服务器软件而异。

此时发送服务器面临选择。正规服务器会把 4xx 响应视为暂时性错误,将邮件保留在发送队列中并安排重试。邮件标准规定重试间隔至少为三十分钟,放弃时间为数天,但实际实现差异很大。Sendmail 约十五分钟后重试,Postfix 约十六分半钟后重试,Microsoft Exchange 则有自己的时间表。当重试到达且已过足够时间时,服务器会识别出熟悉的三元组并接受邮件。许多灰名单系统随后会将该三元组或发送 IP 加入自动白名单,此后的邮件即可无延迟送达。

为了减少误拒,现代灰名单比严格的三元组模型更宽松。大型发件人使用服务器池投递,因此重试完全可能来自与首次尝试不同的 IP。为此,许多系统会将同一网段内的地址视为等同,或利用发件人的 SPF 记录识别整个授权发送池,这样来自该池中任意服务器的重试都被视为同一发件人。

为什么它对邮件送达率很重要

对大多数发件人来说,灰名单只是延迟,而不是障碍。信誉良好的邮件平台会正确重试,所以被灰名单拦下的邮件只是稍晚一点到达,通常在首次尝试后约十五分钟。接收服务器接受的取舍是:首次接触时有少许延迟,换来在相当一部分低成本垃圾邮件到达邮箱之前将其过滤掉。

不过,对于时效性强的邮件,这种延迟确实会成为问题。密码重置链接、一次性验证码和订单确认通常需要在几秒内送达,而十五分钟的灰名单延迟可能导致重置链接过期,或让客户以为邮件丢失而再次尝试。在发送池配置不当、重试来自已识别网段之外的服务器,或某个域名的多台 MX 服务器采用不一致的灰名单策略(导致重试打到另一台对首次尝试毫无记录的服务器)时,灰名单也可能出现误判。

灰名单对任何验证邮箱地址的人也很重要,这正是它与列表质量的交汇点。当验证服务首次与启用灰名单的服务器建立 SMTP 连接时,可能会在服务器确认邮箱是否存在之前就收到 4xx 临时拒绝。服务器既未接受也未否认该地址,所以单次尝试无法得出确定的有效或无效结果。不考虑灰名单的验证工具可能会直接将地址标记为未知,因此妥善处理灰名单是准确验证的一部分,而不是边缘情况。

VeriMails 如何应对

VeriMails 在验证的 SMTP 阶段能够识别灰名单,而不会被其难住。当 VeriMails 与收件人邮件服务器进行实时 SMTP 握手并收到符合灰名单特征的 4xx 临时拒绝时,不会把这一次响应当作最终答案。验证逻辑会区分临时延迟与永久拒绝,因此不会把启用灰名单的服务器误判为失效邮箱。

这种处理方式是 VeriMails 在服务器启用灰名单时仍能返回更清晰结果的原因之一。目标是返回清晰可靠的结果,即有效、无效、Catch-all(全收)或其他明确定义的状态,而不是每遇到灰名单就给出含糊的“未知”。灰名单只是 VeriMails 所考虑的多种真实服务器行为之一,确保结果反映真实的送达情况,而不是某台邮件服务器的怪癖。VeriMails 报告清晰的送达信号,不分配含糊的数字评分。

您可以通过 VeriMails REST API 进行实时验证,也可以上传 CSV 批量验证整份列表。发送前验证地址,意味着灰名单只会延迟发往本就可送达的收件人的邮件,而不会在充满无效地址的列表上雪上加霜。验证低至每封 $0.0019,10,000 积分仅需 $19,年付套餐低至 $12.50/月。每个新账户均包含 100 免费积分,无需信用卡,且积分永不过期。

常见问题

不会。灰名单是临时拒绝,而不是永久拦截。接收服务器返回 4xx 错误,指示发送服务器稍后再试。配置正确的发送服务器会自动重试,邮件随后即可送达,通常只有约十五分钟的短暂延迟。只有来自从不重试的服务器的邮件才会无法送达。
当验证工具首次与启用灰名单的服务器建立 SMTP 连接时,服务器可能会在确认邮箱是否存在之前就发出 4xx 临时拒绝。由于服务器既未确认也未否认该地址,验证工具无法在这一次尝试中给出确定的有效或无效结果,因此会将地址报告为未知或需要重试。
这取决于接收服务器和发件人的重试计划。灰名单窗口通常只有几分钟,但收件人实际感受到的延迟取决于发送服务器下一次尝试投递的时间。常见邮件服务器会在约十五到二十分钟内重试,所以大多数被灰名单拦下的邮件会在这一时间内送达,不过配置不当的发件人可能要久得多。
对大多数发件人来说,这只是轻微延迟,而不是送达问题,因为信誉良好的邮件平台会正确重试。灰名单对密码重置、一次性验证码等时效性邮件影响最大,这类邮件可能在延迟期间过期。先验证列表可以确保发送的地址真实存在,这样任何灰名单延迟都只会影响本就可送达的邮件。

免费试用 VeriMails

注册即送 100 免费积分,无需信用卡。今天就把邮箱验证付诸实践。

免费开始
无需信用卡。积分永不过期。