Fromアドレスが置き換わる
二日続けてメール関連の話。外部から受信したメールに返信しようとすると、そのアドレスが
hoge@fuga.net
であるべきところが
hoge@mailsrv.hogehoge.com
に変わってしまうという現象がありました。hogehoge.comは受信側(つまり、私が管理している組織)のドメインで、mailsrvは受信メールサーバのホスト名。
うーん、なぜだろう。@mailsrv.hogehoge.comというアドレスがつくっていう現象は、mailsrv上でmailxなどを使って自分のアドレスを指定しないでメールを発信したときに発生します。む、するとFromのアドレスが不正なんじゃないなな。
SMTP手順で再現性を確認。
telnet mailsrv.hogehoge.com 25 Trying maionnected to XXX.XXX.XX.X. Escape character is '^]'. 220 mailsrv.hogehoge.com ESMTP Sendmail 8.14.X/8.14.X; Thu, 19 Mar 2009 17:34:12 +0900 (JST) EHLO www 250-mailsrv.hogehoge.com Hello test.hogehoge.com [XXX.XXX.XX.X], pleased to meet you 250-ENHANCEDSTATUSCODES 250-PIPELINING 250-8BITMIME 250-SIZE 250-DSN 250-ETRN 250-DELIVERBY 250 HELP mail from:rougeref@hogehoge.com 250 2.1.0 rougeref@hogehoge.com... Sender ok rcpt to:hoge@hogehoge.com 250 2.1.5 hoge@hogehoge.com... Recipient ok data 354 Enter mail, end with "." on a line by itself From: hogehoge This is test. . 250 2.0.0 n2J8YCXXXXXXX Message accepted for delivery
SMTPで指定する発信元アドレス(mail from)はエンベロープとして使用されます。もし上記の例の用に本文中にFromでアドレスを指定されると、ヘッダはそちらが優先されます。で、上記のように指定するとFromのアドレスはhogehoge@mailsrv.hogehoge.comとなることを確認。正解だった模様。
メール受信サーバのログを確認すると、この現象が起きたメールを発信したユーザはメーラとしてWinbiffを使用していて、早速インストールしてみると自分のメールアドレスの指定にドメイン名を入れなくてもエラーにならないことを発見。現象を起こした発信者へ確認すると、これがビンゴだった模様。その人、他の人からもアドレスがおかしいと何度か言われたとのことでした。
ちなみに、Thunderbirdのユーザ設定では、自アカウントのメールアドレスには@を含めたドメイン名を指定しないとちゃんとエラーになります。outlookなんかはどうなんだろう。