MX优先级服务器行为


10

这是关于MX脯氨酸优先级的问题。如果我有两个具有不同优先级的服务器作为MX:

  • MX 10服务器
  • MX 20服务器B

协议是否保证MX 10是首选?提交者可以出于主要可用性之外的其他任何原因选择次要对象吗?

换句话说:如果我的serverA MX正常运行并且具有(理论上)无限的连接能力,我可以确定没有人会尝试与serverB进行连接吗?

Answers:


14

在正常情况下,服务器将连接到第一个可用的服务器,但是出于很多原因,第一个服务器可能对一个人不可用,但对另一个人不可用。其中一些原因包括您无法控制的事情。但是,一般规则是尝试从最低到最高,直到出现响应,然后再使用该服务器。

垃圾邮件是例外情况。通常,编号较低的MX记录将指向托管服务,垃圾邮件过滤等。编号较高的MX记录将是“故障保护”,并且通常直接指向服务器的IP。想法是,如果托管服务失败,邮件仍将被传递。有了这种想法,垃圾邮件发送者将查找最高的号码并在那里发送邮件。


我读了您有趣的答案以及这篇文章:blog.zensoftware.co.uk/2012/07/02/…他们在这里建议不要使用辅助mx,但是...我有一个问题:如何进行备份并避免垃圾邮件巨星?有可能吗?
托比亚

@Tobia当然可以,但是它只是意味着没有使其指向您自己的服务器,但这也意味着如果您的托管服务失败,您将没有冗余。这仅取决于您对服务的信任程度
Drifter104

但也要记住,临时故障通常会由发送方MTA排队并重试;即使它们不是(或出现永久错误情况),发给发送者的NDR也可能会导致手动重试(或带外通信)。
eggyal 2015年

3

您不确定,因为客户端也可能会出现一些网络错误,无法连接到serverA,然后修复网络并尝试连接到serverB。


好的,让我们考虑一下理论上的情况,客户端可以“选择”服务器B还是始终在主MX之前尝试?我想了解MX优先级是否类似于负载平衡或故障转移。
Tobia

1
客户始终可以选择是否对其进行编程来选择这样做。如第一个答案所述,在生产服务器中对客户端进行编码的一般方式是从低到高。垃圾邮件客户通常会从高到低工作。SMTP测试客户端有时甚至会让最终用户决定
netniV 2015年

0

这完全取决于编写SMTP引擎并尝试联系的人。按照设计,它以升序尝试MX,然后尝试A记录。但是,程序员可以随意执行或不执行此操作,因为他们认为合适,并且邮件通常仍会被送达...


做还是不做,没有尝试?答案和上述答案的注释中几乎已经涵盖了这一点。
netniV

我发现以上答案不完整,因为没有人提到流程的A记录部分。
Brian Knoblauch 2015年

回答是,请检查评论。这里提到了优先级等。无论如何,只能通过从MX记录中得出记录来使用记录本身。
netniV

1
不正确 在确定邮件主机时,不仅是MX记录指向的A记录,而且指定的域A记录也被用作万不得已的情况。
Brian Knoblauch 2015年

1
正确编写的邮件软件测试域的A记录。该行为在RFC中指定。
Law29 2015年
By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.