DNS 黑名单检查器

邮件进垃圾箱,源头比任何地方都更常在这里:发送 IP 或域名被列入了黑名单。本检查器会解析你的域名,就它的每个 IPv4 地址询问十个基于 IP 的名单(Spamhaus ZEN、Barracuda、SpamCop、CBL、PSBL、UCEPROTECT、SORBS 等),并就域名本身询问三个基于域名的名单(Spamhaus DBL、URIBL、SURBL)——从这台服务器出发,通过服务器自己的解析器,就像一台接收邮件的服务器那样去问。

想持续盯着它?用 myeventwatch 免费监控——到期和宕机提醒,无需绑卡。

这项检查测的是什么

黑名单是互联网关于垃圾邮件的共享记忆。每个名单运营者监视着垃圾邮件陷阱、举报和发送行为,并把违规者发布为一个 DNS 区域:要问“这个发件人被列入了吗?”,邮件服务器会查询一个特殊名称——发件人的 IP 地址反转后加上名单的区域——并读取答案。返回一个地址就意味着被列入,而确切的 127.x 代码往往会说明原因(例如 Spamhaus 对其垃圾邮件、被攻陷主机和策略子名单使用不同的代码)。没有答案就意味着未被列入。本页调用 sysosx 服务器上的 GET /api/check/dnsbl,它并行地为每个地址执行九个 IP 区域外加三个域名区域的查询,并将结果缓存十分钟。

第三种答案是大多数检查器藏起来的那一种:错误。名单会超时、拒绝来自错误解析器的查询,或者干脆失败——而一个把“因为查询失败所以没有答案”折叠成“未被列入”的检查器,是在制造干净结果。这个检查器不会这样做。每个区域都会报告已列入、未列入或错误,错误会保留它的原因(超时、服务器故障,或运营者的查询来源拒绝代码),汇总也会单独统计错误数。带有错误的结果只是一幅不完整的画面,并且会被如此标注:一个没有作答的名单,在任何方向上都没有结论。

如何阅读结果

按名单的份量来权衡列入结果。被列入 Spamhaus ZEN、Barracuda 或 SpamCop 会影响全球很大一部分邮件服务器上的投递——把它们当作火情来处理。被列入较小或较激进的名单(UCEPROTECT 的较高级别、仅针对退信散射的名单)份量较轻,有时反映的是邻居的行为而不是你的;在惊慌之前先读运营者自己的说明,并注意 Backscatterer 的列入具体意味着:你的服务器被认为会向伪造地址发送退信——这是一个配置缺陷,不是一次垃圾邮件活动。如果基于域名的名单标记了域名本身,那会跟着域名走到任何 IP:在域名列入问题解决之前,换服务器也没有用。而如果你的邮件是由一家大服务商发送、而不是从你自己的服务器发送,那么 IP 部分讲的会是你的网站服务器——大多无关紧要——域名部分才是真正算数的那一部分。

配套检查是电子邮件送达能力检查:黑名单评判你的声誉,SPF/DKIM/DMARC 证明你的身份,而垃圾邮件文件夹通常是两者共同作用的产物。完整的来龙去脉在我们的指南为什么你的邮件会进垃圾箱里——两半如何在接收服务器做决定的那一刻结合起来。想看一个名称指向哪里、而不是名单对它怎么说,请使用DNS 传播检查器。

常见问题

什么是 DNSBL,被列入到底意味着什么?

DNSBL(DNS 黑名单)是一份 IP 地址名单(在 DBL 中则是域名名单),其运营者认为这些地址发送或助长垃圾邮件,并将其发布为一个特殊的 DNS 区域。邮件到达时,邮件服务器会查阅这些名单:被列入是一个强烈的负面信号,可能意味着拒收或进垃圾邮件文件夹,取决于接收服务器给该名单多大的权重。被列入不是一项法律裁决,而各名单收集证据的方式天差地别——被 Spamhaus ZEN 列入几乎在任何地方都有份量;被一个小名单列入则可能几乎毫无份量。本工具正是为此才逐个名单分别报告。

为什么工具检查的是我的域名的 IP 地址,而不是域名本身?

因为名单就是这样运作的:邮件是从一个 IP 地址发出的,基于 IP 的名单以该地址为键。本工具将你的域名解析为它的 IPv4 地址,并逐个检查。随之而来有一个警告:如果你的网站和邮件共用一个 IP(小型托管中很常见),被检查的地址就是对的那一个;如果你的邮件由一家服务商发送——Google、Microsoft、某个通讯服务——发送 IP 是服务商的,而不是你的域名的,它们不会出现在这里。在那种情况下,基于域名的名单(Spamhaus DBL、URIBL、SURBL)才是结果中适用于你的部分。

某个区域“错误”是什么意思?我的域名到底干不干净?

错误意味着那个名单没有作答——超时、服务器故障,或运营者拒绝(例如 Spamhaus 会拒绝经由公共解析器到达的查询,并返回一个说明这一点的特殊代码)。错误不是一个干净结果:诚实的读法是“这个名单的结论未知”。本工具绝不把错误折叠成“未列入”,汇总也会单独统计错误数,让你看到画面缺了多少。稍后再试;如果某个区域持续出错而其他区域能作答,就把它的缺席当作一个缺口,而不是一次通过。

我的 IP 被列入了。我该怎么做?

首先,弄清原因:大多数名单都会发布一个查询页面来解释列入原因——从搜索区域名称和你的 IP 入手,跟随名单运营者自己的链接。通常的原因是某个被攻陷的账号或服务器在发垃圾邮件、一个有漏洞的表单或开放中继,或者接手了一个被前任滥用过的地址。先修复原因;在修复之前提出的移除请求通常会被拒绝,或者立刻再次被列入。然后通过运营者的流程申请移除——一旦流量停止,信誉良好的名单会很快移除——并预期有些名单会在数天内自动让条目过期。在等待期间,更深层的修复是我们指南里的那一个:能正常工作的 SPF、DKIM 和 DMARC,这正是当名单数据含糊不清时接收方会退而依据的东西。

为什么查询要通过这台服务器的解析器,而不是 Google 或 Cloudflare DNS?

因为主要的名单运营者、尤其是 Spamhaus,会刻意拒绝经由公共解析器到达的查询——对一个被拦截的查询,其答案是一个特殊的 127.255.255.x 代码,而不是列入数据。本检查器通过服务器自己的解析器询问,就像一台真正的邮件服务器那样,所以得到的答案就是接收服务器会得到的答案。当某个区域仍然拒绝时,结果会写“错误”并显示代码,而不是把拒绝粉饰成数据。