dns mx 记录与反向 dns

dns mx 记录与反向 dns

我需要一些帮助来澄清反向 DNS 和 MX 记录设置。我无法在 Google 上找到明确的答案。案例如下。假设我有域“mydomain.com”,我有一个名为“mail.mydomain.com”的 SMTP 服务器,由 myprovider.com 托管。我想从域 mydomain.com 发送/接收邮件。因此我添加 MX 记录如下:

mydomain.com MX mail.mydomain.com

我还有 A 记录,指向 myprovider.com 服务器 IP(假设是 1.2.3.4):

mail.mydomain.com A 1.2.3.4

现在,我想确保我的邮件能够被送达,因此我检查了反向 DNS。我得到了以下结果:

mail.mydomain.com -> DNS check resolves to 1.2.3.4,

1.2.3.4 -> reverse DNS check resolves to s1.myprovider.com

现在 - 这是否意味着反垃圾邮件反向 DNS 检查失败,因为 1.2.3.4 不会解析回 mail.mydomain.com?但是:它是一个共享服务器,因此它永远不会解析到 my domain.com - 它总是会解析到 myprovider.com - 对吗?这是否意味着邮件可能会被标记为 span?或者:反垃圾邮件过滤器将再进行一次 DNS 检查,检查 s1.myprovider.com 的 IP:

s1.myprovider.com -> DNS check resolves to 1.2.3.4

那么它会判定反向 DNS 匹配吗?哪一个是正确的?

也许我应该以不同的方式去做,我应该将我的 MX 记录直接指向 s1.provider.com,像这样:

mydomain.com MX s1.myprovider.com

然后 s1.provider.com 解析为 1.2.3.4,而 1.2.3.4 解析为 s1.provider.com,所以一切都正常,对吗?(唯一的问题是,我不确定这个“s1.myprovider.com”域名有多稳定 - 也许他们会不时更改它,有时它是“s2.myprovider.com”,这样的设置会失败?)

答案1

我认为您混淆了传入和传出邮件交换器。我将尝试通过分别处理这两者来回答您的问题:

接收邮件

当另一个 MTA 收到邮件时,$localpart@$yourdomain它会执行 DNS 查询(类型MX、数据$yourdomain)。答案是获取是mail.$yourdomain(也可能是它的 IP)。它使用此信息连接到您的计算机的端口 25 并尝试传递邮件。由于另一台机器正在发送(而不是接受),因此它不会根据您的机器进行反垃圾邮件检查。

外发邮件

您想向其他人发送电子邮件$localpart@$yourdomain。您的机器(不必与 MX 记录相同)连接到远程邮件服务器并尝试传递邮件。现在远程机器将进行反垃圾邮件检查。它有来自您机器的两条信息:'HELO/EHLO 名称' 和 IP 地址。

如今,大多数服务器都要求“HELO 名称”是完全合格的域名,并且解析为您的 IP 地址。有些服务器要求您的 IP 地址具有看起来不是动态的反向 DNS(例如dyn-127-0-0-1.example.com)。我遇到过一些服务器,当“HELO 名称”与反向 DNS 不匹配时,会应用速率限制或灰名单,但从未完全拒绝。

我的建议

  • 将您的 MX 记录保留为mail.$yourdomain
  • 如果您还使用这台机器发送邮件,请将“HELO 名称”设置为mail.$yourdomain

使用共享机器发送邮件远非理想,其他用户的滥用很容易让您被列入 DNS 黑名单。

答案2

如果您的主机名是 IP 地址(或包含类似于 IP 地址的字符串,例如 1.2.3.4.yourprovider.net),如果主机名未指向您的服务器,或者如果您没有设置反向 DNS,则您更有可能受到垃圾邮件的骚扰。

据我所知,只要反向 DNS 指向可解析到您的服务器的主机名,并且只要您的主机名是可解析到您的服务器的主机名,您就没问题。只要它们指向同一个位置,反向 DNS 和主机名是否不同都没关系。

相关内容