2
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

Cloudflareの「Proxied」と「DNS Only」の違いを理解する

2
Posted at

はじめに

Cloudflare WorkersやPagesを触り始めた頃、

  • CDN
  • Edge
  • Proxy
  • Reverse Proxy
  • DNS Only
  • Proxied(プロキシ済み)

のような用語が次々に出てきて混乱しました。
実際、普段の開発ではそこまで深く理解していなくても設定できてしまいますし、

(とりあえずProxiedにしておけばいいか...)

くらいの感覚で運用していた部分もありました。

最近Cloudflareの設定やネットワーク周りを少し深く触る機会があり、

「そういえばCDNとEdgeの違いって何なんだ?」
「CloudflareはCDNなのかリバースプロキシなのか?」
「そもそもプロキシ済みにすると何が起きているんだろう?」

と改めて整理したくなったので、自分向けの備忘録も兼ねてまとめてみます。

まずは全体像

Web アプリケーションへのリクエストは、ざっくり以下のような経路を通る。

image.png

図のように、Webアプリケーションへのリクエストはユーザーからアプリケーションへ直接届くわけではなく、いくつかのレイヤーを経由して処理されます。

普段の開発では意識する機会が少ないものの、CloudflareやCDNキャッシュ戦略を考える際にはそれぞれの役割を理解しておくと構成が見えやすくなります。

今回は図に登場した以下の要素を順番に整理していきます。

レイヤー 役割
Browser Cache ブラウザ内でリソースを再利用する
CDN / Edge ユーザーに近い場所で配信・処理する
Reverse Proxy リクエストを適切なサーバーへ振り分ける
Application ビジネスロジックを実行する
Database データを保存・管理する

DNS Only と Proxied の違い

Cloudflareを利用していると必ず出てくる設定です。

CloudflareのDNS設定では、各レコードごとに
「Cloudflareを経由させるかどうか」を選択できます。

その設定が DNS Only と Proxied です。

DNS Only

image.png

Cloudflare は DNS 解決だけ行います。
通信自体は Cloudflare を経由しません。

Proxied(プロキシ済み)

image.png

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 周りで混乱している方の参考になれば幸いです。


参考資料

2
0
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
2
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?