IMAP
メールサーバ上のメールボックスへアクセスし、メールやフォルダを操作するプロトコル。メールをサーバ側で管理し、複数の端末から状態を共有できる。送信には通常SMTPを使う。
イマシルちゃんの解説
スマホでメールを読んだあと、パソコンでもそのメールが既読になっていることがあるんだ。
IMAPは、メールをメールサーバに置き、複数の端末から同じメールボックスを操作できるようにする通信プロトコルだよ。
メールをフォルダへ移動したり、既読にしたりした変更も共有できる。
ただし、メールを相手に送るのは別の仕組みで、IMAPは届いたメールを扱うために使うんだ。
この解説はわかりやすかったですか?
より深い解説
メールを置く場所と操作
IMAPでは、メールをサーバ側のメールボックスに保持し、クライアントが必要な情報を取得・更新する。本文の取得だけでなく、フォルダの作成、メールの移動、検索、既読状態の管理などを行える。
複数の端末が同じアカウントを使う場合も、状態を共有しやすい。一方、手元のキャッシュとサーバの情報を同期する必要があり、オフライン中の操作は再接続後に反映される場合がある。
通信の役割
IMAPでメールを下書きフォルダへ保存することと、そのメールを相手へ配送することは別の操作である。
ポートと保護
暗号化しない通信では、認証情報やメールの内容が漏れるおそれがある。利用する認証方式に加え、TLSを使う設定と証明書の検証を確認する。IMAP4rev1はRFC 3501、IMAP4rev2はRFC 9051で定義される。
POP3との比較
POP3は、メールサーバからメッセージを取り出すためのプロトコルである。取得後にサーバ側を削除する使い方が多いが、コピーを残す設定もできる。必ず削除する仕様ではない。
| 観点 | IMAP | POP3 |
|---|---|---|
| 主な操作場所 | メールボックスをサーバ側で管理する | 取得したメールを端末側で管理する使い方が中心 |
| フォルダや既読状態の共有 | プロトコルで扱える | IMAPのような同期機能は備えない |
| TCPポート | 143、TLSを最初から使う場合は993 | 110、TLSを最初から使う場合は995 |
Webメールの構成
Webメールは、ブラウザでメールを操作するサービス形態である。ブラウザからWebサーバへの通信と、Webアプリケーションからメールサーバへの通信を分けて考える。
後者にIMAPを使う構成では、Webアプリケーションが利用者の代わりにメールボックスを操作する。ブラウザが直接IMAPを話すという意味ではなく、実装によってはメールサービス独自の通信インタフェースを使う場合もある。