メールサーバ移行があまりに大変そうなので整理してみる

メールサーバ移行です。要件は

  • A)IPアドレス変わる
  • B)ドメイン一緒
  • C)MTA変わる(qmailpostfix)
  • D)POPサーバ変わる(vpopmail → dovecot)
  • E)OSはバージョンアップのみ(FreeBSD4.11 → FreeBSD6.2)
  • F)ユーザとなるべく連絡とりたくない。
    • POP3サーバをIPアドレスで指定してもらってるんで、それの変更だけで済めばベスト

AとBからDNSの変更も伴います。

MTAの移行

来たメールを漏れなく、重複無く確保したい。
DNSの変更後、ユーザ(移行するメールアドレスにメールを送る人)に浸透するまでに時間がかかるので、その間にどうメールを受信するか。
まず、新サーバのMTAは、旧サーバに配送するように設定する。
次に、DNSのMXレコードをいきなり新サーバに変える。
そうすると、DNSが安定するまでしばらく新サーバと旧サーバにSMTPアクセスが来るが、最終配送先はすべて旧サーバになる。
こうするのは、この時点ではPOP3クライアント(メールアドレスのオーナー)が、まだ旧サーバを参照しているからだ。

POP3サーバの移行

ユーザにはしばらく旧サーバをPOP3してもらうことにして、さて、どのタイミングで新サーバをPOP3してもらうかが問題だ。こちらの指定した時間にMUAPOP3サーバの設定を変えてもらうとか、正直やりたくない。これもできれば事前にサーバの新旧に依存しない名前で指定してもらって、後はDNSの移行だけで済ませたい。つまり、どのタイミングで新サーバがPOP3されるかがわからないという難問。
理論的には、新サーバがPOP3されたときに、次のことが起こればよい。

  • a)初回は旧サーバのメールボックスを見に行く
  • b)新サーバのMTAが新サーバのメールボックスに配送するようになる
  • c)以後POP3は新サーバを見に行くようになる

aの過程でDeleGateが使えるかな…とか思ってんだけど。
これは自動化しようと思えばできそうだけど…。
それか新サーバがPOP3された瞬間に俺の携帯にメールが届くようにすれば、俺ができるだけ速やかに旧サーバから新サーバにメールを移動して、b)の作業をやれば済む。その間に届いたメールは手作業で移動。
つうかそこまでする必要あんのかな…。ちょっとユーザーと話して1日でもメールの使用止めてもらえばはるかに楽なんだろうけど。人となるべく関わりたくない悲しい俺の悩み。