はじめに
Cloudflare WorkersやPagesを触り始めた頃、
- CDN
- Edge
- Proxy
- Reverse Proxy
- DNS Only
- Proxied(プロキシ済み)
のような用語が次々に出てきて混乱しました。
実際、普段の開発ではそこまで深く理解していなくても設定できてしまいますし、
(とりあえずProxiedにしておけばいいか...)
くらいの感覚で運用していた部分もありました。
最近Cloudflareの設定やネットワーク周りを少し深く触る機会があり、
「そういえばCDNとEdgeの違いって何なんだ?」
「CloudflareはCDNなのかリバースプロキシなのか?」
「そもそもプロキシ済みにすると何が起きているんだろう?」
と改めて整理したくなったので、自分向けの備忘録も兼ねてまとめてみます。
まずは全体像
Web アプリケーションへのリクエストは、ざっくり以下のような経路を通る。
図のように、Webアプリケーションへのリクエストはユーザーからアプリケーションへ直接届くわけではなく、いくつかのレイヤーを経由して処理されます。
普段の開発では意識する機会が少ないものの、CloudflareやCDNキャッシュ戦略を考える際にはそれぞれの役割を理解しておくと構成が見えやすくなります。
今回は図に登場した以下の要素を順番に整理していきます。
| レイヤー | 役割 |
|---|---|
| Browser Cache | ブラウザ内でリソースを再利用する |
| CDN / Edge | ユーザーに近い場所で配信・処理する |
| Reverse Proxy | リクエストを適切なサーバーへ振り分ける |
| Application | ビジネスロジックを実行する |
| Database | データを保存・管理する |
DNS Only と Proxied の違い
Cloudflareを利用していると必ず出てくる設定です。
CloudflareのDNS設定では、各レコードごとに
「Cloudflareを経由させるかどうか」を選択できます。
その設定が DNS Only と Proxied です。
DNS Only
Cloudflare は DNS 解決だけ行います。
通信自体は Cloudflare を経由しません。
Proxied(プロキシ済み)
Cloudflare を経由して通信します。
そのため、
- CDN
- キャッシュ
- WAF
- DDoS Protection
- Rate Limiting
- Workers
などの機能が利用できます。
DNS Only と Proxied の使い分け
一般的なWebサイトやAPIでは、Cloudflareの機能を活用するためProxiedが選択されることが多いようです。
| 用途 | 推奨設定 | 理由 |
|---|---|---|
| Webサイト | Proxied | CDN・WAF・キャッシュを利用できるため |
| API | Proxied | セキュリティ対策やレート制限を適用できるため |
| Next.js | Proxied | Cloudflare の機能を活用できるため |
| Cloudflare Workers | Proxied | Cloudflare を経由しないと実行できないため |
| Cloudflare Pages | Proxied | Cloudflare の配信基盤を利用するため |
| Mail Server | DNS Only | SMTP 通信は Cloudflare Proxy の対象外のため |
| SSH | DNS Only(一般的) | 通常のSSH通信はCloudflare Proxyの対象外のため |
| VPN | DNS Only(一般的) | 通常のVPN通信はCloudflare Proxyの対象外のため |
まとめ
| 用語 | 一言で言うと |
|---|---|
| CDN | 近くから配信する仕組み |
| Edge | 近くにある場所 |
| Proxy | ユーザー側の代理 |
| Reverse Proxy | サーバー側の代理 |
| Proxied | Cloudflareを経由する |
| DNS Only | DNS解決のみ利用する |
Cloudflare を触り始めた頃はすべて同じように見えていましたが、
- CDN は機能
- Edge は場所
- Proxy は通信経路
- Cloudflare はそれらを組み合わせて提供するサービス
という視点で整理すると理解しやすくなりました。
私自身、Cloudflare の設定を触るまでは何となく使っていた部分も多かったのですが、一度整理してみると各設定の意味がかなり理解しやすくなった気がします。
もし同じように Cloudflare 周りで混乱している方の参考になれば幸いです。


