SPF 记录中表达同一信息的不同方式之间有什么区别吗?

SPF 记录中表达同一信息的不同方式之间有什么区别吗?

我有一个域名example.com,地址是 。MX 记录是10 cp.example.net。这两个域名位于两个不同的 IP 地址上。假设example.com位于 198.51.100.0,而example.netcp.example.net位于 203.0.113.0。外发邮件也来自cp.example.net

在我看来,我可以用几种不同的方式在 SPF 记录中指示此信息:

发出的邮件与收到的邮件来自同一个地方:

v=spf1 mx -all

外发邮件来自cp.example.net

v=spf1 a:cp.example.net -all

外发邮件来自 203.0.113.0:

v=spf1 ip4:203.0.113.0 -all

这些表示相同信息的不同方式之间有什么区别吗?有什么理由选择其中一种而不是另一种?(我倾向于支持第一种,因为它更短,但如果有任何技术原因选择其他一种,我愿意倾听。)

答案1

另一个主要区别在于接收器:

  • 第一种情况需要他/她进行两次额外的 DNS 查找来评估(一次将 MX 记录解析为主机名,另一次将该主机名解析为一个或多个地址);
  • 第二个需要一次额外的查找(将主机名解析为一个或多个地址);
  • 第三个不需要额外的查找,并且接收器可以直接评估。

答案2

这些表示的不同之处在于您可以在不修改 SPF 的情况下进行更改:

  • 如果您只选择 mx,您将能够更改 IP 或 MX 指针而无需修改 SPF。
  • 如果是 a:cp.example.net,则您的 spf 将绑定到 cp.example.net 名称。
  • 使用 ip4:203.0.113.0 您将能够更改 MX,但不能更改 IP(如果不修改 SPF)。

如果您的邮件服务器是唯一发送电子邮件的服务器,则 MX 非常好。如果您需要其他主机发送邮件,则添加 A 或 IP 记录。

相关内容