Skip to main content

DSN:SMTP電子メールの配信ステータス通知

Internet Technologies - Computer Science for Business Leaders 2016 (六月 2026)

Internet Technologies - Computer Science for Business Leaders 2016 (六月 2026)
Anonim

SMTPプロトコルの簡単な見方だけでも、通常のHELOの他に、EHLOもあります。 拡張 SMTPサーバーは、その機能を元の標準を超えてアドバタイズします。これらの1つはDSNです。 DSN? DNAとDDTは十分ではありませんか?

電子メールが信頼できないと主張するには、誰かが " …彼らのサーバをより良くする。それは私のメールを食べた… "これは珍しいことではないが、これらの疑惑を支持する理由はあまりない。

配達 S 術後 N RFC821(1982年)以来、批准が行われている。 SMTPプロトコルのDATA部分が終了し、サーバーが配信のために電子メールを受け入れるとすぐに、それはそれを担当します。何らかの理由で受信者に届かない場合は、エラーの通知とともに元の送信者に送り返す必要があります。これは、あまり知られていない電子メールをもたらしました。

それとは別に、この古い会議では、エラーメッセージが表示されたり、 何も あなたが知っていた場合 何も :メールが到着したか、到着していない可能性があります。多くの場合、エラーメッセージは、エラーメッセージがない場合と同様に役立ちます。電子メールがますます重要になってきて、これはもはや満足できるものではなくなっています(前と同じように)。

SMTPへのDSN拡張

RFC 1891では、SMTPプロトコルの拡張が提案されているため、より信頼性が高く使い易いDSNシステムが実現するはずです。これは、MAILおよびRCPTコマンドの拡張セットです。

EHLOなし、楽しみなし

まず、サーバーがDSNをサポートしていることを確認する必要があります。したがって、私たちは彼にEHLOと言い、慎重に耳を傾けなければなりません。もしそれが機能リストのどこかでDSNで応答すれば、我々の要求に応えることができるだろうと推測することができる。そうでない場合は、別のサーバーを試してみるか、DSNなしでメールに戻ってください。例えば:

220 larose.magnet.at ESMTP Sendmail 8.8.6 / 8.8.6; Sun、1997年8月24日18:23:22 +0200EHLO localhostHello- localhost 127.0.0.1、あなたにお会いできてうれしく思います。250-EXPN250-VERB250-8BITMIME250-SIZE250-DSN250-ONEX250-ETRN250-XUSR250ヘルプ

幸いなことに、DSNが見つかりました。

DSN送信者拡張

次のコマンドは、通常はMAIL FROMです。 DSNでは、これは変わりません。ただし、RETとENVIDの2つの追加オプションがあります。

RETオプションは、MAILコマンドに任意に配置されましたが、他の場所でも同様にここに収まります。目的は、配信エラーが発生した場合に返される元のメッセージの量を指定することです。有効な引数は、FULLおよびHDRSです。前者は、完全なメッセージがエラーメッセージに含まれるべきであることを意味し、HDRSは、サーバに失敗したメールのヘッダのみを返すように指示する。 RETが指定されていない場合は、サーバーが何をすべきかによって決まります。ほとんどの場合、HDRSがデフォルト値になります。

ENVIDは本当に送信者に属しています。彼女(または、むしろ)のメールクライアントは、これを利用する唯一のクライアントです エンベロープ識別子 。その目的は、送信者に、おそらく発行されたエラーメッセージが対応する電子メールを伝えることです。このIDのフォーマットは、基本的に送信者の想像力に委ねられています。この例ではENVIDは使用しません。

MAIL FROM:[email protected] RET = HDRS250 [email protected] …送信者OK

どうやら、私たちは私たちのDSNにヘッダを戻したいだけです。

DSN受信者拡張

RCPT TO:公平な共有の拡張を得る:NOTIFYとORCPT。

NOTIFYはDSNの本当の心です。それはサーバーに伝えます いつ 配信ステータス通知を送信する。第1の可能な値はNEVERであり、いかなる状況においてもDSNを送信者に返さなければならないことを意味する。これはDSNなしでは不可能でした。それからSUCCESSがあります。SUCCESSはあなたのメールがその目的地に到着したときにあなたに通知します。 FAILUREはSUCCESSの対応です。配信中にエラーが発生した場合はDSNが届きます。最後のオプションはDELAYです。配送が異常に遅れても通知されますが、実際の配送の成果(成功または失敗)はまだ決まっていません。決して 必須 それが指定された場合は唯一の引数であり、残りの3つはコンマで区切られたリストで表示されます。 SUCCESSとFAILUREはかなり強力なチームを構成し、あなたのメールに何が起こったのかを(ほぼ)あなたに伝えます。

ORCPTの目的は、 元の たとえば、別のアドレスに転送された場合など、電子メールメッセージの受信者。このオプションの引数は、元の受信者の電子メールアドレスとアドレスタイプです。アドレスの種類が最初に来て、その後にセミコロンと最後にアドレスが続きます。例えば:

RCPT TO:[email protected] NOTIFY = FAILURE、DELAY ORCPT = rfc822; [email protected]250 [email protected] …受信者ok(待ち行列に入れる)

これは私たちが知っているようにデータが続き、うまくいけば、あなたに成功を通知する配達状況の通知があります。

DSNは機能しますか?

もちろん、このすべての美しさは、送信者から受信者までのメール転送エージェントがDSNをサポートしている場合にのみ機能します。いつか彼らはそうするでしょう。