あどけない話

インターネットに関する技術的な話など

Gmail の転送と SPF

昨日、知人から言われて気がついたのですが、Gmail で転送の設定をしていると、転送の際に SMTP MAIL FROM を gmail.com に書き換えていますね。

SPFと転送の相性問題に対する解決案の案1と案2のいいとこ取りみたいな感じかな。

Gmail では転送した結果のエラーメールと、単なるエラーメールを区別するために、転送の際にローカルパートを書き換えています。

たとえば、Gmail が以下のようなメールを受け取ったとします。

MAIL FROM: 
RCPT TO: <ユーザ名1@gmail.com>

example.com へ転送する設定では、以下のように転送します。

MAIL FROM: <ユーザ名1+caf_=ユーザ名2=example.com@gmail.com>
RCPT TO: <ユーザ名2@example.com>

このメールに対し、バウンスが起これば、こうなります。

MAIL FROM: <>
RCPT TO: <ユーザ名1+caf_=ユーザ名2=example.com@gmail.com>

一方、単なる宛先間違いで帰って来たメールは、こうなっています。

MAIL FROM: <>
RCPT TO: <ユーザ名1@gmail.com>

という訳で、転送によるエラーメールと、単なるエラーメールが区別が付きます。前者は、ローカルに保存し、後者は転送すればいいですね。

追記

よく考えたら、これは SRS の亜種ですね。Gmail のは VERP に近いけど、SRS 自体も VERP の亜種です。。。

あと、送信者のアドレスを保存しているので、エラーメールはローカルに保存するのではなく、送信者に送り返せばいいですね。