next up previous contents
Next: 5.3 メイル環境の設計 Up: 5. mail の設定 Previous: 5.1.6 Postfixのインストール、設定の準備

5.2 メイルのヘッダー

これまでメイル自身については何も触れてきませんでしたが、実際にメイルシステムを 動作させテストするには、メイルがどのような形式で送られてくるかを知っておく 必要があります。 すべてのメイルはヘッダーとメッセージ本体からなり、ヘッダーとメッセージ本体は ひとつの空行で区切られます。 ヘッダーは、行頭から始まり、[ヘッダー名]: とフィールドからなります (最初のFrom 行は特別)。 ここで、 コロン(:)の後ろの空白以外の文字からがフィールドです。 行頭が空白ならば、前の行の継続として解釈されます。

実際のメイルは、
From mytest@summer00.wakhok.ac.jp Fri Aug  1 17:08:08 2000
Received: from pc2f001.summer00.wakhok.ac.jp ([192.168.0.1])
    by pc2f002.summer00.wakhok.ac.jp (R8/cf1.0) with ESMTP id f6U9c8k89707
    for <noriyo@summer00.wakhok.ac.jp>; Mon, 30 Jul 2001 18:38:08 +0900 (JST)
		        (envelope-from kanayama@inner-root.wakhok.ac.jp)
Received: from mytest@localhost)
    by pc2f001.summer00.wakhok.ac.jp (R8/cf1.0) with ESMTP id RAA01100
    for <noriyo@summer00.wakhok.ac.jp>; Mon, 30 Jul 2001 18:38:07 +0900 (JST)
Date: Mon, 30 Jul 2001 18:38:05 +0900 (JST)
From: mytest <mytest@summer00.wakhok.ac.jp>
Message-Id: <200008010820.RAA01100@pc2f001.summer00.wakhok.ac.jp>
To: mytest@summer00.wakhok.ac.jp
Subject: test

    [ メッセージ本体 ]
のような形式ですが、その外のヘッダーがついていることもあります。 メイルシステムのテストで、特に重要なヘッダーにしぼって以下解説をします。

From

あってもなくても良い。ローカルメーラー(着信時にユーザーのスプールに配送する エージェント)に Unixスタイルのローカルメーラ ( local, LMTP, /bin/mail, mail.local など) を使った場合には通常付加されます。 Unix From 行とも呼ばれ、ucbmail 等のクライアントソフトでは、個々のメイルの 区切りとして判別されます。

Received:

発信人から受信人に届くまでにメッセージを処理した MTA によって付加されます。 従って、複数の MTA を経由して来たならばそれらが全てここに表示されます。 実際の配送経路を知るために非常に重要です。

Date:

発信日時を表します。その他のマシンの時刻とずれている場合もありますが、 細かな時間の相違はマシンの時計のずれに起因する場合もあるので気にしなくても 良いでしょう。しかし、 この日時が受信と数日ずれている場合は、配送経路のどこかのマシンに問題が あるか、過負荷になっている場合が多いので注意を要します。

From:

発信人の e-mail アドレスと Full Name が記載されています。Full Name は、 /etc/passwd の GECOS フィールドから取得されます。
        From: Georg Hogehoge <hogehoge@summer00.wakhok.ac.jp>
また、順序は逆にしても 良く、その場合は以下のように記載されます。
        From: hogehoge@summer00.wakhok.ac.jp (Georg Hogehoge)
勿論、GECOS フィールドに何もない場合や、MUA にパソコン上のソフトを使 っている場合などに、GECOS 情報が記載されていない時もあります。その場合は、 単純なアドレスのみになります。
        From: hogehoge@summer00.wakhok.ac.jp
Internet mail address では、この3つの場合以外のアドレスは許されません。

実際の配送のテストでは、この From: 行のアドレス書き換えにも注意する 必要があります。

Subject:

題名ですが、あってもなくても構いません。発信人の選択項目です。

Message-Id:

日時、ファイル名、マシン名、ドメイン名などから生成される一意の文字列です。 特に、指定しない場合は、MTAが自動的に付加しますが、一部のパソコン用 クライアントでは設定によっては不正な ID を生成するものがあります。 基本的には、こうしたメイルを外部に発信することは禁物です。

To:

受信人のリストです。複数ある場合には、カンマによって区切られます。
        To: name1,name2,name3@summer00.wakhok.ac.jp
ここのアドレスにも注意が必要です。

これがメイルのヘッダーなのですが、実はこれ以外に、MTA の間での 送受信時のみ存在し、local に落ちると消えてしまうものがあります。 これがエンベロープで、Received 行に書き残されているものは、 エンベロープの写しだったのです。よく、メイルのヘッダーを見て、そこから 発信が分かると勘違いしている人がいますが、途中の MTAが信用出来ない 場合や、ヘッダーを偽造した場合には、ヘッダーからは判定出来ません。 真の言わば送り状はエンベロープにあるのです。ですから、Received 行には なるべく多くの情報を残すようにしましょう。少なくとも、自分の管轄下の MTA は正しい筈ですから。



Noriyo Kanayama