添加和删除前缀过滤器
通过前缀过滤,您可以为 Transit Gateway 连接设置前缀路由过滤器的有序列表。
准备工作
在创建前缀过滤器之前,请确保查看以下注意事项:
- 只有包含网络的帐户中的用户才能过滤该网络的前缀。
- 您不能过滤从其他账户接收的前缀。
- 将按顺序处理列表中的前缀过滤器。 您可以随时修改订单。
- 查看传输网关的 前缀服务限制。
- 对于跨帐户连接,只有相应连接的帐户所有者才能修改前缀过滤器。 其他账户可以查看连接,但不能修改筛选器。
- GRE 隧道配置未作为连接实现。 相反,他们的路由是在隧道上建立的 BGP 会话上直接学习的。 因此,不会对这些连接启用前缀过滤。
- 如果您选择 “请求连接到另一个帐户中的网络” 作为连接范围选项,则您无法设置前缀过滤器,因为您不是该连接的网络所有者。 在拥有连接的帐户上设置前缀过滤器。
- 前缀过滤器子网掩码是特定的。 例如,定义为
10.10.20.0/24
的规则与子网10.10.20.0/28
或任何其他子网前缀不匹配。
在 UI 中使用前缀过滤器
添加新连接时,可以添加前缀过滤器。 您还可以向现有连接添加过滤器,或者将其删除。
向新连接添加前缀过滤器
要在 UI 中向新连接添加前缀过滤器,请执行以下步骤:
-
从浏览器打开 IBM Cloud 控制台并登录账户。
-
从左上角选择导航菜单图标 导航
,然后单击基础架构 > 网络 > Transit Gateway。
-
从 " Transit Gateway " 页面中,单击要在其中添加前缀过滤器的网关的名称。
-
在网关详细信息页面,单击添加连接。
-
输入以下信息:
查看 规划 Transit Gateway 中的需求和配置注意事项。
-
选择网络连接。 您可以选择以下连接类型:
-
经典基础架构 网络允许您连接到 IBM Cloud 经典资源。 每个帐户只允许一个经典基础架构连接。
-
VPC 网络可以包含计算资源,允许您连接到帐户的 VPC 资源,或者在核准后连接到其他帐户的 VPC 资源。
-
Direct Link 创建与 Direct Link 2.0 网关的网络连接,以便与内部部署网络和其他连接到 Transit Gateway 的资源建立安全连接。
如果选择 Direct Link,那么还必须登录到 Direct Link 控制台 (该控制台使用相同的 IBM Cloud 帐户),并指定 Transit Gateway 作为直接链路的网络连接类型。 您可以在创建直接链路时或在供应直接链路后指定连接类型。 有关指示信息,请参阅 更新网络连接类型。
-
Power Virtual Server 创建与 Power Virtual Server 实例的网络连接,以便 Power Virtual Server 网络和资源可以连接到连接到 Transit Gateway 的网络和其他资源。
如果选择 Power Virtual Server,那么必须在支持 PER 的数据中心内创建 Power Systems Virtual Server 工作空间。 有关支持 PER 的数据中心的列表,请参阅 Power Edge Router 入门。
-
-
对于“连接”访问权,请选择下列其中一个选项:
- 在此帐户中添加新连接-输入可选连接名称。
- 请求连接到另一个帐户中的网络-输入管理要连接到的网络的帐户的 IBM Cloud 标识以及连接名称。 连接到该中转网关的所有资源都可从其他网络访问。
-
完成连接的所有其他必需信息。
-
-
(可选) 您可以创建前缀过滤器以允许或拒绝特定连接上的特定路由。
首先,展开“前缀”过滤部分右上角的箭头。 然后,填写以下信息:
-
根据需要调整 缺省过滤器。 您的选择如下
- 许可前缀 (缺省值) 在处理前缀过滤器列表中的条目后接受所有前缀。
- 处理前缀过滤器列表中的条目后,拒绝前缀 将拒绝所有前缀。
无论缺省设置如何,您仍可以通过创建前缀过滤器来允许或拒绝网络流量。
-
要创建前缀过滤器,请选择 创建前缀过滤器,然后完成以下信息:
- 选择操作类型: 许可 或 拒绝。
- 输入网络前缀及其子网掩码 (例如,
10.0.0.0/16
)。 - (可选) 输入网络是否应大于或等于您选择的子网掩码的值。
- 单击 保存 以添加前缀过滤器。
根据列表中过滤器的顺序拒绝或允许连接。 编辑前缀过滤器列表以调整前缀的处理顺序。
-
-
在“添加连接”页面上,单击 添加 以使用前缀过滤器完成连接。
向现有连接添加前缀过滤器
要向 UI 中的现有连接添加前缀过滤,请执行以下步骤:
-
从 " Transit Gateway " 页面中,单击要在其中添加前缀过滤器的网关的名称。
-
前缀过滤图标
显示连接是否已具有前缀过滤器。 单击 前缀过滤器 旁边的 查看 以显示前缀过滤器列表。
要修改现有前缀过滤器,请单击“操作”菜单
,然后选择 前缀过滤。
-
如果连接没有现有前缀过滤器,请单击“操作”菜单
,然后选择 前缀过滤。
-
根据需要调整缺省过滤器。 您的选择如下
- 许可前缀 (缺省值) 指示此连接中的所有前缀可供此 Transit Gateway 中的所有其他连接访问。 在这种情况下,“所有”表示达到既定的配额和限制。
- 拒绝前缀 指示此连接中没有任何前缀可供此 Transit Gateway 上的任何其他连接访问。
-
单击 创建前缀过滤器,然后使用以下选项配置过滤器:
- 选择操作。
- 输入网络前缀以及子网掩码。
- (可选) 如果网络应该大于或等于所需的子网掩码,请输入值。
- 根据需要调整路由表中过滤器的顺序,然后单击 保存。
删除前缀过滤器
要在 UI 中删除现有连接的前缀过滤器,请执行以下步骤:
-
从 Transit Gateway 的详细信息页面中,标识要在其中删除前缀过滤器的连接。
前缀过滤图标
显示连接是否已具有前缀过滤器。
-
单击连接的“操作”菜单
,然后选择 前缀过滤。
-
单击要删除的前缀过滤器旁边的“操作”菜单
。 然后,单击 删除。
-
单击 删除前缀过滤器 以确认删除。
使用 CLI 中的前缀过滤器
使用 CLI 添加新连接时,可以添加前缀过滤器。 您还可以将其删除。
从 CLI 添加前缀过滤器
要从 CLI 添加前缀过滤器,请执行以下步骤:
ibmcloud tg prefix-filter-create GATEWAY_ID CONNECTION_ID --prefix PREFIX --action ACTION [--le LE] [--ge GE] [--before BEFORE] [--output json]
其中:
-
GATEWAY_ID: 要对其应用前缀过滤器的网关的标识。
-
CONNECTION_ID: 要对其应用前缀过滤器的连接的标识。
-
-- prefix: 将应用过滤器的网络前缀。
-
- -action:对指定前缀采取的行动(
permit
|deny
)。
- -action:对指定前缀采取的行动(
-
-- le: 可选: 前缀过滤器应用于小于或等于此值的子网掩码。
-
-- ge: 可选: 前缀过滤器应用于大于或等于此值的子网掩码。
-
-- before: 可选: 此过滤器之前应应用的前缀过滤器的标识。 如果为空,那么将最后应用此过滤器。
-
-- output: 可选: 指定是否希望输出以 JSON 格式显示。
示例: 创建前缀过滤器
从 CLI 创建前缀过滤器的示例如下所示:
ibmcloud tg pfc 9f559c43-63f4-4da5-b312-b525a8dce185 6c1bdc19-4adb-4760-8cdc-ef3b74b626f7 --prefix 10.0.250.0/24 --action permit --le 32 --ge 28
FilterID b4dbe0a6-c52d-4128-cc32-6f53d86bc82b
Prefix 10.0.250.0/24
Action permit
Ge 28
Le 32
Before
Created 2022-02-28T12:35:09.226-06:00
Updated 2022-02-28T12:35:09.226-06:00
从 CLI 中删除前缀过滤器
要从 CLI 中删除前缀过滤器,请执行以下步骤:
ibmcloud tg prefix-filter-delete GATEWAY_ID CONNECTION_ID FILTER_ID [-f, --force]
其中:
-
GATEWAY_ID: 将从中删除前缀过滤器的网关的标识。
-
CONNECTION_ID: 将从中删除前缀过滤器的连接的标识。
-
FILTER_ID: 要删除的前缀过滤器的标识。
-
--force, -f:强制执行删除操作,无需确认。
示例: 删除前缀过滤器
这是从 CLI 中删除前缀过滤器的示例。
ibmcloud tg pfd 9f559c43-63f4-4da5-b312-b525a8dce185 6c1bdc19-4adb-4760-8cdc-ef3b74b626f7 b4dbe0a6-c52d-4128-cc32-6f53d86bc82b
This deletes filter b4dbe0a6-c52d-4128-cc32-6f53d86bc82b on gateway 9f559c43-63f4-4da5-b312-b525a8dce185 connection 6c1bdc19-4adb-4760-8cdc-ef3b74b626f7 and can't be undone. Continue [y/N] ?> Y
Deleting filter b4dbe0a6-c52d-4128-cc32-6f53d86bc82b on gateway 9f559c43-63f4-4da5-b312-b525a8dce185 connection 6c1bdc19-4adb-4760-8cdc-ef3b74b626f7 under account bbstsdv1 - IBM as user Hasan.Mahmood.Khan@ibm.com...
OK
Filter b4dbe0a6-c52d-4128-cc32-6f53d86bc82b is deleted.
使用 API 处理前缀过滤器
添加与 API 的连接时,可以添加前缀过滤器。 您还可以将其删除。
使用 API 添加前缀过滤器
执行以下步骤以将前缀过滤器添加到与 API 的连接:
-
设置 API 环境。
-
存储要在 API 命令中使用的任何其他变量。
-
启动所有变量时,添加前缀过滤器。 例如:
curl -X POST --location --header "Authorization: Bearer {iam_token}" \ --header "Accept: application/json" \ --header "Content-Type: application/json" \ --data '{ "location": "us-south", "name": "Transit_Service_BWTN_SJ_DL" }' \ "{base_url}/transit_gateways?version={version}"
有关更多信息,请参阅 Transit Gateway API 参考中的 将前缀过滤器添加到 Transit Gateway 连接。
使用 API 删除前缀过滤器
-
设置 API 环境。
-
存储要在 API 命令中使用的任何其他变量。
-
启动所有变量时,添加前缀过滤器。 例如:
curl -X DELETE --location \ --header "Authorization: Bearer {iam_token}" \ "{base_url}/transit_gateways/{transit_gateway_id}/connections/{id}/prefix_filters/{filter_id}?version={version}"
有关更多信息,请参阅 Transit Gateway API 参考中的 从 Transit Gateway 连接中除去前缀过滤器。
使用 Terraform 处理前缀过滤器
查看在添加或删除前缀过滤器时可以为资源指定的以下参数引用:
参数 | 详细信息 |
---|---|
gateway 必需 字符串 |
网关的唯一标识。 |
connection_id 必需 字符串 |
网关连接的唯一标识。 |
action 必需 字符串 |
是否允许或拒绝任何匹配的前缀。 |
prefix 必需 字符串 |
IP 前缀。 |
before 可选 字符串 |
要将此过滤器放在前面的前缀过滤器的标识。 当过滤器在其 before 字段中引用另一个过滤器时,将在引用的过滤器之前应用进行引用的过滤器。例如,如果过滤器 A 在其 before 字段中引用过滤器 B,那么将在 B 之前应用 A。 |
ge 可选 整数 |
IP 前缀 GE。 GE (大于或等于) 值设置应用过滤操作的最小前缀长度。 |
le 可选 整数 |
IP 前缀 LE。 LE (小于或等于) 值设置应用过滤操作的最大前缀长度。 |
示例
此示例显示如何添加前缀过滤器:
resource "ibm_tg_connection_prefix_filter" "test_tg_prefix_filter" {
gateway = ibm_tg_gateway.new_tg_gw.id
connection_id = ibm_tg_connection.test_ibm_tg_connection.connection_id
action = "permit"
prefix = "192.168.100.0/24"
le = 32
ge = 24
}
要除去前缀过滤器,请使用 terraform destroy -target=ibm_tg_connection_prefix_filter.[prefix filter name]
命令。