我遇到了 SPF 和 Sender-ID 的软失败,并通过发送电子邮件到 进行了测试[email protected]
。
我的设置:
1 VPS 托管 1 个网站
Postfix 仅发送电子邮件
没有收到电子邮件。收到的电子邮件由 Gmail 处理
我的 DNS 中的 Txt 记录是(只有 1 条 txt 记录):
"v=spf1 a include:_spf.google.com ~all"
我的 A 记录是:
域名:example.com.au
VPS机器名称:host
@ 123.12.12.123 <----- My VPS IP Address
host 123.12.12.123
直到 2 天前,它还在运行,我也没有做任何更改。但现在我遇到了以下消息的软故障。
认证报告
----------------------------------------------------------
SPF check details:
----------------------------------------------------------
Result: softfail (SPF-Result: SoftFail)
ID(s) verified: [email protected]
DNS record(s):
example.com.au. SPF (no records)
example.com.au. 600 IN TXT "v=spf1 a include:_spf.google.com ~all"
example.com.au. 600 IN TXT "google-site-verification=TyBn81xyFF2Qt3icqC8tD-EyZxwhKS1ce5AV6StaxHs"
example.com.au. AAAA (no records)
_spf.google.com. SPF (no records)
_spf.google.com. 300 IN TXT "v=spf1 include:_netblocks.google.com include:_netblocks2.google.com include:_netblocks3.google.com ~all"
_netblocks.google.com. SPF (no records)
_netblocks.google.com. 3600 IN TXT "v=spf1 ip4:64.18.0.0/20 ip4:64.233.160.0/19 ip4:66.102.0.0/20 ip4:66.249.80.0/20 ip4:72.14.192.0/18 ip4:74.125.0.0/16 ip4:173.194.0.0/16 ip4:207.126.144.0/20 ip4:209.85.128.0/17 ip4:216.58.208.0/20 ip4:216.239.32.0/19 ~all"
_netblocks2.google.com. SPF (no records)
_netblocks2.google.com. 3600 IN TXT "v=spf1 ip6:2001:4860:4000::/36 ip6:2404:6800:4000::/36 ip6:2607:f8b0:4000::/36 ip6:2800:3f0:4000::/36 ip6:2a00:1450:4000::/36 ip6:2c0f:fb50:4000::/36 ~all"
_netblocks3.google.com. SPF (no records)
_netblocks3.google.com. 3600 IN TXT "v=spf1 ~all"
这是为什么?我添加的 Txt 记录是否错误a
?我还需要a
像ip address
这样添加我的 vps:
"v=spf1 a ip4:123,12,12,123 include:_spf.google.com ~all"
答案1
如果输出包含连接地址就好了,但根据提供的报告,您似乎是通过 IPv6 连接的。我之所以这么说,是因为在处理a
SPF 记录中的指令时,它查找的example.com.au. AAAA
是 而不是example.com.au. A
。
如果客户端通过 IPv6 连接,则查找记录不可能A
返回与连接地址匹配的地址,因此AAAA
在这种情况下完全跳过该记录而只进行查找是正常行为。
假设上述内容在您的环境中是可行的,您将需要确保您的 IPv6 地址也包含在 SPF 记录中(通过a
或其他指令)。