我们正在将我们的一个 smtp 服务器从一个托管服务提供商 (A) 移至另一个托管服务提供商 (B)。由于此移动,服务器的 IP 地址必须更改。
我们的计划如下:
- 在新设施建立克隆系统。
- 为新的 IP(提供商 B 拥有)注册反向 DNS,地址为 mail.company.com
- 将 mail.company.com 的正向 DNS TTL 更改为一小时。
- 将其放置三天(假设这是缓存记录过期/删除缓存所需的时间)回复:目前有多少比例的名称服务器遵守 TTL?
- 将 mail.company.com 的正向 DNS 更改为指向新系统的提供商 B 的 IP 地址。(并将 TTL 重新提升至 24 小时)
- 大约一周后关闭提供商 A 站点的系统。
这是一个合理的计划吗?我们可以做些什么来尽量减少发送和接收邮件的中断?我对发送电子邮件的担忧之一是那些使用反向 DNS 和正向 DNS 来验证机器是否正常运行的系统。我以为收到的邮件问题不大。我是否遗漏了过程中的任何东西?
答案1
您是否真的需要构建一个新服务器而不是仅仅移动旧服务器?
同时更改 rDNS 和 A 记录。我认为提前更改 rDNS 没有任何意义。
好主意。
DNS 的工作方式并非如此。DNS 记录不会“传出去”。DNS 是一种拉动技术,而不是推动技术。您希望 TTL 足够低,以便 DNS 记录不会在已解析 DNS 记录并将其缓存在缓存中的服务器上缓存过长的时间。缓存中尚未有 DNS 记录的服务器在执行 DNS 记录查找时将立即获取新的 DNS 信息。
好主意,但 24 小时对我来说似乎有点长。我通常将 1 小时设置为我的 TTL。这个时间足够短,可以让我们快速进行更改,也足够长,不会给我们的名称服务器带来任何过度负载。
好主意
DNS 记录不会传播,而是缓存。无需等到它们“传播出去”,因为 DNS 的工作方式并非如此。在 TTL 指定的时间段内未向您发送电子邮件的邮件服务器将查找 DNS 记录并立即找到新的 DNS 信息。在 TTL 指定的时间段内向您发送电子邮件的任何服务器都会在 TTL 的有效期内将旧的 DNS 信息缓存在缓存中。当 TTL 的有效期到期时,它们将执行新的查找并立即获取新信息。在计划切换前约 24 小时将 TTL 设置为 1 小时应该足以降低您错过一些传入电子邮件的风险。此外,大多数邮件服务器都会尝试发送电子邮件 48 小时,因此即使一些电子邮件服务器在切换期间“错过”您,它们也应该继续重试 48 小时并在能够连接时发送电子邮件。
我们经常为客户做这样的事情。我们在周五晚上 8 点更改 DNS 记录,到晚上 9 点左右,电子邮件就可以顺利传输到新服务器。
答案2
听起来不错。请确保在 DNS 中将两个邮件服务器都列为受保护的外发邮件服务器。这包括 DomainKeys 之类的内容。