首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >如何测试并实际执行关于邮件的internet域到新服务器的传输?

如何测试并实际执行关于邮件的internet域到新服务器的传输?
EN

Server Fault用户
提问于 2012-06-05 11:32:27
回答 2查看 291关注 0票数 0

我的设置是一个承载域的生产性服务器(例如1.1.1.1),比如说example.com。目前,postfix和速递(只有IMAP)正在做托管邮件的工作。我计划将域传输到一个新服务器(例如1.1.1.2),也使用后缀,但使用dovecot作为新的IMAP服务器。我已经在1.1.1.2上设置了后缀,以接受example.com的所有邮件,这些邮件被传递到邮箱,并且可以通过IMAP访问。所有帐户,包括邮件,都是shell帐户。我对这两台服务器都使用Debian。

在虚拟主机提供程序的set接口中,我能够为example.com设置服务器的IP (A-record)和邮件服务器(MX-record)。目前,它们分别指向1.1.1.1 ( server.example.com )(后者也自动解析为1.1.1.1 )。我不能影响任何TTL设置。而且,我不会更改我的提供者,只会更改托管域的虚拟机。

两个问题:

  1. 我希望让我的旧服务器1.1.1.1将所有接收到的邮件交付给新服务器1.1.1.2进行测试(例如测试邮件筛选器、垃圾邮件识别等,因为并不是所有的设置都是相同的)。这是个好主意吗(例如关于反弹等)?在后缀中实现这一目标的正确方法是什么(类似于中的反向代理)?
  2. 从旧服务器到新服务器执行域传输的最佳方法是:停机时间最小(至少在IMAP帐户转移期间,我确信我需要停止所有邮件服务器),并且没有邮件丢失/延迟?我的想法是让旧服务器将邮件转发给新服务器一段时间,这样也可以从过时的DNS缓存系统接收邮件。

一般来说,我正在寻找一种方便和最佳实践的方式来实现这一点。而且,我不知道我对这两个问题的看法是否指向正确的方向。

EN

回答 2

Server Fault用户

发布于 2012-06-05 12:45:32

要回答第二个问题:

将当前MX记录上的TTL设置为适当的设置(1小时可能更好)。然后将MX记录更改为指向新服务器。然后等待一个小时(或设置TTL所需的时间),以便将任何电子邮件发送到旧服务器(基于某些具有旧MX记录缓存的系统),然后将电子邮件从旧服务器传输到新服务器。

一旦您将MX记录更改为指向新服务器,任何尚未缓存MX记录(旧MX记录)的电子邮件服务器都将立即解析新的MX记录并在那里发送电子邮件。任何具有MX记录缓存的电子邮件服务器(旧MX记录)都将继续向旧服务器发送电子邮件,直到MX记录的TTL过期为止,届时,它们将对MX记录执行新的查找,并找到新的MX记录并在那里发送电子邮件。

票数 1
EN

Server Fault用户

发布于 2012-06-05 18:41:56

除了向第二台服务器提供镜像的圆屋这样的软件之外,没有任何方法可以完成测试。这个级别的测试可能不是必要的;使用telnet进行手动入站测试应该可以。

在您确定交付(入站和出站)按预期工作之后,您可以如下所示:

  1. 在1.1.1.1上设置后缀,将所有用户邮件传递到新服务器1.1.1.2。示例配置:当你的系统是二级MX主机时.
  2. 为1.1.1.2添加一个新的mx记录,并删除现有记录。当队列在1.1.1.1上为空时,关闭后缀将迫使发件人将其传递给新的mx。
  3. 将客户端访问cname从1.1.1.1移动到1.1.1.2 (客户端需要知道他们现有的邮件可能会出现一点)。
  4. 将邮箱内容从1.1.1.1传输到1.1.1.2
  5. 当出站邮件队列为空时,关闭1.1.1.1

如joeqwerty所说,如果寄件人正在缓存,邮件将在发送方排队一段时间;在我的经验中,大多数软件都会尝试其他mx记录。注意,mx记录应该指向实际的主机名,而不是像mail.example.com这样的cname。困难之处在于管理客户端访问;早期与客户沟通将有所帮助。

票数 1
EN
页面原文内容由Server Fault提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://serverfault.com/questions/395661

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档