如何为 Windows 2003 SMTP 服务器设置故障转移解决方案?

如何为 Windows 2003 SMTP 服务器设置故障转移解决方案?

我目前在租用的 Windows 2003 Server VM 上运行 Windows SMTP 服务器。有时我的托管公司网络出现故障,我的客户无法通过我为他们提供的 SMTP 服务器主机(例如 smtp.mycompany.com)发送电子邮件。

我想提供一个故障转移解决方案,这样如果我的主 Windows 2003 SMTP 服务器发生故障,所有 SMTP 流量将自动转移到位于另一个数据中心的另一个托管 VM (smtp2.mycompany.com)。可以使用 Windows 完成此操作吗?我知道有 HA 代理和 Nginx,但处理 Linux 超出了我的能力范围 - 这是显而易见的,否则我不会问这样一个新手问题。:) 但是,我愿意租用处理故障转移的服务。谢谢。

答案1

您对这个问题想得太多了。DNS 已经为您提供了解决方案:多个 MX 记录。将 smtp2.mycompany.com 添加为您的域的另一个 MX 记录,但为其赋予比现有 MX 记录更高的优先级值。发件人通常会选择优先级较低的服务器。

我说一般是因为有些损坏的 MTA 会随机选择一个,而有些则只选择第一个。绝大多数损坏的 MTA 都是垃圾邮件发送者,因此这没什么损失。

但如果这些是用于处理外发电子邮件的内部电子邮件服务器,则 MX 记录对您无济于事。可能的选项包括:

  • 负载均衡器(但这样并不能获得数据中心的生存能力,只能获得主机的生存能力)
  • 基于 DNS 的故障转移(您必须等待 DNS 复制和客户端 DNS 缓存超时发生)
  • DNS 负载平衡(您的客户端必须足够智能,才能在每次 SMTP 重试时重复 DNS 查询)

相关内容