外部サーバと連携するアプリケーションのデバックを行う時など、生の通信内容を確認することで原因の切り分けが迅速に行えます。
下記の例では
として、通信を行います
% telnet hoge.example.com smtp HELO example.com MAIL FROM: from_addr@example.com RCPT TO: to_addr@hoge.example.com DATA ← 空行 From: from_addr@example.com To: to_addr@hoge.example.com Subject: test ← 空行 test message. . ← 空行
| コマンド | 説明 | 
|---|---|
| HELO | 接続元ホスト名を名乗る | 
| MAIL FROM: | envelope from (表書き差出人) ※. 通常、バウンスメールの戻り先となる | 
| RCPT TO: | envelope to (表書き送り先) | 
| DATA | この宣言以降、空行を1回入れてメールヘッダとメールボディーを送出する | 
| . | 一番最後の .(ピリオド)1つは、通信の終了を示す ※ .(ピリオド)だけの行で終了したい場合は、..(ピリオド2つ)を入れる | 
| メールヘッダ | 説明 | 
|---|---|
| From: | 差出人 (通常、メールクライアントの「From」はこの値を表示する) | 
| To: | 送り先 (通常、メールクライアントの「To」はこの値を表示する) | 
| Subject: | 件名 (マルチバイトの時は、Base64エンコードする) | 
※. この他、「Message-ID」「Date」「Content-Type」等、もっといろいろあるが、ここでは省略