Skip to content

非公式本サイトは非公式の日本語ドキュメントであり、Cloudflare 公式サイトではありません。最新情報はdevelopers.cloudflare.comをご確認ください。

Regionalized IP Bindings

最終更新 Markdown で表示Agent セットアップ

Regionalized IP Bindings を使うと、Bring Your Own IP (BYOIP) で Cloudflare に持ち込んだプレフィックスのトラフィックを、IP レイヤーでリージョン化できます。プレフィックス内の CIDR をリージョンにバインドすると、Cloudflare はその IP アドレス宛のトラフィックを、そのリージョン内のデータセンターだけで処理します。

これは Regional Services のほかの使い方を補完します。Regional Hostnames がホスト名単位でトラフィックをリージョン化するのに対し、Regionalized IP Bindings は IP プレフィックス単位でリージョン化します。アドレスマップでのデプロイや、ホスト名ではなく IP で到達するサービスに向いています。バインディングはすべて API で管理するため、利用資格が有効になれば、アカウントチームによるゾーン単位の設定なしで、広い範囲の構成を自分でリージョン化できます。

仕組み

プレフィックスバインディングは、所有する BYOIP プレフィックス内の CIDR を リージョンキー(例: useu)に対応づけます。Cloudflare がバインディングをプロビジョニングすると、その CIDR 内のアドレス宛トラフィックは、設定したリージョン内でのみ TLS を終端し、処理されます。処理モデルは Regional Services と同じリージョン内処理です。

バインディングは Data Localization Suite API の /accounts/{account_id}/dls/ 配下で管理します。

バインドする CIDR を選ぶ

バインディングはプレフィックス内のアドレス範囲を対象とし、単一アドレスだけではありません。IP アドレスごとに 1 つずつバインディングを作る必要は ありません。バインドする cidr は次の条件を満たす必要があります。

  • prefix_id で識別するプレフィックス内に収まること。
  • 未使用の IP アドレスだけを含むこと。すでに使っている IP アドレスをバインドすると、変更の伝播中にそのトラフィックが中断します。
  • プレフィックス全体より 具体的な範囲(サブレンジ)であること。たとえば /24 プレフィックス内では、/25 から単一アドレス(IPv4 なら /32、IPv6 なら /128)までの範囲をバインドできます。プレフィックス全体(/24 全体)のバインドは 競合エラー で拒否されます。Cloudflare がアドバタイズした時点で、プレフィックス範囲全体はすでに使用中になるためです。

CIDR の選び方は、プレフィックスをリージョン間でどう分割したいかによって変わります。

  • プレフィックス全体を 1 つのリージョンにする — 同じリージョンを指すサブレンジでプレフィックスを覆います。たとえば /24 の全アドレスをリージョン化するには、203.0.113.0/25203.0.113.128/25 の両方を eu にバインドします。
  • アドレスごとに別のリージョンにする — 各範囲を希望するリージョンにバインドします(例: 203.0.113.0/25eu203.0.113.128/25us)。Cloudflare は、指定アドレスに一致する最も具体的なバインディングを適用します。より狭いバインディングは、重なるより広いバインディングより優先されます。

競合が起きるのは、まったく同じ CIDR に対して 2 つのバインディングを作ろうとしたときだけです。重なっていても CIDR が異なれば共存でき、Cloudflare は最も具体的な一致を適用します。既存 CIDR のリージョンを変えるには、新しいバインディングを作らず 既存のバインディングを更新 します。

前提条件

バインディングを作成する前に、次を確認してください。

必要な API トークン権限

これらのエンドポイントはアカウントレベルで認可されます。必要な権限は操作によって異なります。

操作 必要なトークン権限
リージョンの一覧・取得、バインディングの一覧・取得 DLS: Read
プレフィックスバインディングの作成、更新、削除 DLS: Write および IP Prefixes: Write

書き込み操作には DLS: Write に加えて IP Prefixes: Write が必要です。バインディングは Addressing で所有する BYOIP プレフィックスに対して作られ、Cloudflare はそのプレフィックスを変更する権限があるかを確認します。DLS: Write だけのトークンはリージョンとバインディングを読めますが、バインディングの作成や変更は拒否されます。

Super AdministratorAdministrator ロールには、これらの権限がすべて含まれます。カスタムロールでも、上の権限グループが含まれていれば使えます。

利用可能なリージョンを一覧する

各バインディングは region_key(例: useu)でリージョンを参照します。アカウントで使えるリージョンを一覧し、有効なキーを確認します。

curl "https://api.cloudflare.com/client/v4/accounts/%7Baccount_id%7D/dls/regions" \
	--request GET \
	--header "Authorization: Bearer $CLOUDFLARE_API_TOKEN"
レスポンスjson
{
	"success": true,
	"errors": [],
	"messages": [],
	"result": [
		{
			"id": "a1b2c3d4-e5f6-7890-abcd-ef1234567890",
			"name": "Europe",
			"region_key": "eu",
			"created_on": "2026-01-13T23:59:45.276558Z",
			"modified_on": "2026-01-13T23:59:45.276558Z",
			"version": 1,
			"version_created_on": "2026-01-13T23:59:45.276558Z"
		}
	],
	"result_info": {
		"count": 1,
		"per_page": 25,
		"cursor": ""
	}
}

type クエリパラメーター(managed または custom)で、リージョンタイプ ごとに結果を絞り込めます。結果はページネーションされます。次のページを取得するには、レスポンスの cursor 値を渡します。

単一のリージョンを取得する

region_key または ID でリージョンを取得します。

curl "https://api.cloudflare.com/client/v4/accounts/%7Baccount_id%7D/dls/regions/eu" \
	--request GET \
	--header "Authorization: Bearer $CLOUDFLARE_API_TOKEN"

