同一域中两个不同邮件服务器的两个 mx 记录?

同一域中两个不同邮件服务器的两个 mx 记录?

我有一个名为 的域名example.com。我想在这个域名上设置两个邮件服务器。设置这些邮件服务器的主要目的是拥有两个不同的邮件服务器,就好像我们有两个不同的域名 => 所以它不是一个主服务器,另一个用于备份。

MX域名的记录已经example.com存在(所有发送到的邮件[email protected]都会被递送到smtp.example.com),因此我们有

@   3600    IN  MX  1   smtp.example.com

记录A设置如下:

@   600 IN  A   12.12.12.12
smtp    3600    IN  A   13.13.13.13
relay   3600    IN  A   14.14.14.14</pre>

我们可以MX为第二台邮件服务器添加新记录吗?

例如,我们设置一个relay.example.com指向新邮件服务器(ip 14.14.14.14)的新子域。这样,所有发送到 的邮件[email protected]都将发送到relay.example.com

答案1

这应该可以做到:

@     3600 IN A    12.12.12.12    ; irrelevant for mail routing

@     3600 IN MX 1 smtp.example.com.
smtp  3600 IN A    13.13.13.13

relay 3600 IN MX 1 relay.example.com.
relay 3600 IN A    14.14.14.14

笔记:

  • 最后的 MX 记录并非严格要求(根据标准,如果域名没有 MX 记录,则会尝试使用其 A 记录作为后备 - 但有些 MTA 可能不喜欢这样)
  • 不要忘记区域文件中完全合格记录末尾的终止点!

为了避免混淆,这里有一个澄清的变体,它将所有针对 @subdom.example.com 的邮件发送到 MTA reply.example.com:

subdom 3600 IN MX 1 relay.example.com.
relay  3600 IN A    14.14.14.14

答案2

当然可以。一个域名可以有任意数量的MX记录(因此,邮件服务器也可以)。您甚至可以在它们之间设置优先级。例如,MX域名的记录gmail.com如下(您可以通过命令获取host -t MX -v gmail.com):

gmail.com.              3547    IN      MX      5 gmail-smtp-in.l.google.com.
gmail.com.              3547    IN      MX      10 alt1.gmail-smtp-in.l.google.com.
gmail.com.              3547    IN      MX      20 alt2.gmail-smtp-in.l.google.com.
gmail.com.              3547    IN      MX      30 alt3.gmail-smtp-in.l.google.com.
gmail.com.              3547    IN      MX      40 alt4.gmail-smtp-in.l.google.com.

尝试将邮件投递到您域的外部邮件服务器应按照优先级升序排列。相同的优先级意味着冗余(尽管根据我的经验,这不是很好)。

在此示例中,第一次尝试为gmail-smtp-in.l.google.com.,第二次alt.gmail-smtp-in.l.google.com为 ,依此类推。优先级位于最后一列之前。

您可以在自己的域中设置一些类似的服务器。我在您的域中将其设置为辅助邮件服务器,以便在第一个服务器无法正常工作时进行备份。

相关内容