O2O(Orange-to-Orange)は、トラフィックが 2 つの Cloudflare ゾーンを経由する経路構成です。1 つ目の Cloudflare ゾーンは顧客 1 が所有し、2 つ目の Cloudflare ゾーンは顧客 2(SaaS プロバイダー)が所有します。
1 つ以上のホスト名を、プラットフォームの一部として Cloudflare 製品を使う SaaS プロバイダー(具体的には Cloudflare for SaaS)にオンボードすると、それらのホスト名は SaaS プロバイダーのゾーンに カスタムホスト名 として作成されます。
SaaS プロバイダーが自ゾーン経由でトラフィックをルーティングするには、あなた(SaaS 顧客)が権威 DNS に CNAME レコード を置いて、カスタムホスト名を有効化する必要があります。権威 DNS が Cloudflare の場合は、CNAME レコードを プロキシ でき、O2O 構成になります。
- O2O が適用されるのは、2 つのゾーンが異なる Cloudflare アカウントに属している場合だけです。
- O2O は CNAME に基づくため、A レコードで SaaS プロバイダーを指している場合(apex プロキシ)には適用されません。
独自の Cloudflare ゾーン(example.com)があり、そのゾーンにカスタムホスト名(mystore.example.com)と一致する プロキシ済み DNS レコード があり、CNAME のターゲットが SaaS プロバイダーの指定どおりなら、O2O が有効になります。
example.com の DNS 管理
| タイプ | 名前 | ターゲット | プロキシステータス |
|---|---|---|---|
CNAME |
mystore |
customers.saasprovider.com |
プロキシ済み |
O2O が有効な場合、まず自ゾーンの設定がトラフィックに適用され、次に SaaS プロバイダーのゾーンの設定が適用されます。SaaS プロバイダー所有のゾーンでは、HTTP ヘッダー cf-connecting-o2o: 1 が設定されます。
flowchart TD accTitle: O2O 有効時のトラフィックフロー A[ウェブサイトの訪問者] subgraph Cloudflare B[顧客所有ゾーン] C[SaaS プロバイダー所有ゾーン] end D[SaaS プロバイダーのオリジン] A --> B B --> C C --> D
O2O 構成をトラフィックが通ると、Cloudflare は SaaS プロバイダーのゾーンに入るリクエストに HTTP ヘッダー cf-connecting-o2o: 1 を設定します。O2O が有効かどうかを示す API フィールドやゾーン設定はありません。顧客の DNS 構成によって決まる、リクエスト単位のルーティング動作です。
オリジンサーバーや Cloudflare Worker でこのヘッダーを確認し、O2O トラフィックを識別して特定の処理を適用できます。
独自の Cloudflare ゾーンがなく、1 つ以上のホスト名だけを SaaS プロバイダーにオンボードしている場合、O2O は有効になりません。
O2O が無効な場合、SaaS プロバイダーのゾーンに設定された内容がトラフィックに適用されます。
flowchart TD
accTitle: SaaS プロバイダーを使っているが、O2O ではないゾーン
A[ウェブサイトの訪問者]
subgraph Cloudflare
B[SaaS プロバイダー所有ゾーン]
end
C[SaaS プロバイダーのオリジン]
A --> B
B --> C