奇怪的 MX 问题/子域问题

奇怪的 MX 问题/子域问题

我对 DNS 区域中的 MX 和通配符 A 条目有点困惑。

想象一个区域 foobar.com 具有这些 dns 设置(NS 设置在那里,省略)

foobar.com IN A 1.2.3.4
*.foobar.com IN A 1.2.3.4

foobar.com IN MX 10 mail.otherhost.com

发送邮件至[电子邮件受保护]这将转到 mail.otherhost.com。好的。

发送邮件至[电子邮件受保护]这将转到 1.2.3.4。

据我了解,这是正确的https://www.ietf.org/rfc/rfc1912.txt有“2.7通配符记录”和示例(反之亦然,但无论如何)。

我现在的问题是:在获取(“解析”)MX 主机时,像 Postfix 这样的 MTA 如何从主机部分“剥离”子域部分?

我的理解问题是:如果顶级域名是.com,这很简单。 Host是.com之前的部分。但有许多顶级域名带有次顶级域名,例如.co.at(奥地利)。

有任何想法吗?

答案1

在获取(“解析”)MX 主机时,像 Postfix 这样的 MTA 如何从主机部分“剥离”子域部分?

他们不这样做。请求地址的 MX 记录。如果不存在,则使用 A 记录来确定目标 IP 地址。

在您的示例中[email protected],用于传递的子域是some-subdomain.foobar.com。发送 MTA 请求该地址的 MX。在您的示例中没有记录,因此请求 A 记录。除了通配符之外没有其他任何一个*.foobar.com匹配,返回地址1.2.3.4。这是尝试递送的地址。

CNAME 记录使此过程变得更加复杂,但也不是很复杂:如果存在 CNAME,那么它会先于其他任何事情进行解析。 (这就是为什么同一个域条目不能同时拥有 CNAME 和 MX。)

相关内容