簡単な例から始めましょう。メーリングリストがあり、次のRFC2822コンテンツを送信するとします。
From: <coolstuff@mymailinglist.com>
To: <you@yourcompany.com>
Subject: Super simple email
Reply-To: <coolstuff-threadId=123@mymailinglist.com>
This is a very simple body.
ここで、VERP(または別のリターンパスを使用する他のバウンス追跡メカニズム)を実装するメーリングリストから送信するとします。それがのリターンパスを持つとしましょうcoolstuff-you=yourcompany.com@mymailinglist.com
。SMTPセッションは次のようになります。
{S}220 workstation1 Microsoft ESMTP MAIL Service
{C}HELO workstation1
{S}250 workstation1 Hello [127.0.0.1]
{C}MAIL FROM:<coolstuff-you=yourcompany.com@mymailinglist.com>
{S}250 2.1.0 me@mycompany.com....Sender OK
{C}RCPT TO:<you@yourcompany.com>
{S}250 2.1.5 you@yourcompany.com
{C}DATA
{S}354 Start mail input; end with <CRLF>.<CRLF>
{C}From: <coolstuff@mymailinglist.com>
To: <you@yourcompany.com>
Subject: Super simple email
Reply-To: <coolstuff-threadId=123@mymailinglist.com>
This is a very simple body.
.
{S}250 Queued mail for delivery
{C}QUIT
{S}221 Service closing transmission channel
ここで、{C}および{S}は、それぞれクライアントおよびサーバーコマンドを表します。
受信者のメールは次のようになります。
Return-Path: coolstuff-you=yourcompany.com@mymailinglist.com
From: <coolstuff@mymailinglist.com>
To: <you@yourcompany.com>
Subject: Super simple email
Reply-To: <coolstuff-threadId=123@mymailinglist.com>
This is a very simple body.
次に、さまざまな「FROM」について説明します。
- リターンパス(リバースパス、エンベロープ送信者、エンベロープ送信者と呼ばれることもあります。これらの用語はすべて同じ意味で使用できます)は、
MAIL FROM
コマンドのSMTPセッションで使用される値です。ご覧のとおり、これはメッセージヘッダーにある値と同じである必要はありません。受信者のメールサーバーのみが、メールの先頭にReturn-Pathヘッダーを追加することになっています。これにより、SMTPセッション中に実際のReturn-Path送信者が記録されます。Return-Pathヘッダーがメッセージにすでに存在する場合、そのヘッダーは削除され、受信者のメールサーバーによって置き換えられます。
SMTPセッション中に発生するすべてのバウンスは、Return-Pathアドレスに戻る必要があります。一部のサーバーは、すべての電子メールを受け入れ、受信者のメールボックスに配信するための空きスレッドができるまで、ローカルでキューに入れます。受信者が存在しない場合は、記録されたReturn-Path値にバウンスする必要があります。
すべてのメールサーバーがこのルールに従うわけではないことに注意してください。一部のメールサーバーは、FROMアドレスにバウンスします。
FROMアドレスは、FROMヘッダーにある値です。これは、メッセージの送信者であると想定されています。これは、ほとんどのメールクライアントで "FROM"と見なされるものです。電子メールにReply-Toヘッダーがない場合、すべての人間(メールクライアント)の返信はFROMアドレスに戻る必要があります。
Reply-Toヘッダーは、送信者(または送信者のソフトウェア)によって追加されます。すべての人間の返信にも対処する必要があります。基本的に、ユーザーが「返信」をクリックした場合、Reply-To値は、新しく作成されたEメールの受信者として使用される値である必要があります。Reply-To値はどのサーバーでも使用しないでください。クライアント側(MUA)での使用のみを目的としています。
ただし、ご存じのとおり、すべてのメールサーバーがRFC標準または推奨事項に準拠しているわけではありません。
うまくいけば、これは物事を明確にするのに役立つはずです。ただし、何かを逃した場合は、お知らせください。回答します。