![允许从任何子域(PTR、SPF、Gmail)发送邮件](https://linux22.com/image/695711/%E5%85%81%E8%AE%B8%E4%BB%8E%E4%BB%BB%E4%BD%95%E5%AD%90%E5%9F%9F%EF%BC%88PTR%E3%80%81SPF%E3%80%81Gmail%EF%BC%89%E5%8F%91%E9%80%81%E9%82%AE%E4%BB%B6.png)
我使用单个智能主机作为集线器来路由来自我网络的所有电子邮件,以便我可以通过 Gmail 上的 SPF 检查。但是,尽管我总是通过同一台服务器发送,但地址From
可能不同。例如,服务器上的 cron 作业dev.mydomain.com
可能会生成发件人地址[email protected]
。我使用/etc/aliases
将此 cron 电子邮件重定向到我的真实电子邮件地址。此电子邮件使用托管的 Gmail,因此 MXmydomain.com
指向 Gmail 的服务器。
但是,Gmail 不喜欢这些From
地址,可能是因为它们与 上定义的 SPF 记录不完全匹配mydomain.com
。我收到消息说Our system has detected that this message does not meet IPv6 sending guidelines regarding PTR records and authentication
。
我不想必须定义单独的 SPF 记录,以允许我的一个邮件服务器为我想允许在地址中的每个子域提交电子邮件From
。相反,我想允许*@*.mydomain.com
,只要它通过正确的服务器发送。
2016-12-22 14:04:17 1cK3yj-0007Wz-4I <= [email protected] H=(dev.mydomain.com) [2a01:7e00::f03c:91ff:fe79:81b] P=esmtp S=586 [email protected]
2016-12-22 14:04:17 1cK3yj-0007Wz-4I ** [email protected] R=dnslookup T=remote_smtp X=TLS1.2:ECDHE_RSA_AES_128_GCM_SHA256:128 DN="C=US,ST=California,L=Mountain View,O=Google Inc,CN=mx.google.com": SMTP error from remote mail server after end of data: host ASPMX.L.GOOGLE.com [2a00:1450:400c:c07::1a]: 550-5.7.1 [2a01:7e00::f03c:91ff:febb:7422] Our system has detected that this\n550-5.7.1 message does not meet IPv6 sending guidelines regarding PTR records\n550-5.7.1 and authentication. Please review\n550-5.7.1 https://support.google.com/mail/?p=IPv6AuthError for more information\n550 5.7.1 . p21si28305523wmb.29 - gsmtp
我在 Debian 上使用 Exim。
[编辑:原因似乎是反向 DNS/PTR 记录。]
答案1
由于 Google 的消息中提到了 PTR 记录,我认为在这种情况下,问题可能不是出在 SPF 上,而是由您的服务器缺少 PTR 记录引起的。如果您检查消息中提到的 URL:https://support.google.com/mail/?p=IPv6AuthError在“IPv6 的其他指导原则”下,您应该有一条针对您服务器的 PTR 记录(以及一条指向同一 IP 地址的匹配 AAAA 记录)。如果2a01:7e00::f03c:91ff:febb:7422
是您的服务器的 IPv6 地址,则它没有 PTR 记录。