创建范围应用程序
创建“范围”应用程序需要配置如何将流量路由到您的源服务器,并支持指定协议、源设置以及 TLS 终止和自定义规则等高级功能。 您可以使用 CIS 控制台或应用程序接口添加“范围”应用程序。
“范围”仅适用于企业客户,需额外成本,并且按带宽使用量计费。
准备工作
审查以下规划注意事项:
-
您最多可以创建 10 个“范围”应用程序,每个都有一个唯一的起源。 每个具有唯一来源的 Range 应用程序都需要一个唯一的 IP 地址,而 IP 地址是有限的资源。 如果需要超过 10 个 Range 应用程序,请向 IBM 提交支持案例。 申请提高限额需要进行用例审查,可能需要几天时间
如果这些应用程序共享一个现有的起源,但使用不同的端口,则可以创建 10 个以上的应用程序。
-
对于 TCP 范围应用,只适用自定义 IP 规则,因为这些规则在 OSI 第 3 层和第 4 层运行。 HTTP (S) 范围应用程序同时支持防火墙规则和 IP 规则。 一般来说,防火墙规则是针对第 7 层 ( HTTP ) 属性设计的,如请求标头和正文内容。
更多信息,请参阅 范围应用。
在控制台中创建范围应用程序
要在控制台中添加“范围”应用程序,请按照以下步骤操作:
-
在 CIS 控制台中,导航至安全部分。
-
选择范围选项卡,然后单击创建。
-
从列表中选择应用程序类型:TCP、UDP、HTTP、HTTPS、RDP、SSH 或 Minecraft。 更多信息,请参阅 协议和用例。
-
输入应用程序名称。 该名称会将您的应用程序与 CIS 域名上的 DNS 名称关联起来。
-
输入边缘端口。CIS 会监听这些端口上的传入连接,并将其代理到您的源端口。 与这些地址的连接将采用针对源服务器的代理。
您可以输入端口范围,例如 (
8080-8090
),但原点必须有相同数量的连续端口与该范围相匹配。 -
选择边缘 IP 连接。
-
在起源部分,输入 TCP 应用程序的起源 IP 和端口,或选择现有的负载平衡器和端口。
-
可选择启用自定义规则。 启用后,应用程序将执行带有“阻止”或“允许列表”操作的规则。
-
可选择启用边缘 TLS 终止。 启用后,从列表中选择要使用的 TLS 终止类型。
-
或者,如果您有支持该协议的代理内联,请选择 PROXY 协议。 如果运行的服务需要了解真正的客户端 IP,这就非常有用了。 通常,该设置保持
off
。 -
单击创建。
根据每个应用程序使用的带宽量,配置范围应用程序会产生额外费用。
查看度量值
您的应用程序现在可以通过 CIS (Cloudflare) 代理 TCP 流量。
导航至度量值 > 范围以查看应用程序的连接数和吞吐量流量。
图形最多显示 10 个应用程序的度量值。
要切换应用程序指标,请使用图表键或单击选择应用程序。 要更改“度量”数据时间范围,请使用列表菜单。
API 用法示例
使用以下示例创建并列出范围应用程序。
创建范围应用程序
在“范围”应用程序中,有两种方法可以指定原点:
- 源 IP - 使用
origin_direct
参数。 - 负载平衡器 - 使用
origin_dns
和origin_port
参数。
对于源 IP 请求:
curl --request POST \
--url https://api-int.cis.dev.cloud.ibm.com/v1/crn:v1:staging:public:internet-svcs-ci:global:a/ce12845bf2914ca18db35bedcd9aefa2:e04e7ccd-9197-4b6d-bf98-933de5074fe6::/zones/2566bebb17f5c0b559a9873a692ccab5/range/apps \
--header 'Content-Type: application/json' \
--header 'X-AUTH-USER-TOKEN: Bearer XXXX' \
--data '{"protocol":"tcp/22","dns":{"type":"CNAME","name":"origin.entdemo5.batflare.com"},"origin_direct":
["tcp://8.8.8.8:22"],"proxy_protocol":"off","ip_firewall":true}'
示例响应:
{
"result": {
"id": "de4d336aea6f4f56b998ffdec9a0f00c",
"protocol": "tcp/22",
"dns": {
"type": "CNAME",
"name": "origin.entdemo5.batflare.com"
},
"origin_direct": [
"tcp://8.8.8.8:22"
],
"ip_firewall": true,
"proxy_protocol": "off",
"tls": "off",
"traffic_type": "direct",
"edge_ips": {
"type": "dynamic",
"connectivity": "all"
},
"created_on": "2025-08-13T07:39:54.175727Z",
"modified_on": "2025-08-13T07:39:54.175727Z"
},
"success": true,
"errors": [],
"messages": []
}
使用负载平衡器的请求示例:
curl -X POST \
https://api.cis.cloud.ibm.com/v1/<url-encoded-crn>/zones/<zone-d>/range/apps \
-H 'X-Auth-User-Token: <token>' \
-d '{"protocol":"tcp/22","dns":{"type":"CNAME","name":"ssh.example.com"},"origin_dns": {"name": "test"},"proxy_protocol":true,"ip_firewall":true, "origin_port": 43}'
示例响应:
{
"result": {
"id": "4f70c3d4f20576b79135b898295e8093",
"protocol": "tcp/22",
"dns": {
"type": "CNAME",
"name": "ssh.example.com"
},
"origin_dns": {
"name": "test"
},
"origin_port": 43,
"ip_firewall": true,
"proxy_protocol": true,
"created_on": "2019-01-09T17:39:09.190606Z",
"modified_on": "2019-01-09T17:39:09.190606Z"
},
"success": true,
"errors": [],
"messages": []
}
- DNS 名称
- 域名中与应用程序相关的 DNS 名称。
- 协议/边缘端口
- 应用程序监听的端口;传入连接会代理到您的源端口。
- 原产地直达
- 应用程序运行所在的 IP 和端口,指定从边缘到源头的流量流向。
- IP 防火墙
- 如果启用,CIS 可执行自定义规则标准,如允许、阻止或质疑特定 IP 或范围,从而取代传统的 IP 防火墙行为,提供更精细的访问控制。
- 代理协议
- 仅在有支持 PROXY 协议的内联代理时启用 v1; 通常禁用。
- 起源 DNS
- 负载平衡器名称,用作您的原点。
- Origin Port
- 原始服务的端口。
更多信息,请参阅 创建范围应用程序。
列出所有范围应用
使用以下请求列出所有范围申请:
curl --request GET \
--url https://api-int.cis.dev.cloud.ibm.com/v1/crn:v1:staging:public:internet-svcs-ci:global:a/ce12845bf2914ca18db35bedcd9aefa2:e04e7ccd-9197-4b6d-bf98-933de5074fe6::/zones/2566bebb17f5c0b559a9873a692ccab5/range/apps \
--header'content-type: application/json'
--header 'X-AUTH-USER-TOKEN: Bearer XXXX' \
{: pre}
Example response:
```sh
{
"result": [
{
"id": "de4d336aea6f4f56b998ffdec9a0f00c",
"protocol": "tcp/22",
"dns": {
"type": "CNAME",
"name": "origin.entdemo5.batflare.com"
},
"origin_direct": [
"tcp://8.8.8.8:22"
],
"ip_firewall": true,
"proxy_protocol": "off",
"tls": "off",
"traffic_type": "direct",
"edge_ips": {
"type": "dynamic",
"connectivity": "all"
},
"created_on": "2025-08-13T07:39:54.175727Z",
"modified_on": "2025-08-13T07:39:54.175727Z"
}
],
"success": true,
"errors": [],
"messages": []
}
更多信息,请参阅 列表范围应用。
列出具体的范围应用
请按照以下要求列出具体的范围应用:
curl -X GET \
https://api.cis.cloud.ibm.com/v1/<url-encoded-crn>/zones/<zone-d>/range/apps/4f70c3d4f20546b79135b898295e8093
答复示例:
-
Origin IP 提出的申请:
{ "result": { "id": "4f70c3d4f20546b79135b898295e8093", "protocol": "tcp/22", "dns": { "type": "CNAME", "name": "ssh.example.com" }, "origin_direct": [ "tcp://172.0.2.1:22" ], "ip_firewall": true, "proxy_protocol": true, "created_on": "2019-01-09T17:33:09.190606Z", "modified_on": "2019-01-09T17:33:09.190606Z" }, "success": true, "errors": [], "messages": [] }
-
负载平衡器的应用程序:
{ "result": { "id": "555359036e7f4acc82d69b916f62caba", "protocol": "tcp/22", "dns": { "type": "CNAME", "name": "ssh.example.com" }, "origin_dns": { "name": "test_update" }, "origin_port": 76, "ip_firewall": true, "proxy_protocol": true, "created_on": "2019-01-10T22:26:47.167008Z", "modified_on": "2019-01-10T22:26:47.167008Z" }, "success": true, "errors": [], "messages": [] }