移除自定义通告路由
本页面介绍如何停止通告现有 IP 地址范围,以及如何防止本地网络中的客户端发现 Virtual Private Cloud (VPC) 网络中的子网或自定义 IP 地址范围。您只能移除现有的自定义通告路由。不能将 IP 地址范围添加到拒绝名单。
在开始之前,请确保您拥有要移除的现有 IP 地址范围或通告组的列表。
准备工作
gcloud
如果您要使用本指南中的命令行示例,请执行以下操作:
- 安装或更新到 Google Cloud CLI 的最新版本。
- 设置默认区域和可用区。
API
如果希望使用本指南中的 API 示例,请设置 API 访问权限。
在 Cloud Router 路由器上移除自定义通告路由
如需在 Cloud Router 路由器上移除现有的自定义通告路由,请按以下步骤操作。
控制台
在 Google Cloud 控制台中,前往 Cloud Router 路由器页面。
选择要更新的 Cloud Router 路由器。
在路由器详情页面上,点击
修改。找到要删除的自定义通告路由,然后点击每个路由旁边的
删除。删除路由后,点击保存。
gcloud
移除 Google 定义的通告组
如需移除 Google 定义的通告组,请将 gcloud compute routers update
命令与 --remove-advertisement-groups
标志结合使用。通告组是 Cloud Router 路由器动态通告的 Google 定义的 IP 地址范围。如需查看所有通告组的列表,请参阅 Google SDK 文档中的 set-advertisement-groups
标志。
gcloud compute routers update ROUTER_NAME \ --remove-advertisement-groups=ADVERTISED_GROUPS
请替换以下内容:
ROUTER_NAME
:Cloud Router 路由器的名称ADVERTISED_GROUPS
:Cloud Router 路由器动态通告的 Google 定义的 IP 地址范围唯一的有效值是
all_subnets
,它根据 VPC 网络的动态路由模式(类似于默认通告模式)通告子网。
以下示例会更新 my-router
Cloud Router 路由器并移除 all_subnets
通告组:
gcloud compute routers update my-router \ --remove-advertisement-groups all_subnets
移除现有 IP 地址范围
如需移除所通告的现有 IP 地址范围(例如静态外部 IP 地址或子网 IP 地址范围),请将 gcloud compute routers update
命令与 --remove-advertisement-ranges
标志结合使用:
gcloud compute routers update ROUTER_NAME \ --remove-advertisement-ranges=ADVERTISED_IP_RANGES
请替换以下内容:
ROUTER_NAME
:Cloud Router 路由器的名称ADVERTISED_IP_RANGES
:新 IP 地址范围数组的内容您可以同时指定 IPv4 和 IPv6 自定义 IP 地址范围。但是,IPv6 自定义范围仅在启用了 IPv6 的 BGP 会话中通告。
以下示例从 my-router
Cloud Router 中移除现有 10.0.10.0/24
子网 IP 地址范围:
gcloud compute routers update my-router \ --remove-advertisement-ranges 10.0.10.0/24
API
如需更新 bgp.advertisedGroups[]
和 bgp.advertisedIpRanges[]
字段,请使用 routers.patch
方法。
bgp.advertisedGroups[]
和 bgp.advertisedIpRanges[]
字段接受通告组和通告 IP 地址范围的数组。PATCH
这些字段时,您将使用请求中的新数组覆盖现有数组。
发送
GET
请求以获取路由器上的当前通告组和通告 IP 地址范围的数组。 如需了解详情,请参阅查看 BGP 会话配置。发送
PATCH
请求,其中包含新的通告组和通告 IP 地址范围的数组。使用上一步中的GET
请求中的数组,然后移除您不希望在路由器上使用的所有组或 IP 地址范围。您可以发送空数组以移除所有通告组或通告的 IP 地址范围:
PATCH https://compute.googleapis.com/compute/v1/projects/PROJECT_ID/regions/REGION/routers/ROUTER_NAME { "bgp": { "advertisedGroups": [ "ADVERTISED_GROUPS" ], "advertisedIpRanges": [ ADVERTISED_IP_RANGES ] } }
请替换以下内容:
PROJECT_ID
:Cloud Router 路由器所属的项目REGION
:Cloud Router 路由器所在的区域ROUTER_NAME
:Cloud Router 路由器的名称ADVERTISED_GROUPS
:Cloud Router 路由器动态通告的组,由 Google 定义。唯一的有效值是
ALL_SUBNETS
,它根据 VPC 网络的动态路由模式(类似于默认通告模式)通告子网。 如需停止通告子网,您可以发送空数组。ADVERTISED_IP_RANGES
:新 IP 地址范围数组的内容
以下示例包含两个 IP 地址范围:
{ "range": "1.2.3.4", "description": "First example range" }, { "range": "6.7.0.0/16", "description": "Second example range" }
从 BGP 会话中移除自定义通告路由
如需从 BGP 会话中移除现有通告路由,请按以下步骤操作。
控制台
在 Google Cloud 控制台中,前往 Cloud Router 路由器页面。
选择待更新 BGP 会话所属的 Cloud Router 路由器。
在路由器详细信息页面上,选择要更新的 BGP 会话。
在 BGP 会话详情页面中,点击
修改。找到要删除的通告路由,然后点击每个路由旁边的
删除。删除路由后,点击保存。
gcloud
移除 Google 定义的通告组
如需移除通告组,请将 gcloud compute routers update-bgp-peer
命令与 --remove-advertisement-groups
标志结合使用。您可以移除任何现有通告组。
gcloud compute routers update-bgp-peer ROUTER_NAME \ --peer-name=PEER_NAME \ --remove-advertisement-groups=ADVERTISED_GROUPS
请替换以下内容:
ROUTER_NAME
:Cloud Router 路由器的名称PEER_NAME
:您的 BGP 对等体的名称ADVERTISED_GROUPS
:Cloud Router 路由器动态通告的组,由 Google 定义。唯一的有效值是
all_subnets
,它根据 VPC 网络的动态路由模式(类似于默认通告模式)通告子网。
如需查看所有通告组的列表,请参阅 Google SDK 文档中的 set-advertisement-groups
标志。
以下示例会更新 my-router
Cloud Router 路由器上的 my-bgp-session
BGP 会话,以移除 all_subnets
通告组:
gcloud compute routers update-bgp-peer my-router \ --peer-name my-bgp-session \ --remove-advertisement-groups all_subnets
移除现有 IP 范围
如需移除所通告的现有 IP 地址范围(例如静态外部 IP 地址或子网 IP 地址范围),请将 gcloud compute routers update-bgp-peer
命令与 --remove-advertisement-ranges
标志结合使用:
gcloud compute routers update-bgp-peer ROUTER_NAME \ --peer-name=PEER_NAME \ --remove-advertisement-ranges=ADVERTISED_IP_RANGES
请替换以下内容:
ROUTER_NAME
:Cloud Router 路由器的名称PEER_NAME
:您的 BGP 对等体的名称ADVERTISED_IP_RANGES
:新 IP 地址范围数组的内容您可以同时指定 IPv4 和 IPv6 自定义 IP 地址范围。但是,IPv6 自定义范围仅在启用了 IPv6 的 BGP 会话中通告。
以下示例会更新 my-router
Cloud Router 路由器上的 my-bgp-session
BGP 会话,以移除现有的 10.0.10.0/24
子网 IP 范围:
gcloud compute routers update-bgp-peer my-router \ --peer-name my-bgp-session \ --remove-advertisement-ranges 10.0.10.0/24
API
如需更新 bgpPeers[]
字段,请使用 routers.patch
方法。
bgpPeers[]
字段接受 BGP 对等端数组。PATCH
此字段时,您将使用请求中包含的新数组覆盖现有 BGP 对等方数组。
发送
GET
请求以获取路由器的当前 BGP 对等方数组。如需了解详情,请参阅查看 BGP 会话配置。发送带有新 BGP 对等端数组的
PATCH
请求。对要移除自定义通告路由的每个 BGP 对等端,执行以下操作:- 从
bgpPeers[].advertisedIpRanges[]
字段中移除您不需要的任何 IP 地址范围通告。 - 从
bgpPeers[].advertisedGroups[]
字段中移除任何您不需要的任何群组通告。
PATCH https://compute.googleapis.com/compute/v1/projects/PROJECT_ID/regions/REGION/routers/ROUTER_NAME { "bgpPeers": [ BGP_PEERS ] }
请替换以下内容:
PROJECT_ID
:Cloud Router 路由器所属的项目REGION
:Cloud Router 路由器所在的区域ROUTER_NAME
:Cloud Router 路由器的名称BGP_PEERS
:新 BGP 对等体数组的内容
在以下示例中,第一个 BGP 对等端包含
advertisedGroups[]
和advertisedIpRanges[]
字段的值。对于第二个 BGP 对等端,自定义通告路由已被移除,advertiseMode
已还原为DEFAULT
。{ "name": "peer-1", "interfaceName": "if-peer-1", "ipAddress": "169.254.10.1", "peerIpAddress": "169.254.10.2", "peerAsn": 64512, "advertisedRoutePriority": 100, "advertiseMode": "CUSTOM", "advertisedGroups": ["ALL_SUBNETS"], "advertisedIpRanges": [ { "range": "1.2.3.4", "description": "First example range" }, { "range": "6.7.0.0/16", "description": "Second example range" } ] }, { "name": "peer-2", "interfaceName": "if-peer-2", "ipAddress": "169.254.20.1", "peerIpAddress": "169.254.20.2", "peerAsn": 64513, "advertisedRoutePriority": 100, "advertiseMode": "DEFAULT", "advertisedGroups": [], "advertisedIpRanges": [] }
- 从
后续步骤
如需查看 Cloud Router 路由器的配置、其 BGP 会话以及 Cloud Router 路由器要通告的路由,请参阅查看 Cloud Router 路由器详细信息。
如需排查自定义通告路由的问题,请参阅问题排查。