区域化 IP 绑定使您能在 IP 层对自带的前缀进行流量区域化,这些前缀是您通过 自带 IP (BYOIP) 引入 Cloudflare 的。您可以将您其中一个前缀的 CIDR 绑定到一个区域,然后 Cloudflare 仅会在该区域的数据中心内处理目的地为这些 IP 地址的流量。
这补充了使用 区域服务 的其他方式:当 区域主机名 按主机名区域化流量时,区域化 IP 绑定按 IP 前缀对流量进行区域化 —— 非常适合地址映射部署和任何通过 IP(而非主机名)进行寻址的服务。由于绑定是完全通过 API 管理的,因此一旦您的权利启用后,您就可以自行进行广泛配置的区域化,无需客户团队进行每个区域的设置。
前缀绑定会将一个 CIDR(位于您拥有的 BYOIP 前缀内)映射到一个 区域键 (例如 us 或 eu)。当 Cloudflare 提供绑定后,通往该 CIDR 中的地址的流量将会终止 TLS,且仅在配置的区域内被处理,这遵循在 区域服务 中描述的相同的区域内处理模型。
绑定通过 Data Localization Suite API 进行管理,路径位于 /accounts/{account_id}/dls/ 下。
绑定会涵盖前缀中的一系列地址范围,而不仅仅是单个地址 —— 您不需要为每个 IP 地址创建单个绑定。您绑定的 cidr 必须:
- 属于由
prefix_id标识的前缀范围内。 - 必须比该前缀本身更具体 —— 它是其中的一个子范围。例如,在
/24前缀内,您可以绑定从/25向下直到单一地址 (对于 IPv4 为/32,对于 IPv6 为/128) 的任意范围。尝试绑定整个前缀 (完整的/24) 将会被带有 冲突错误 拒绝,因为整个前缀范围在 Cloudflare 宣布它之后即处于已使用状态。
如何选择 CIDR 取决于您想要如何在不同的区域拆分前缀:
- 整个前缀分配到一个区域 —— 使用所有指向同一区域的子范围涵盖前缀。例如,将
203.0.113.0/25和203.0.113.128/25都绑定到eu就可以区域化一个/24里的每一个地址。 - 不同地址分配到不同区域 —— 将每个范围分别绑定到您想要的区域 (例如
203.0.113.0/25绑定到eu,而203.0.113.128/25绑定到us)。Cloudflare 会应用匹配给定地址的、最具体的绑定,因此较窄的绑定优先于覆盖它的较广范围的绑定。
每一个 CIDR 只能有一个绑定。如果尝试为一个已经被绑定的 CIDR 创建第二个绑定,API 会返回一个 冲突错误。如需更改现有绑定的区域,请 更新该绑定 而不是创建新的绑定。
在创建绑定之前,请确保:
- 您的账户启用了Regional Services(区域服务) 和 Regional Services for BYOIP(区域服务 BYOIP) 权利。请联系客户团队启用。
- 您已将某个 BYOIP 前缀 入站 到 Cloudflare,并知道其前缀 ID。
- 您想要使用的区域对您的账户是可用的。请参阅 列出可用区域。
- 您的 API 令牌 具备所需的权限。请参阅 必需的 API 令牌权限。
这些端点在账户级别授权。您所需的权限取决于操作类型:
| 操作 | 必需的令牌权限 |
|---|---|
| 列出区域,获取区域,列出或获取绑定 | DLS: Read |
| 创建,更新,或删除前缀绑定 | DLS: Write 以及 IP Prefixes: Write |
写操作要求使用 IP Prefixes: Write 及 DLS: Write,因为该绑定是在 寻址 的过程中对您所有的 BYOIP 前缀而建立的 —— Cloudflare 将验证您是否有权限修改该前缀。只有一个拥有 DLS: Write 的令牌可以读取区域和绑定,但在试图创建或改变绑定时则被拒绝。
超级管理员 (Super Administrator) 和管理员 (Administrator) 角色拥有所有的这些权限。自定义角色只要包含上面的权限组就可以发挥作用。
每一个绑定利用 region_key 引用一个区域 (例如 us 或 eu) 。列出您账户里可用的所有区域去寻找一个有效的键。
curl "https://api.cloudflare.com/client/v4/accounts/%7Baccount_id%7D/dls/regions" \
--request GET \
--header "Authorization: Bearer $CLOUDFLARE_API_TOKEN"{
"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 绑定到一个区域。该 cidr 必须落入通过 prefix_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"
}'{
"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"
}
}因为 每一个 CIDR 只能有一个绑定,针对某一个已经拥有了配置绑定的 CIDR 所发的建立请求,该失败会有 HTTP 409 冲突:
{
"result": null,
"success": false,
"errors": [
{
"code": 1108,
"message": "conflict: binding already exists for CIDR 203.0.113.0/24"
}
],
"messages": []
}出现错误是下面两个情况之一:
- 尝试绑定完整的前缀。 该完全前缀区间段范围(譬如说是完整的一个
/24)在 Cloudflare 公告这一个特定前缀段落就已经使用了,所以无法被继续直接作为一个区域绑定,而应选用更加详细的小段范围 —— 在/25向下直至某个特定的单一/32—— 如若你确实有必要覆盖一整个原前缀的所有 IP,请创建几个不同段区间子范围将区域盖全。 - 该 CIDR 已绑定。 一模一样范围内容的绑定已经有了,例如源于之前成功响应的某个请求。
解决它的方法是:
- 列出您现存绑定信息 查对目前的配置状况。
- 要将现成的绑定移动到另一个不同的区域,请 更新它 而不是创建一个新的。
- 若要绑定一个不同的未被绑定的 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"{
"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"
}'{
"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"{
"success": true,
"errors": [],
"messages": [],
"result": null
}- 区域服务 —— 概述与区域内处理模式。
- 可用区域与产品支持 —— 区域的完整列表及其定义。
- 自带 IP (BYOIP) —— 在 Cloudflare 引入您自己的 IP 前缀。