【如何校验邮件地址的有效性】第四篇 :原理三

从对源服务器环境的影响

为了能够从一开始就发送RCPT TO命令,这是我们的目标,我们需要服务器发送MAIL FROM命令并从中接收OK响应(代码250)。但是,这个行动有很大的后果。这里是许多邮件服务器实施了一堆反垃圾信息的措施。

MAIL FROM命令需要一个参数,其中我们指定要发送的电子邮件的发件人。我们将引用发件人电子邮件地址的域部分作为源域假设我们的源域是example.com,我们的发件人电子邮件地址是verifier@example.com,看看我们的SMTP会话如何继续:

C: MAIL FROM:<verifier@example.com>
S: 250 2.1.0 OK 91si19491992ioi.66 - gsmtp

这看起来不是很复杂,那是什么东西呢?一旦我们使用了MAIL FROM命令,我们已经放弃了我们的源域。这是许多垃圾邮件技术正在等待的。一旦他们获得了您的源域名,他们就开始检查它。其中一些执行非常复杂的检查。请注意,即使在收到MAIL FROM命令之前,某些邮件服务器也可能执行其中一些检查(#5,#6,#7)

源检查#1 - 是否有邮件服务器?

我们将发件人确认verifier@example.com因此,目标邮件服务器可能想知道域example.com是否有MX记录目标邮件服务器因此获得example.com的 DNS MX记录如果没有可用的MX服务器,它可能将传入的邮件视为垃圾邮件或假冒,并拒绝进一步与我们的客户沟通。

来源检查#2 - 是否活着?

一些服务器不认为MX记录的存在足够好。他们尝试连接到这些MX服务器,以确定它们是否存活。如果没有再运行MX服务器,他们可能会拒绝再次与您交谈。

来源检查#3 - 有邮局帐户吗?

SMTP RFC规定,通过SMTP接受电子邮件的每个域都必须拥有Postmaster帐户。在我们的示例中,这意味着邮箱postmaster@example.com必须存在。某些SMTP服务器需要这些源服务器尝试发送电子邮件以符合RFC。这就是为什么他们执行电子邮件验证过程来检查邮箱postmaster@example.com是否真的存在。

来源检查#4 - 发件人地址是否有效?

另一种反垃圾邮件技术是验证发件人的电子邮件地址。这与Postmaster帐户的检查方式类似。如果源域邮件服务器上不存在发件人的邮箱,那么他们回复一条错误状态到您的MAIL FROM命令。

来源检查#5 - 客户端是否列入黑名单?

打击垃圾邮件的一种非常常见的方法是使用一个或多个黑名单。检查客户端的IP(我们的示例中为198.51.100.123)和/或源域的IP地址,如果它们被列入黑名单,则不允许进一步的通信。对于手动黑名单查找,您可以尝试在线黑名单检查器

来源检查#6 - 是否有良好的反向记录?

此方法检查客户端的IP地址(在我们的示例中为198.51.100.123)。邮件服务器尝试获取其反向DNS记录值得信赖的邮件服务器通过具有有效的反向DNS记录的IP地址进行操作。如果丢失,垃圾邮件更有可能进入。一些邮件服务器更进一步,只有rDNS记录的存在对他们来说是不够的。他们需要反向域从mailmxsmtp开始在我们的示例中,mail.example.com将是一个很好的域名。

来源检查#7 - 是否有良好的SPF记录?

一个非常常见的技术是检查SPF记录。SPF代表发件人政策框架,这是一个定义,允许谁代表一个域发送电子邮件。SPF记录是DNS中的TXT记录,具有定义允许发送邮件的邮件服务器列表的特殊语法,但是它们还定义了如果他们尝试代表特定域发送电子邮件,应如何处理未列出的服务器。在我们的示例中,我们从IP地址198.51.100.123运行我们的客户端。如果在允许代表源域名example.com发送电子邮件的服务器中找不到此IP地址,那么我们的尝试将被拒绝。

各种邮件服务器将实现这些检查的不同子集,因此,如果您没有正确配置所有配置,您可能会成功地在一台服务器上验证/发送电子邮件,并在另一台服务器上发生故障。如果您想通过所有这些支票,您将必须:

  • 选择发件人电子邮件地址,使其域名存在。
  • 确保该域的MX记录。
  • 确保MX记录指向正在运行的SMTP服务器。
  • 使SMTP服务器正常运行。它必须接受Postmaster邮箱和发件人电子邮件地址的电子邮件。
  • 没有您正在运行验证软件的服务器,列入黑名单。
  • 确保其IP地址具有与发件人电子邮件地址域匹配的有效反向记录,并且其FQDN以mailmxsmtp开头

如果目标邮件服务器实施任何这些检查,它可能会也可能不让您继续在SMTP会话中。一些邮件服务器可能允许您继续,并且只需静默地将邮件从您发送到垃圾桶,如果您发送任何。对于电子邮件验证目的,这种情况不会是一个问题。其他邮件服务器将向MAIL FROM命令报告错误无论如何,如果发送MAIL FROM并接收状态码250,最后可以发送RCPT TO

 

EmailCamel专注全球邮箱验证,让发邮件更容易!领取+200邮箱验证量,快速体验

扫码关注我们(已有+5000关注),获取邮箱验证及海外群邮干货!