对特定子域使用备用服务器 - DNS 设置

对特定子域使用备用服务器 - DNS 设置

我正在尝试为域名设置 DNS 记录,以便mail.domain.com使用与任何其他请求不同的服务器*.domain.com。当我试图弄清楚如何做到这一点时,我意识到我可能会陷入困境。

我尝试了一些方法,但最终由于错误导致无法加载“zone domain.com/IN”。当时的区域文件如下所示(不隐藏信息,因为简单的 DNS 查找无论如何都会显示所有内容):

$TTL    1800
@       IN  SOA ns1.domain.com. hostmaster.domain.com. (
            1393205447 ; last update: 2014-02-24 01:30:47 UTC
            3600 ; refresh
            900 ; retry
            1209600 ; expire
            1800 ; ttl
            )
             IN      NS      ns1.domain.com.
                     NS      ns2.domain.com.
                     NS      ns3.domain.com.
            MX 10   mail.domain.com.
ns1.domain.com. IN A    198.000.000.125
ns2.domain.com. IN A    141.0.000.89
ns3.domain.com. IN A    198.000.00.114
@   IN A    107.000.00.138
*   CNAME   @
mail.domain.com.    IN A    162.00.000.72
mail    CNAME   mail.domain.com.

因此,首先,我试图做的是可接受的“良好做法/最佳实践”,其次,如果是,我该如何设置,以便邮件请求转到第二台服务器的 IP,然后从那里,我是否需要将 MX 记录设置为:priority mail.domain.com。(我在将 mail.domain.com 请求和 mx DNS 设置重定向到第二台服务器 IP 方面具体做错了什么

注意,我正在使用 digitalocean,所以我有一个可以为我创建区域文件的 DNS 输入面板。

答案1

为位于不同网络上的主机创建 A 记录时,无需指定 FQDN。

更正您的区域配置:

mail IN A 162.00.000.72
@ IN MX 10 mail.domain.com

从客户角度来看,情况如下:

  • 当邮件服务器检查 MX 路由时,它会找到mail.domain.com主要路由。
  • 当邮件服务器进行查找时,mail.domain.com它将返回162.00.000.72

为什么你的 A 记录中不需要 FQDN:

mail.domain.com. IN A 162.00.000.72

这完全没问题。


mail.3rdparty.com. IN A 162.00.000.72

这是无效的。原因:你没有权威3rdparty.com


mail IN A 162.00.000.72

这是有效的。原因:任何不以结尾的单词.都会$ORIGIN附加上。
所以,mail实际上意味着mail.domain.com,如果你有$ORIGIN = domain.com

一些历史:

实际上.意味着所有域的根。

以此记录为例:

mail.domain.com.

它的含义是:

  • mail:子域名或“主机”
  • domain:域
  • com:顶级域名 (TLD)
  • .: 根

这就是为什么不将 a 附加.到您的记录中会导致意外记录,例如mail.domain.com.domain.com.

但在大多数现代 DNS 服务器中,它们都假定您指的是末尾的点。

相关内容