プレフィックスバインディングを作成する

BYOIP プレフィックス内の CIDR をリージョンにバインドします。cidrprefix_id で識別するプレフィックス内に収まり、プレフィックス自体より具体的 である必要があります。

curl "https://api.cloudflare.com/client/v4/accounts/%7Baccount_id%7D/dls/regional_services/prefix_bindings" \
	--request POST \
	--header "Authorization: Bearer $CLOUDFLARE_API_TOKEN" \
	--json '{
		"prefix_id": "a1b2c3d4-e5f6-7890-abcd-ef1234567890",
		"cidr": "203.0.113.0/25",
		"region_key": "eu"
	}'
レスポンスjson
{
	"success": true,
	"errors": [],
	"messages": [],
	"result": {
		"id": "f0e1d2c3-b4a5-6789-0abc-def123456789",
		"prefix_id": "a1b2c3d4-e5f6-7890-abcd-ef1234567890",
		"cidr": "203.0.113.0/25",
		"region_key": "eu"
	}
}

バインディングの状態を確認する

作成リクエストが返したバインディング ID を使い、Get service binding エンドポイントを呼び出します。Regionalized IP Bindings API と Service Bindings API は、同じバインディング ID を使います。

curl "https://api.cloudflare.com/client/v4/accounts/%7Baccount_id%7D/addressing/prefixes/%7Bprefix_id%7D/bindings/%7Bbinding_id%7D" \
	--request GET \
	--header "Authorization: Bearer $CLOUDFLARE_API_TOKEN"

result.provisioning.stateactive になると、バインディングは利用可能です。

レスポンスjson
{
	"success": true,
	"errors": [],
	"messages": [],
	"result": {
		"id": "f0e1d2c3-b4a5-6789-0abc-def123456789",
		"cidr": "203.0.113.0/25",
		"provisioning": {
			"state": "active"
		}
	}
}

競合エラーを処理する

各 CIDR にバインディングは 1 つだけ のため、すでにバインド済みの CIDR に対する作成リクエストは HTTP 409 の競合で失敗します。

レスポンスjson
{
	"result": null,
	"success": false,
	"errors": [
		{
			"code": 1108,
			"message": "conflict: binding already exists for CIDR 203.0.113.0/24"
		}
	],
	"messages": []
}

このエラーは次の 2 つの場合に発生します。

  • プレフィックス全体をバインドしようとした。 プレフィックス範囲全体(例: /24 全体)は、Cloudflare がプレフィックスをアドバタイズした時点ですでに使用中です。そのためリージョンへ直接バインドできません。代わりに、プレフィックス内のより具体的な範囲(/25 から単一の /32 まで)をバインドします。全アドレスをリージョン化したい場合は、複数のサブレンジでプレフィックスを覆います。
  • その CIDR はすでにバインド済み。 その正確な範囲のバインディングがすでに存在します。以前のリクエストが成功した場合などです。

対処方法は次のとおりです。

  • 既存のバインディングを一覧 し、すでに設定されている内容を確認します。
  • 既存バインディングを別リージョンへ移すには、新しく作らず 更新 します。
  • 別の範囲をバインドするには、まだバインドされていない CIDR を選びます。既存バインディングを別の CIDR に置き換える場合は、先に 削除 してから新しいものを作成します。

プレフィックスバインディングを一覧する

curl "https://api.cloudflare.com/client/v4/accounts/%7Baccount_id%7D/dls/regional_services/prefix_bindings" \
	--request GET \
	--header "Authorization: Bearer $CLOUDFLARE_API_TOKEN"
レスポンスjson
{
	"success": true,
	"errors": [],
	"messages": [],
	"result": [
		{
			"id": "f0e1d2c3-b4a5-6789-0abc-def123456789",
			"prefix_id": "a1b2c3d4-e5f6-7890-abcd-ef1234567890",
			"cidr": "203.0.113.0/25",
			"region_key": "eu"
		}
	],
	"result_info": {
		"count": 1,
		"per_page": 25,
		"cursor": ""
	}
}

単一のバインディングを取得する

curl "https://api.cloudflare.com/client/v4/accounts/%7Baccount_id%7D/dls/regional_services/prefix_bindings/%7Bbinding_id%7D" \
	--request GET \
	--header "Authorization: Bearer $CLOUDFLARE_API_TOKEN"

バインディングのリージョンを更新する

バインディングが指すリージョンを変更します。更新できるのは region_key だけです。CIDR を変えるには、バインディングを削除して新しく作成します。

curl "https://api.cloudflare.com/client/v4/accounts/%7Baccount_id%7D/dls/regional_services/prefix_bindings/%7Bbinding_id%7D" \
	--request PATCH \
	--header "Authorization: Bearer $CLOUDFLARE_API_TOKEN" \
	--json '{
		"region_key": "us"
	}'
レスポンスjson
{
	"success": true,
	"errors": [],
	"messages": [],
	"result": {
		"id": "f0e1d2c3-b4a5-6789-0abc-def123456789",
		"prefix_id": "a1b2c3d4-e5f6-7890-abcd-ef1234567890",
		"cidr": "203.0.113.0/25",
		"region_key": "us"
	}
}

バインディングを削除する

バインディングを削除すると、その CIDR のトラフィックのリージョン化をやめます。

curl "https://api.cloudflare.com/client/v4/accounts/%7Baccount_id%7D/dls/regional_services/prefix_bindings/%7Bbinding_id%7D" \
	--request DELETE \
	--header "Authorization: Bearer $CLOUDFLARE_API_TOKEN"
レスポンスjson
{
	"success": true,
	"errors": [],
	"messages": [],
	"result": null
}

関連リソース

役に立ちましたか?