2009-08-05 8 views
136

我々は次のヘッダーに電子メールを送っている私達の郵送申請の場合:return-path、reply-to、およびfromの動作の違いは何ですか?

FROM: [email protected] 
TO: [email protected] 
Return-PATH: [email protected] 

我々が直面している問題は、一部の電子メールサーバーがメッセージをすぐに立ち直るとから、または逆の経路(マーケティング@顧客を使用することです.com)の代わりに、バウンス管理サーバーに送信してください。私たちはすべてのバウンスを捕まえることができるならば、reply-toが返信パスと同じであることをヘッダーで修正するかどうかを知りたい。

他のアイデアは大歓迎ですか?

私たちは、参照として以下のドキュメントを使用している: VERP RFC Bounce Messages

SMTP Log Parsing to get Bounces

EDIT 1:私たちは、この決意を得ることができるかどうかを確認するための情報のいくつかのより多くのビットを。

メッセージを中継する電子メールサーバーがreply-toとreturn-pathのどちらを使用するかを知りたいと思います。メッセージをリレーしている最初のsmtpサーバが拒否されると、それはreply-toに送信されますが、1ホップ後に発生した場合、返信パスに送信されます。

+1

[送信者]と[優先度]フィールドを指定するとどうなりますか?私はそれがバウンスやオフィスタイプの自動返信の場合に、異なるメールサーバーにどのように影響するかについてもっと知りたいと思います。誰ですか? – PapaFreud

+0

https://www.postmastery.com/blog/about-the-return-path-header/ –

答えて

213

簡単な例から始めましょう。電子メールリストがあるとします。これは、次のRFC2822のコンテンツを送信します。

From: <[email protected]> 
To: <[email protected]> 
Subject: Super simple email 
Reply-To: <[email protected]> 

This is a very simple body. 

さて、あなたはVERP(または別のリターン・パスを使用して他のいくつかのバウンス追跡メカニズム)を実装メーリングリストからそれを送信しようとしているとしましょう。 [email protected]のリターンパスがあるとします。

{C}と{S}は、それぞれ、クライアントとサーバーのコマンドを表し
{S}220 workstation1 Microsoft ESMTP MAIL Service 
{C}HELO workstation1 
{S}250 workstation1 Hello [127.0.0.1] 
{C}MAIL FROM:<[email protected]> 
{S}250 2.1.0 [email protected] OK 
{C}RCPT TO:<[email protected]> 
{S}250 2.1.5 [email protected] 
{C}DATA 
{S}354 Start mail input; end with <CRLF>.<CRLF> 
{C}From: <[email protected]> 
To: <[email protected]> 
Subject: Super simple email 
Reply-To: <[email protected]> 

This is a very simple body. 
. 

{S}250 Queued mail for delivery 
{C}QUIT 
{S}221 Service closing transmission channel 

:SMTPセッションは次のように見えるかもしれません。さんがS "FROM" 異なるを説明してみましょう、

Return-Path: [email protected] 
From: <[email protected]> 
To: <[email protected]> 
Subject: Super simple email 
Reply-To: <[email protected]> 

This is a very simple body. 

受信者のメールは次のようになります。

  1. リターンパスは、(時にはリバースパスまたは封筒-から呼び出される - これらの用語の全ては交換可能に使用することができる)SMTPセッション中に使用される値です。ご覧のとおり、これは実際にメールヘッダーにある値と同じである必要はありません。受信者のメールサーバーだけがメールの先頭にReturn-Pathヘッダーを追加するはずです。 SMTPセッション中に実際のReturn-Path送信者が記録されます。 Return-Pathヘッダーが電子メールに既に存在する場合、そのヘッダーは削除され、受信者のメールサーバーに置き換えられます。

    SMTPセッション中に発生するすべてのバウンスは、Return-Path値に戻る必要があります。一部のサーバーでは、すべての電子メールを受け入れ、受信者のメールボックスに配信するための空きスレッドがあるまで、ローカルでキューに入れます。受信者が存在しない場合は、記録されたReturn-Path値に戻す必要があります。

    すべてのメールサーバーがこのルールに従っているわけではありません。一部のメールサーバーは、それをFROMアドレスに戻します。

  2. FROMアドレスは、実際にFROMヘッダーにある値です。これはメッセージが誰から来たのかと考えられています。これは、ほとんどのメールクライアントでは「FROM」とみなされます。電子メールにReply-Toヘッダーがない場合、すべての人間(メールクライアント)の返信はFROMアドレスに戻る必要があります。

  3. Reply-Toヘッダーは、送信者(または送信者のソフトウェア)によって追加されます。それはすべての人間の返答にも取り組むべき場所です。基本的に、ユーザーが「返信」をクリックすると、返信先の値は新しく作成された電子メールの受信者として使用される値になります。 Reply-To値は、どのサーバーでも使用しないでください。これは、クライアント側で使用するためのものです。

    しかし、わかるように、すべてのメールサーバーがRFC標準または推奨事項に従うわけではありません。

