---
title: IMAP と POP3
url: https://doc.liz6.com/ja/networking/09-email-protocols/02-imap-vs-pop3
locale: ja
area: networking
tags:
- networking
- email-protocols
date: 2026-06-30
modified: 2026-07-16
description: POP3 はメールをローカルにダウンロードしてサーバーから削除し、IMAP はメールをサーバーに残して複数端末で同期します。IDLE により IMAP は「擬似プッシュ」を実現し、サーバーに新着メールが届くとクライアントに通知するため、ポーリングの必要がありません。
---

# IMAP と POP3

> POP3 はメールをローカルにダウンロードしてサーバーから削除し、IMAP はメールをサーバーに残して複数端末で同期します。IDLE により IMAP は「擬似プッシュ」を実現し、サーバーに新着メールが届くとクライアントに通知するため、ポーリングの必要がありません。

## 概要

SMTP はメールの転送のみを担当し、保存や読み取りは行いません。IMAP（1994年）と POP3（1988年）はメールアクセスプロトコルの2種類です。IMAP はメールをサーバー上に保持し、クライアントは単なる「ビュー」として機能し、複数デバイスでの自動同期、サーバー側での検索、IDLE によるリアルタイムプッシュが可能です。POP3 はよりシンプルで、メールをローカルにダウンロードし、サーバーからは削除します。IMAP がデフォルトの選択となっており、POP3 は特定のアーカイブ用途にのみ使用されます。

## IMAP プロトコル

IMAP はステートフルプロトコルです。メールはサーバー上に保存され、クライアントはサーバー側のメールボックスに対して操作を行います。

```
接続:
  S: * OK Dovecot ready.
  C: a001 LOGIN user@example.com password
  S: a001 OK Logged in

メールボックスの一覧表示:
  C: a002 LIST "" "*"
  S: * LIST (\HasNoChildren) "/" INBOX
  S: a002 OK

メールボックスの選択:
  C: a003 SELECT INBOX
  S: * 42 EXISTS           ← 合計 42 通
  S: * 5 RECENT             ← 新規着信 5 通
  S: * FLAGS (\Answered \Flagged \Deleted \Seen \Draft)
  S: * OK [UIDVALIDITY 1]
  S: * OK [UIDNEXT 43]      ← 次のメールの UID は 43
  S: a003 OK [READ-WRITE] SELECT completed

メールの取得:
  C: a004 FETCH 1:10 (FLAGS INTERNALDATE RFC822.SIZE BODY.PEEK[HEADER.FIELDS (FROM SUBJECT DATE)])
  → 1〜10 通目のメールの一部ヘッダーを取得

既読マーク:
  C: a005 STORE 1 +FLAGS (\Seen)

IDLE (リアルタイムプッシュ):
  C: a006 IDLE
  S: + idling
  (新着メール着信)
  S: * 43 EXISTS
  C: DONE
  S: a006 OK IDLE completed
```

### POP3 との比較

| | IMAP | POP3 |
|---|---|---|
| メール保存場所 | サーバー（クライアントはビュー） | ローカルにダウンロード |
| 複数デバイス | ✓ | メールが各デバイスに分散 |
| 検索 | サーバー側で SEARCH | ダウンロード後にローカルで検索 |
| プッシュ | IDLE（リアルタイム） | なし（ポーリング） |
| オフライン | キャッシュが必要 | ✓ |

## 参考

- **RFC**: 3501, 2177, 1939
- **Dovecot**: dovecot.org

*キーワード: IMAP, SELECT, FETCH, IDLE, POP3, Dovecot, mailbox, flag*
