メールの仕組み(SMTP・POP3・IMAP)

メールはどう届くのか

電子メールは1つのプロトコルではなく、役割の違う複数のプロトコルの連携で動いています。大きく分けると「送る」担当が SMTP、「受け取る」担当が POP3IMAP です。

送信者のメールソフト
   ↓ SMTP(送信)
送信側メールサーバー
   ↓ SMTP(サーバー間の転送。宛先は DNS の MXレコードで調べる)
受信側メールサーバー
   ↓ POP3 または IMAP(受信)
受信者のメールソフト

SMTP — メールを送るプロトコル

SMTP(Simple Mail Transfer Protocol)は、メールソフトからサーバーへ、そしてサーバーからサーバーへメールを配送するプロトコルです。

  • 宛先サーバーは [[DNS]] の MXレコード を引いて見つける
  • 素の SMTP は平文通信のため、現在は STARTTLS や SMTPS で暗号化して使う([[HTTPS・TLS]] と同じ TLS 技術)
  • 迷惑メール対策として、送信元の正当性を確認する SPF / DKIM / DMARC という仕組みが組み合わされる

POP3 と IMAP — メールを受け取る2つの方式

POP3IMAP
基本動作サーバーからメールをダウンロードして端末に保存メールをサーバーに置いたまま閲覧・操作
複数端末での利用苦手(端末ごとに状態がバラバラになる)得意(既読・フォルダ分けがどの端末でも同期)
サーバー容量消費しにくい(取得後に削除する設定が多い)消費する(すべてサーバーに残る)
向いている場面1台の端末だけで読む・回線が不安定スマホとPCを併用する現代の使い方

スマホとPCの両方でメールを見る現在では IMAP が主流です。Gmail などのWebメールも、裏側では IMAP 的な「サーバーにメールを置く」モデルで動いています。

初学者向けポイント

  • 「送信サーバー(SMTP)」と「受信サーバー(POP3/IMAP)」の設定欄がメールソフトに分かれているのは、送ると受け取るでプロトコルが違うから
  • メールも結局は [[TCP/IP]] の上で動くアプリケーション層プロトコル(HTTP の仲間)
  • パスワードやメール本文を守るため、現代では必ず TLS 暗号化([[暗号化の基礎]])とセットで使う

関連技術とのつながり

  • [[TCP/IP]] — SMTP・POP3・IMAP はいずれも TCP の上で動く
  • [[DNS]] — MXレコードで「このドメイン宛のメールはどのサーバーへ」を解決する
  • [[HTTPS・TLS]] — STARTTLS で使われる暗号化は TLS そのもの
  • [[暗号化の基礎]] — 通信の暗号化と署名(DKIM)の土台
  • [[文字コードと文字化け]] — 件名や本文の符号化がメール特有の文字化けを生む
Q: メールを「送る」役割を担うプロトコルはどれ?
- [ ] POP3
- [x] SMTP
- [ ] IMAP
解説: SMTP が送信・サーバー間転送を担当し、POP3/IMAP は受信を担当します。

Q: 宛先ドメインのメールサーバーを見つけるために使われる DNS のレコードはどれ?
- [ ] Aレコード
- [ ] CNAMEレコード
- [x] MXレコード
解説: MX(Mail eXchange)レコードが「このドメイン宛のメールを受け取るサーバー」を示します。

Q: スマホとPCの複数端末でメールの既読状態を同期したい場合に向いているのはどれ?
- [ ] POP3
- [x] IMAP
- [ ] SMTP
解説: IMAP はメールをサーバーに置いたまま操作するため、どの端末から見ても状態が同期されます。