この情報を明確にするのに役立ちます。しかし、私が何かを見逃したら、私に知らせて、私は答えようとします。

+0

これは非常に役に立ちます。御時間ありがとうございます。一つの質問。いくつかのバウンスがreturn-pathの代わりにreply-toに送られることはありますか? – Geo

+0

高地、 はい。それは完全に可能です。そこには壊れたSMTPサーバがたくさんあります。あるいは少なくとも違ったルールを解釈しています。 乾杯! Dave –

+0

Thxの大きな説明です。リターンパスに関する1つの質問:メールが自分のSMTPを(メールの送信者として)去ったとき、実際にリターンパスが定義されていないことを正しく理解していますか?受信者のメールサーバーだけがメールへのリターンパスを追加しますか? – sl3dg3

115

Return-PathReply-Toについて考えるもう一つの方法は、カタツムリと比較することです。

メールで封筒を送信するときは、返信先アドレスを指定します。受信者が存在しない場合、またはメールを拒否した場合、postmasterはエンベロープを返信先に返します。メールの場合、の返信先住所はで、Return-Pathです。

封筒の中に手紙が入っていて、手紙の中に「宛ての連絡をに送る」ように手紙を送ることがあります。電子メールの場合、の例のアドレスReply-Toです。

本質的に、返信先アドレスはSMTPのReturn-Pathヘッダーに匹敵し、SMTPのReply-Toヘッダーは文字に含まれる返信指示に似ています。

+11

これは素晴らしいアナロジーです。 –

+0

@Jesse Hobart +1すてきな説明のために、わかりやすくしてくれてありがとう、私はもっと混乱しました。 – Abhishek

+9

このアナロジーでは取り上げられていない主なコンセプトは、「Return-Path」ヘッダーが*​​受信**メールサーバーによって追加され、***が*送信者**によって追加されないということです。それで、もっともっとそういうものです:封筒の中に書いておきたいものは何でも書くことができますが、それを郵便局に持ち帰り、運転免許証(または他のID)を提示して、それを送る前に封筒。言い換えれば、 'Return-Path'ヘッダーは受信SMTPサーバーによって実行されるチェックと同じ信頼性があり、他のSMTPサーバーは簡単にスプーフィングすることができます。 – cdhowie

1

Redmineインスタンスが送信するメールにReturn-Pathヘッダーを追加する必要がありました。 私はgreatwolfに同意します。送信者が正しい(デフォルトではない)Return-Pathを決定できるだけです。 電子メールは、デフォルトのメールアドレス:[email protected]で送信されます。 しかし、行動を開始した実際のユーザーは、修正方法を知っているので、バウンスメールを受け取ることが欲しいです受信者のメールが間違っています(他の猫が鞭打っているアプリケーション管理者ではありません:-))。 これを使用して、アプリケーションサーバーのeximとzimbraを最終的な会社のメールサーバーとして使用すると完全にうまく動作します。

私はWebフォームでReply-To:アドレスを使用します。質問のタイトルがあるためここに来た人のための

4

。誰かがフォームに記入すると、Webページはそのページの所有者に自動メールを送信します。 From:は自動メール送信者のアドレスなので、所有者はウェブフォームからのものであることを認識します。アドレスはユーザーがフォームに記入したアドレスなので、所有者は返信して連絡を取ることができます。

関連する問題