我正在阅读有关设置SMTP服务器,几乎所有文章都build议确保SMTP服务器的名称在DNS中具有匹配的反向查找(PTR)条目。 但是,当我随便检查gmail设置时,它的smtp服务器都没有匹配的反向查找。
$ dig +short gmail.com MX 20 alt2.gmail-smtp-in.l.google.com. 5 gmail-smtp-in.l.google.com. 40 alt4.gmail-smtp-in.l.google.com. 10 alt1.gmail-smtp-in.l.google.com. 30 alt3.gmail-smtp-in.l.google.com. $ dig +short alt2.gmail-smtp-in.l.google.com. 64.233.168.26 $ dig +short gmail-smtp-in.l.google.com. 74.125.130.27 $ dig +short alt4.gmail-smtp-in.l.google.com. 173.194.219.26 $ dig +short alt1.gmail-smtp-in.l.google.com. 74.125.28.26 $ dig +short alt3.gmail-smtp-in.l.google.com. 74.125.201.27 $ dig -x +short 64.233.168.26 $ dig -x 64.233.168.26 +short oj-in-f26.1e100.net. $ dig -x 74.125.130.27 +short sb-in-f27.1e100.net. $ dig -x 173.194.219.26 +short ya-in-f26.1e100.net. $ dig -x 74.125.28.26 +short pc-in-f26.1e100.net. $ dig -x 74.125.201.27 +short in-in-f27.1e100.net.
所以我有点困惑。 有人可以帮助我了解如何在SMTP中使用反向查找。 当然,我错过了这个概念,我看着Gmail的设置。
UPDATE
读完@雅各布的答案后,我发现:
以下行来自从gmail.com收到的电子邮件元数据:
Received: from mail-qt0-f179.google.com (mail-qt0-f179.google.com [209.85.216.179]) by mx0a-00273201.pphosted.com with ESMTP id 2edpusg15b-1 (version=TLSv1.2 cipher=ECDHE-RSA-AES128-GCM-SHA256 bits=128 verify=NOT)
PTRlogging完美匹配:
$ dig +short mail-qt0-f179.google.com 209.85.216.179 $ dig -x 209.85.216.179 +short mail-qt0-f179.google.com.
所以,据我所知,我正在查看“MX”logging,这是不正确的检查传出。 感谢@HBruijn的详细解释。
另外,我发现电子邮件是从[email protected]电子邮件地址发送的。 但是,传出的SMTP服务器是mail-qt0-f179.google.com这是在google.com域(我期待传出的SMTP服务器也应该在xxxxx.gmail.com域)。
他们确实匹配,谷歌(和大多数提供商)有负载平衡的抽象, gmail-smtp-in.l.google.com.的目的地/ IP gmail-smtp-in.l.google.com. 根据您的请求IP,networking的健康状况,负载等而变化
然而IP地址有一个转发器&&反向dns(FCrDNS)
dig gmail-smtp-in.l.google.com. +short 74.125.29.26 26.29.125.74.in-addr.arpa. 15995 IN PTR qg-in-f26.1e100.net. dig qg-in-f26.1e100.net. +short 74.125.29.26
但是,对入站MXlogging而言,这些都不重要,只发送IP。
MXlogging用于将传入电子邮件定向到某个域的正确SMTP服务器。
就我所知,没有要求那些具有匹配的反向DNSlogging来确保传入电子邮件的可靠传递。
传入的邮件服务器也不必与域用来传输电子邮件的传出SMTP服务器有任何关系。
只有在发送电子邮件时,可靠的传送要求服务器用来标识自己的主机名应该具有匹配的正向和反向DNSlogging。
根据RFC 2505和许多其他文档的build议,为什么要有合适的PTRlogging是为了减less邮件通过SMTP服务器传出的可能性被标记为垃圾邮件。
大多数接收MTA将使用各种反垃圾邮件措施,其中之一是检查他们收到的邮件是否来自与主机名匹配的IP地址,并且该主机名与该域的电子邮件接收主机匹配。
因此,假设您的SMTP服务器正在发送一封电子邮件,该邮件的标头中包含From: [email protected] ,当您的服务器连接到接收[email protected]的MX主机时,该邮件将发送到[email protected]它将会处理其他事情 – 查看连接到它的IP地址的PTRlogging(在这种情况下是你的服务器)。 如果您的服务器的PTRlogging正确parsing为mail.domain.com , Alogging的查找也匹配domain.com点的IP和MXlogging( mail.domain.com ,则接收服务器将白名单 IP,并不会将其视为潜在的垃圾邮件。
事实上,他们使用更多的规则来减less来自垃圾邮件发送者(DNSBLs,贝叶斯规则等)的传入连接的机会。 但这个最好的做法,称为Forward确认反向DNS是一个好的开始。
随着垃圾邮件发送者总是想方设法克服反垃圾邮件措施,以及电子邮件使用量大幅增加的事实,公司可能会有许多dynamic服务器合法地处理多个域名的电子邮件。 所以现在正在使用更新的validation有效SMTP传输的方法。 看看SPF , DKIM , DomainKeys , SenderID等
回到你的问题,谷歌可以以某种方式打破原来的规则的原因是,他们正在使用所有新的方法,所以这个旧的最佳做法是一个小问题。
希望这可以帮助!