メールの仕組み

ネットワークメモへ戻る

アプリケーションの話へ戻る


1. インターネットでのメールの仕組み

インターネットでメールを送るとき、ユーザから直接見えるのはいわゆるメーラー(OutlookExpressとかThunderBirdとかBecky!とか)だけであるが、地球の反対側までメールが届くためにはすでに学んだDNSのほかにもメールを実際に配送するシカケが必要である。以下に本メモで説明する登場人物とその略称を紹介する。全体の関係は図1を参照。

MUA(Mail User Agent)
いわゆる「メーラー」とか「メールリーダ」と呼ばれるプログラムのこと。ユーザが実際に使うプログラムではあるが、これ自体はメールを配達するシカケというよりは郵便での手紙を読み書きするための万年筆とか便箋に相当するものと考えたほうがいい。
MSA(Message Submission Agent)
MUAがメールを送るときに接続するシステム。プロバイダと契約すると連絡される「送信メールサーバ」がこれ。昔はMUAは直接MTA(後述)に接続してメールを送ると扱われていたのだが、悪党がごみメールをばら撒きすぎたので外部にメールを中継するMTAの前に、プロバイダ内部からのメール送信を受け付けるMSAをおくというモデルに変化しつつある。このとき、MSAはユーザの情報を持っているプロバイダに設置されるということから、ユーザ認証をここで行った上でメールを外に出すようにするのが望ましい。MUA-MSA間の認証方法として代表的なものはSMTP AUTHや POP before SMTPがある。SMTP AUTHはMUAが対応している必要があるが、POP before SMTPはたいていのMUAで利用可能。
MTA(Mail Transfer Agent)
インターネットの中で実際にメールを転送するプログラムのこと。すでに学んだDNSで提供されるMXの情報を用いてメールの送り先を探し、SMTP(Simple Mail Transfer Protocol)とよばれるプロトコルでメールを送受信する。このとき、送信者の偽装を防ぐために送信者ドメイン認証のような操作もいろいろ行うことが広まってきつつある。
MDA(Mail Delivery Agent)
MTAからメールを受け取り、ユーザのために確保された領域(メールボックス)に保存するプログラム。MTAとセットで用意されていることが多いが、多くのMTAはMDAを設定で変えられるので管理者の趣味に応じて好きなMDAを使うことは可能である(資料が多いかどうかはともかくとして)。また、MDAの種類によってメールボックスの形式が変わるので、このメールボックスを読み出すMRA(後述)と相互運用可能なものを選定する必要がある。
MRA(Mail Retrieval Agent)
MUAがメールボックスからメールを読み出すときに接続するプログラムのこと。メールボックスからメールを取り出す(retrieve)プログラムである。プロバイダと契約すると連絡される「メール受信サーバ」がこれ。MUAとMRA間のプロトコルとしては、POP3やIMAP4が多く使われている。

これをユーザ側(つまりMUA側)から整理するとこんな具合になる

図1. メールシステムを構成するいろいろなサブシステム

2. メールで使われるプロトコル

2.1 SMTP

SMTP(Simple Mail Transfer Protocol)

2.2 POP3

2.3 IMAP4

3. SPAMはなぜ起きるか

3.1 SMTPは良い人のためのプロトコル

3.2 SMTPを直接話してみる

4. SPAMを減らすためにできること

4.1 ユーザができること

4.2 システム管理者ができること


ネットワークメモへ戻る

アプリケーションの話へ戻る

本サイトにアダルトコンテンツ、XXXコンテンツ類は一切含まれていません。暴力反対。

©2005, OGAWA, Hiroshi Santa <santa123@olab.org>