![当一条 SPF(TXT)记录来自本地邮件服务器时,如何合并两条 SPF(TXT)记录?](https://linux22.com/image/671924/%E5%BD%93%E4%B8%80%E6%9D%A1%20SPF%EF%BC%88TXT%EF%BC%89%E8%AE%B0%E5%BD%95%E6%9D%A5%E8%87%AA%E6%9C%AC%E5%9C%B0%E9%82%AE%E4%BB%B6%E6%9C%8D%E5%8A%A1%E5%99%A8%E6%97%B6%EF%BC%8C%E5%A6%82%E4%BD%95%E5%90%88%E5%B9%B6%E4%B8%A4%E6%9D%A1%20SPF%EF%BC%88TXT%EF%BC%89%E8%AE%B0%E5%BD%95%EF%BC%9F.png)
我想为我的域添加第二个 SPF TXT 记录,允许外部邮件服务器从我的域发送电子邮件,这样接收端就不会将其归类为垃圾邮件。我读到过,我不应该创建两个单独的 TXT 记录,而应该将它们合并为一个。
我的域上当前也运行着一个邮件服务器,它有以下 TXT 记录:
v=spf1 +a +mx -all
我必须添加以允许外部服务器的是:
v=spf1 a mx include:spf.externaldomain.com ~all
我找到了有关如何用两个include:
' 组合两个记录的相关问题,但由于我现有的记录有一个+a +mx
和-all
,而第二个记录有一个a mx
和~all
,我不确定如何组合它们。显然,我仍然希望我的域上的邮件服务器的记录也能提供正确的 SPF 回复。
答案1
您真的知道您在这里想要实现什么吗?您的原始(简短)记录看起来不错,至少比另一个记录好得多,后者根本没有任何作用。任何没有-all
作为策略的 SPF 记录都没有多大意义,因为它不会阻止未列出的地址声称来自您的域。
如果你有完全控制权externaldomain.com域,您可以选择包括该域的专用 SPF 记录(如果有)。如果该域不是您的,我宁愿避免,include:...
因为它会将您域策略的控制权交给另一个管理员。在后一种情况下,只需在您自己的记录中添加另一个ipv4:
、ipv6:
、 或a:
-type 条目,指向当前的外部邮件服务器。这样做的唯一缺点是,如果外部 MTA 的地址或域名发生变化,您可能需要更新您的记录。
但是,在这种情况下,我选择的解决方案是通过您自己的 MTA 路由邮件。这可以解决任何 SPF 问题。