为 IPv4 或 IPv6 BGP 会话配置多协议 BGP
通过 Cloud Router,您可以在使用多协议 BGP (MP-BGP) 的各个边界网关协议 (BGP) 会话中启用和停用 IPv4 或 IPv6 路由交换。借助 MP-BGP,您可以通过 IPv4 BGP 会话交换 IPv6 路由,也可以通过 IPv6 BGP 会话交换 IPv4 路由。
如需在单个 BGP 会话中交换 IPv4 和 IPv6 流量,您必须在 Network Connectivity 产品(例如高可用性 VPN 或专用互连)中选择 IPv4 和 IPv6(双栈)栈类型。
通过修改 BGP 对等方的配置,您可以在特定 BGP 会话中启用或停用 IPv4 或 IPv6 路由交换。如果您需要排查特定于 IPv4 或 IPv6 的网络问题,则停用 IPv4 或 IPv6 路由交换非常有用。另一个原因可能是,您希望在双栈高可用性 VPN 隧道中暂时停用流量,而不删除隧道和网关。
如果您在 BGP 会话中停用 IPv4 或 IPv6 路由交换,然后重新启用它,则系统不会弃用之前分配的 IPv4 或 IPv6 下一个跃点地址。如果 BGP 会话再次启用了 IPv4 或 IPv6,则可以重复使用这些 IPv4 或 IPv6 下一个跃点地址。
准备工作
gcloud
如果您要使用本指南中的命令行示例,请执行以下操作:
- 安装或更新到 Google Cloud CLI 的最新版本。
- 设置默认区域和可用区。
API
如果希望使用本指南中的 API 示例,请设置 API 访问权限。
配置 IPv4 BGP 会话
本部分介绍如何修改 IPv4 BGP 会话的配置。
您无法在 IPv4 BGP 会话中停用 IPv4 路由交换。
通过 IPv4 会话启用 IPv6 路由交换
此过程假设您要修改已经为 Cloud Interconnect 的高可用性 VPN 隧道或 VLAN 连接创建的 IPv4 BGP 会话。
此外,还假设您已按照以下过程所述将关联的高可用性 VPN 网关或 VLAN 连接配置为使用 IPv4 和 IPv6(双栈)栈类型:
如需在现有 IPv4 BGP 会话中启用 IPv6 路由交换,请执行以下步骤。
控制台
对于高可用性 VPN
如需为高可用性 VPN 配置 BGP 会话,请在 Google Cloud 控制台中转到 Cloud VPN 隧道页面。
选择待更新 BGP 会话所属的 Cloud VPN 隧道。
在 VPN 隧道详情页面上,点击修改 BGP 会话。
在多协议 BGP 部分中,点击启用 IPv6 流量切换开关,以切换到开启位置。
可选:您可以手动或自动为高可用性 VPN 隧道分配 IPv6 BGP 地址。
- 如需自动分配地址,请选择自动。
- 如需手动分配地址,请执行以下操作:
- 在 Cloud Router BGP IPv6 下一个跃点字段中输入 IPv6 地址。此地址是 Cloud Router 路由器用于此 Cloud VPN 隧道的 IPv6 地址。此 IPv6 地址会作为 Cloud Router 路由器向其 BGP 对等方通告的 IPv6 路由的下一个跃点进行通告。该地址必须在
2600:2d00:0:2::/63
范围内。 - 在对等 BGP IPv6 下一个跃点字段中输入 IPv6 地址。此地址是本地路由器或对等 VPN 设备的 IPv6 地址。此 IPv6 地址是从 Cloud Router 路由器的 BGP 对等方获知的 IPv6 路由的下一个跃点。该地址必须在
2600:2d00:0:2::/63
范围内。
- 在 Cloud Router BGP IPv6 下一个跃点字段中输入 IPv6 地址。此地址是 Cloud Router 路由器用于此 Cloud VPN 隧道的 IPv6 地址。此 IPv6 地址会作为 Cloud Router 路由器向其 BGP 对等方通告的 IPv6 路由的下一个跃点进行通告。该地址必须在
点击保存并继续。
对于专用互连
如需为专用互连配置 BGP 会话,请转到 VLAN 连接页面。
选择包含要更新的 BGP 会话的 VLAN 连接。
在 VLAN 连接详情页面上,点击修改 BGP 会话。
在多协议 BGP 部分中,点击启用 IPv6 流量切换开关,以切换到开启位置。
点击保存并继续。
gcloud
运行 update-bgp-peer
命令。使用 --enable-ipv6
标志允许 BGP 会话交换 IPv6 路由,如以下示例所示:
gcloud compute routers update-bgp-peer ROUTER_NAME \ --peer-name=PEER_NAME \ --enable-ipv6
(可选)为高可用性 VPN 隧道中使用的 BGP 会话启用 IPv6 流量时,您可以指定 IPv6 下一个跃点地址:
gcloud compute routers update-bgp-peer ROUTER_NAME \ --peer-name=PEER_NAME \ --enable-ipv6 \ --ipv6-nexthop-address=IPV6_NEXTHOP_ADDRESS \ --peer-ipv6-nexthop-address=PEER_IPV6_NEXTHOP_ADDRESS
替换以下内容:
IPV6_NEXTHOP_ADDRESS
:Cloud Router 用于此 Cloud VPN 隧道的 IPv6 地址。此 IPv6 地址会通告为 Cloud Router 向其 BGP 对等方通告的 IPv6 路由的下一个跃点。该地址必须在
2600:2d00:0:2::/63
IPv6 范围内。PEER_IPV6_NEXTHOP_ADDRESS
:本地路由器的 IPv6 地址。此 IPv6 地址是从 Cloud Router 的 BGP 对等方获知的 IPv6 路由的下一个跃点。该地址必须在2600:2d00:0:2::/63
范围内。
如果您未指定下一个跃点地址,则 Google Cloud 会自动为您分配 2600:2d00:0:2::/63
IPv6 范围内的未使用地址。
API
使用 routers.patch
方法更新 bgpPeers[]
字段。
bgpPeers[]
字段接受 BGP 对等方数组。PATCH
此字段时,您将使用请求中包含的新数组覆盖现有 BGP 对等方数组。
发送
GET
请求以获取路由器的当前 BGP 对等方数组。如需了解详情,请参阅查看 BGP 会话配置。发送带有新 BGP 对等方数组的
PATCH
请求。对于要在 BGP 会话中启用 IPv6 的每个 BGP 对等方,请将bgpPeers[].enableIpv6
设置为TRUE
。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 对等方的会话中启用 IPv6:
{ "name": "peer-1", "interfaceName": "if-peer-1", "ipAddress": "169.254.10.1", "peerIpAddress": "169.254.10.2", "peerAsn": 64512, "advertisedRoutePriority": 100, "advertiseMode": "DEFAULT", "advertisedGroups": [], "advertisedIpRanges": [], "enable": "TRUE", "enableIpv6": true }, { "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": [], "enable": "TRUE", "enableIpv6": false " }
此外,如果您要为高可用性 VPN 隧道中使用的 BGP 会话启用 IPv6 流量,则可以指定 IPv6 下一个跃点地址:
{ "name": "peer-1", "interfaceName": "if-peer-1", "ipAddress": "169.254.10.1", "peerIpAddress": "169.254.10.2", "peerAsn": 64512, "advertisedRoutePriority": 100, "advertiseMode": "DEFAULT", "advertisedGroups": [], "advertisedIpRanges": [], "enable": "TRUE", "enableIpv6": true, "ipv6NexthopAddress": "2600:2d00:0:2:0:0:1:5", "peerIpv6NexthopAddress": "2600:2d00:0:2:0:0:1:6" }, { "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": [], "enable": "TRUE", "enableIpv6": false }
使用
ipv6NexthopAddress
和peerIpv6NexthopAddress
的值配置本地路由器或对等 VPN 设备。如需查看高可用性 VPN 和对等 VPN 设备的示例配置,请参阅为 IPv4 和 IPv6 流量设置第三方 VPN。
如需查看专用互连和本地路由器的示例配置,请参阅为 IPv4 和 IPv6 流量设置本地路由器。
通过 IPv4 BGP 会话停用 IPv6 路由交换
此过程假设您要修改先前启用了 IPv6 的现有 IPv4 BGP 会话。
控制台
对于高可用性 VPN
在 Google Cloud 控制台中,进入 Cloud VPN 隧道页面。
选择待更新 BGP 会话所属的 Cloud VPN 隧道。
在 VPN 隧道详情页面上,点击修改 BGP 会话。
如需停用 IPv6 路由交换,请点击启用 IPv6 流量切换开关,将其切换到关闭位置。
点击保存并继续。
对于专用互连
在 Google Cloud 控制台中,转到 VLAN 连接页面。
选择包含要更新的 BGP 会话的 VLAN 连接。
在 VLAN 连接详情页面上,点击修改 BGP 会话。
如需停用 IPv6 路由交换,请点击启用 IPv6 流量切换开关,将其切换到关闭位置。
点击保存并继续。
gcloud
运行 update-bgp-peer 命令。使用 --no-enable-ipv6 标志来阻止 BGP 会话交换 IPv6 路由,如以下示例所示:
gcloud compute routers update-bgp-peer ROUTER_NAME \ --peer-name=PEER_NAME \ --no-enable-ipv6
API
使用 routers.patch
方法更新 bgpPeers[]
字段。
bgpPeers[]
字段接受 BGP 对等方数组。PATCH
此字段时,您将使用请求中包含的新数组覆盖现有 BGP 对等方数组。
发送
GET
请求以获取路由器的当前 BGP 对等方数组。如需了解详情,请参阅查看 BGP 会话配置。发送带有新 BGP 对等方数组的
PATCH
请求。针对要在 BGP 会话中停用 IPv6 的每个 BGP 对等方,将bgpPeers[].enableIpv6
设置为FALSE
。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 对等方的会话中禁用 IPv6:
{ "name": "peer-1", "interfaceName": "if-peer-1", "ipAddress": "169.254.10.1", "peerIpAddress": "169.254.10.2", "peerAsn": 64512, "advertisedRoutePriority": 100, "advertiseMode": "DEFAULT", "advertisedGroups": [], "advertisedIpRanges": [], "enable": "TRUE", "enableIpv6": false }, { "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": [], "enable": "TRUE", "enableIpv6": false }
配置 IPv6 BGP 会话
本部分介绍如何修改 IPv6 BGP 会话的配置。
您无法在 IPv6 BGP 会话中停用 IPv6 路由交换。
启用通过 IPv6 BGP 会话进行的 IPv4 路由交换
此过程假设您要修改已经为高可用性 VPN 隧道或 VLAN 连接创建的 IPv6 BGP 会话。
此外,还假设您已经按照以下过程所述配置了 IPv4 和 IPv6(双栈)高可用性 VPN 网关或 VLAN 连接:
如需在现有 IPv6 BGP 会话中启用 IPv4 路由交换,请执行以下步骤。
控制台
对于高可用性 VPN
如需为高可用性 VPN 配置 BGP 会话,请在 Google Cloud 控制台中转到 Cloud VPN 隧道页面。
选择待更新 BGP 会话所属的 Cloud VPN 隧道。
在 VPN 隧道详情页面上,点击修改 BGP 会话。
在多协议 BGP 部分中,点击启用 IPv4 流量切换开关,以切换到开启位置。
可选:您可以手动或自动为高可用性 VPN 隧道分配 IPv6 BGP 地址。
- 如需自动分配地址,请选择自动。
- 如需手动分配地址,请执行以下操作:
- 选择手动。
- 在 Cloud Router BGP IPv6 地址字段中输入 IPv6 地址。此地址是 Cloud Router 路由器用于此 Cloud VPN 隧道的 IPv6 地址。此 IPv6 地址会作为 Cloud Router 路由器向其 BGP 对等方通告的 IPv6 路由的下一个跃点进行通告。该地址必须在
2600:2d00:0:2::/63
范围内。 - 在 BGP 对等 IPv6 地址字段,输入 IPv6 地址。此地址是本地路由器或对等 VPN 设备的 IPv6 地址。此 IPv6 地址是从 Cloud Router 路由器的 BGP 对等方获知的 IPv6 路由的下一个跃点。该地址必须在
2600:2d00:0:2::/63
范围内。
可选:您可以手动或自动为高可用性 VPN 隧道分配 Cloud Router BGP IPv4 下一个跃点地址。
- 如需自动分配地址,请选择自动。
- 如需手动分配地址,请执行以下操作:
- 选择手动。
- 在 Cloud Router BGP IPv4 下一个跃点字段中输入 IPv4 地址。此地址是 Cloud Router 路由器用于此 Cloud VPN 隧道的 IPv4 地址。此 IPv4 地址会作为 Cloud Router 路由器向其 BGP 对等方通告的 IPv4 路由的下一个跃点进行通告。该地址必须是 BGP 对等 IPv4 地址所在的
/30
子网内的链路本地地址。 - 在对等 BGP IPv4 下一个跃点字段中输入 IPv4 地址。此地址是本地路由器或对等 VPN 设备的 IPv4 地址。此 IPv4 地址是从 Cloud Router 路由器的 BGP 对等方获知的 IPv6 路由的下一个跃点。该地址必须是 Cloud Router BGP IPv4 地址所在的
/30
子网内的链路本地地址。
点击保存并继续。
对于专用互连
如需为专用互连配置 BGP 会话,请转到 VLAN 连接页面。
选择包含要更新的 BGP 会话的 VLAN 连接。
在 VLAN 连接详情页面上,点击修改 BGP 会话。
在多协议 BGP 部分中,点击启用 IPv4 流量切换开关,以切换到开启位置。
点击保存并继续。
gcloud
运行 update-bgp-peer
命令。使用 --enable-ipv4
标志允许 BGP 会话交换 IPv4 路由,如以下示例所示:
gcloud compute routers update-bgp-peer ROUTER_NAME \ --peer-name=PEER_NAME \ --enable-ipv4
(可选)为高可用性 VPN 隧道中使用的 IPv6 BGP 会话启用 IPv4 流量时,您可以指定 IPv4 下一个跃点地址:
gcloud compute routers update-bgp-peer ROUTER_NAME \ --peer-name=PEER_NAME \ --enable-ipv4 \ --ipv4-nexthop-address=IPV4_NEXTHOP_ADDRESS \ --peer-ipv4-nexthop-address=PEER_IPV4_NEXTHOP_ADDRESS
替换以下内容:
IPV4_NEXTHOP_ADDRESS
:Cloud Router 用于此高可用性 VPN 隧道的 IPv4 地址。此 IPv4 地址作为 Cloud Router 向其 BGP 对等方通告的 IPv4 路由的下一个跃点通告。该地址必须在 IPv4 链路本地范围169.254.0.0/16
内。PEER_IPV4_NEXTHOP_ADDRESS
:本地路由器的 IPv4 地址。此 IPv4 地址是从 Cloud Router 的 BGP 对等方获知的 IPv4 路由的下一个跃点。该地址必须在 IPv4 链路本地范围169.254.0.0/16
内。如果您未指定下一个跃点地址,则 Google Cloud 会自动为您分配 IPv4 链路本地
169.254.0.0/16
范围内的未使用地址。
API
使用 routers.patch
方法更新 bgpPeers[]
字段。
bgpPeers[]
字段接受 BGP 对等方数组。PATCH
此字段时,您将使用请求中包含的新数组覆盖现有 BGP 对等方数组。
发送
GET
请求以获取路由器的当前 BGP 对等方数组。如需了解详情,请参阅查看 BGP 会话配置。发送带有新 BGP 对等方数组的
PATCH
请求。对于要在 BGP 会话中启用 IPv4 的每个 BGP 对等方,请将bgpPeers[].enableIpv4
设置为TRUE
。PATCH https://compute.googleapis.com/compute/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 对等方的会话中启用 IPv4:
{ "name": "peer-1", "interfaceName": "if-peer-1", "ipAddress": "fdff:1::1", "peerIpAddress": "fdff:1::2", "peerAsn": 64512, "advertisedRoutePriority": 100, "advertiseMode": "DEFAULT", "advertisedGroups": [], "advertisedIpRanges": [], "enable": "TRUE", "enableIpv4": true }, { "name": "peer-2", "interfaceName": "if-peer-2", "ipAddress": "fdff:1::3", "peerIpAddress": "fdff:1::4", "peerAsn": 64513, "advertisedRoutePriority": 100, "advertiseMode": "DEFAULT", "advertisedGroups": [], "advertisedIpRanges": [], "enable": "TRUE", "enableIpv4": false }
此外,如果您要为高可用性 VPN 隧道中使用的 BGP 会话启用 IPv4 流量,则可以指定 IPv4 下一个跃点地址:
{ "name": "peer-1", "interfaceName": "if-peer-1", "ipAddress": "fdff:1::1", "peerIpAddress": "fdff:1::2", "peerAsn": 64512, "advertisedRoutePriority": 100, "advertiseMode": "DEFAULT", "advertisedGroups": [], "advertisedIpRanges": [], "enable": "TRUE", "enableIpv4": true, "ipv4NexthopAddress": "169.254.0.1", "peerIpv4NexthopAddress": "169.254.0.2" }, { "name": "peer-2", "interfaceName": "if-peer-2", "ipAddress": "fdff:1::3", "peerIpAddress": "fdff:1::4", "peerAsn": 64513, "advertisedRoutePriority": 100, "advertiseMode": "DEFAULT", "advertisedGroups": [], "advertisedIpRanges": [], "enable": "TRUE", "enableIpv4": false }
停用通过 IPv6 BGP 会话进行的 IPv4 路由交换
此过程假定您要修改先前已交换 IPv4 路由的现有 IPv6 BGP 会话。
控制台
对于高可用性 VPN
在 Google Cloud 控制台中,进入 Cloud VPN 隧道页面。
选择待更新 BGP 会话所属的 Cloud VPN 隧道。
在 VPN 隧道详情页面上,点击修改 BGP 会话。
在多协议 BGP 部分中,点击启用 IPv4 流量切换开关,以切换到关闭位置。
点击保存并继续。
对于专用互连
在 Google Cloud 控制台中,转到 VLAN 连接页面。
选择包含要更新的 BGP 会话的 VLAN 连接。
在 VLAN 连接详情页面上,点击修改 BGP 会话。
在多协议 BGP 部分中,点击启用 IPv4 流量切换开关,以切换到关闭位置。
点击保存并继续。
gcloud
运行 update-bgp-peer
命令。使用 --no-enable-ipv4
标志阻止 IPv6 BGP 会话交换 IPv4 路由,如以下示例所示:
gcloud compute routers update-bgp-peer ROUTER_NAME \ --peer-name=PEER_NAME \ --no-enable-ipv4
API
使用 routers.patch
方法更新 bgpPeers[]
字段。
bgpPeers[]
字段接受 BGP 对等方数组。PATCH
此字段时,您将使用请求中包含的新数组覆盖现有 BGP 对等方数组。
发送
GET
请求以获取路由器的当前 BGP 对等方数组。如需了解详情,请参阅查看 BGP 会话配置。发送带有新 BGP 对等方数组的
PATCH
请求。针对要在 BGP 会话中停用 IPv4 的每个 BGP 对等方,将bgpPeers[].enableIpv4
设置为FALSE
。PATCH https://compute.googleapis.com/compute/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 对等方的会话中禁用 IPv4:
{ "name": "peer-1", "interfaceName": "if-peer-1", "ipAddress": "fdff:1::1", "peerIpAddress": "fdff:1::2", "peerAsn": 64512, "advertisedRoutePriority": 100, "advertiseMode": "DEFAULT", "advertisedGroups": [], "advertisedIpRanges": [], "enable": "TRUE", "enableIpv4": false }, { "name": "peer-2", "interfaceName": "if-peer-2", "ipAddress": "fdff:1::3", "peerIpAddress": "fdff:1::4", "peerAsn": 64513, "advertisedRoutePriority": 100, "advertiseMode": "DEFAULT", "advertisedGroups": [], "advertisedIpRanges": [], "enable": "TRUE", "enableIpv4": false }
将现有 IPv4 MP-BGP 会话分离以使用 IPv4 和 IPv6 BGP 会话
现有的 Cloud Router IPv4 MP-BGP 会话使用 IPv4 控制数据包,即使在交换有关 IPv6 BGP 前缀的路由信息时也是如此。在双栈网络中,基于 IPv6 的 BGP 会话可以与基于 IPv4 的 BGP 会话结合使用。本部分介绍了如何修改现有 IPv4 MP-BGP 会话以使用单独的 IPv4 和 IPv6 BGP 会话。
控制台
对于高可用性 VPN
如需为高可用性 VPN 配置 BGP 会话,请在 Google Cloud 控制台中转到 Cloud VPN 隧道页面。
找到包含要更新的 BGP 会话的 Cloud VPN 隧道。
在 VPN 隧道详情页面上,点击修改 BGP 会话。
选择 BGP 会话类型。如需为 IPv4 和 IPv6 启用路由交换,请选择全部。
可选:您可以手动或自动为高可用性 VPN 隧道分配 BGP IPv4 地址。
- 如需自动分配地址,请选择自动。
- 如需手动分配地址,请执行以下操作:
- 选择手动。
- 在 Cloud Router BGP IPv4 地址字段中输入 IPv4 地址。此地址是 Cloud Router 路由器用于此 Cloud VPN 隧道的 IPv4 地址。此 IPv4 地址会作为 Cloud Router 路由器向其 BGP 对等方通告的 IPv4 路由的下一个跃点进行通告。该地址必须是 BGP 对等 IPv4 地址所在的
/30
子网内的链路本地地址。 - 在 BGP 对等 IPv4 地址字段中输入 IPv4 地址。此地址是本地路由器或对等 VPN 设备的 IPv4 地址。此 IPv4 地址是从 Cloud Router 路由器的 BGP 对等方获知的 IPv6 路由的下一个跃点。该地址必须是 Cloud Router BGP IPv4 地址所在的
/30
子网内的链路本地地址。
可选:您可以手动或自动为高可用性 VPN 隧道分配 BGP IPv6 地址。
- 如需自动分配地址,请选择自动。
- 如需手动分配地址,请执行以下操作:
- 选择手动。
- 在 Cloud Router BGP IPv6 地址字段中输入 IPv6 地址。此地址是 Cloud Router 用于此 Cloud VPN 隧道的 IPv6 地址。此 IPv6 地址会通告为 Cloud Router 向其 BGP 对等方通告的 IPv6 路由的下一个跃点。该地址必须在
fdff:1::/64
范围内。 - 在 BGP 对等 IPv6 地址字段中输入 IPv6 地址。此地址是本地路由器或对等 VPN 设备的 IPv6 地址。此 IPv6 地址是从 Cloud Router 的 BGP 对等方获知的 IPv6 路由的下一个跃点。 该地址必须在
fdff:1::/64
范围内。
点击保存并继续。
对于专用互连
如需为专用互连配置 BGP 会话,请转到 VLAN 连接页面。
选择包含要更新的 BGP 会话的 VLAN 连接。
在 VLAN 连接详情页面上,点击修改 BGP 会话。
选择 BGP 会话类型。如需为 IPv4 和 IPv6 启用路由交换,请选择全部。
在 IPv4 BGP 会话部分的对等 ASN 中输入 BGP 会话的本地端的 ASN 值。
在 IPv6 BGP 会话部分的对等 ASN 中输入 BGP 会话的本地端的 ASN 值。
点击保存并继续。
gcloud
为避免与新的 IPv6 BGP 发生冲突,请在现有 IPv4 BGP 会话中停用 IPv6 路由交换。
运行以下命令:
gcloud compute routers update-bgp-peer ROUTER_NAME --peer-name=PEER_NAME \ --no-enable-ipv6
请替换以下内容:
ROUTER_NAME
:Cloud Router 路由器的名称PEER_NAME
:BGP 对等端的名称
添加新的 IPv6 接口:
gcloud compute routers add-interface ROUTER_NAME \ --interface-name=INTERFACE_NAME \ --interconnect-attachment=ATTACHMENT_NAME \ --ip-version=IPV6
请替换以下内容:
INTERFACE_NAME
:接口的名称ATTACHMENT_NAME
:VLAN 连接的名称
添加新的 IPv6 BGP 对等方:
gcloud compute routers add-bgp-peer ROUTER_NAME \ --peer-name=PEER_NAME \ --interface=INTERFACE_NAME \ --peer-asn=PEER_ASN
请替换以下内容:
PEER_ASN
:BGP 对等体的 ASN
如需配置本地 BGP 会话,请获取 VLAN 连接的 IPv6 地址:
gcloud compute interconnects attachments describe ATTACHMENT_NAME
输出类似于以下内容:
adminEnabled: true edgeAvailabilityDomain: AVAILABILITY_DOMAIN_1 bandwidth: BPS_1G cloudRouterIpAddress: 169.254.67.201/29 cloudRouterIpv6Address: 2600:2d00:0:1::1/125 creationTimestamp: '2017-12-01T08:31:11.580-08:00' customerRouterIpAddress: 169.254.67.202/29 customerRouterIpv6Address: 2600:2d00:0:1::2/125 description: Interconnect for Customer 1 id: '7193021941765913888' interconnect: https://www.googleapis.com/compute/projects/partner-project/global/interconnects/lga-2 kind: compute#interconnectAttachment labelFingerprint: 42WmSpB8rSM= name: partner-attachment partnerMetadata: interconnectName: New York (2) partnerName: Partner Inc portalUrl: https://partner-portal.com region: https://www.googleapis.com/compute/projects/partner-project/regions/us-central1 selfLink: https://www.googleapis.com/compute/projects/partner-project/regions/us-central1/interconnectAttachments/customer-attachment stackType: IPV4_IPV6 state: ACTIVE type: PARTNER vlanTag8021q: 1000
相关 IPv6 地址列在
cloudRouterIPv6Address
和customerRouterIpv6Address
下方。
API
使用 routers.patch
方法更新 bgpPeers[]
字段。
bgpPeers[]
字段接受 BGP 对等方数组。PATCH
此字段时,您将使用请求中包含的新数组覆盖现有 BGP 对等方数组。
发送
GET
请求以获取路由器的当前 BGP 对等方数组。如需了解详情,请参阅查看 BGP 会话配置。发送带有新 BGP 对等方数组的
PATCH
请求。对于要在 BGP 会话中为其启用 IPv6 的每个 BGP 对等方,请将bgpPeers[].enableIpv6
设置为TRUE
,并将bgpPeers[].enableIpv4
设置为FALSE
。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 对等方的会话中启用 IPv6:
{ "name": "peer-1", "interfaceName": "if-peer-1", "ipAddress": "169.254.10.1", "peerIpAddress": "169.254.10.2", "peerAsn": 64512, "advertisedRoutePriority": 100, "advertiseMode": "DEFAULT", "advertisedGroups": [], "advertisedIpRanges": [], "enable": "TRUE", "enableIpv6": true, "enableIpv4": false }, { "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": [], "enable": "TRUE", "enableIpv6": false }
此外,如果您要为高可用性 VPN 隧道中使用的 BGP 会话启用 IPv6 流量,则可以指定 IPv6 下一个跃点地址:
{ "name": "peer-1", "interfaceName": "if-peer-1", "ipAddress": "169.254.10.1", "peerIpAddress": "169.254.10.2", "peerAsn": 64512, "advertisedRoutePriority": 100, "advertiseMode": "DEFAULT", "advertisedGroups": [], "advertisedIpRanges": [], "enable": "TRUE", "enableIpv6": true, "enableIpv4": false, "ipv6NexthopAddress": "2600:2d00:0:2:0:0:1:5", "peerIpv6NexthopAddress": "2600:2d00:0:2:0:0:1:6" }, { "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": [], "enable": "TRUE", "enableIpv6": false }
使用
ipv6NexthopAddress
和peerIpv6NexthopAddress
的值配置本地路由器或对等 VPN 设备。如需查看高可用性 VPN 和对等 VPN 设备的示例配置,请参阅为 IPv4 和 IPv6 流量设置第三方 VPN。
如需查看专用互连和本地路由器的示例配置,请参阅为 IPv4 和 IPv6 流量设置本地路由器。
将单独的 IPv4 和 IPv6 BGP 会话合并到单个 IPv4 MP-BGP 会话
您可以将单独的 IPv4 和 IPv6 BGP 会话合并到单个 IPv4 MP-BGP 会话中。在这种情况下,IPv4 控制数据包用于交换 IPv4 和 IPv6 BGP 会话的路由信息。以下过程介绍了如何将单独的 IPv4 和 IPv6 BGP 会话转换为单个 IPv4 MP-BGP 会话:
控制台
对于高可用性 VPN
如需为高可用性 VPN 配置 BGP 会话,请在 Google Cloud 控制台中转到 Cloud VPN 隧道页面。
找到包含要更新的 BGP 会话的 Cloud VPN 隧道。
在 VPN 隧道详情页面上,点击修改 BGP 会话。
选择 BGP 会话类型。如需为 IPv4 启用路由交换,请选择 IPv4 BGP 会话。
如需启用 MP-BGP,请在多协议 BGP 部分中,点击启用 IPv6 流量切换开关,将其切换到开启位置。
可选:您可以手动或自动为高可用性 VPN 隧道分配 IPv4 BGP 地址。
- 如需自动分配地址,请在分配 BGP IPv4 地址部分中选择自动。
- 如需手动分配地址,请执行以下操作:
- 选择手动。
- 在 Cloud Router BGP IPv4 地址字段中输入 IPv4 地址。此地址是 Cloud Router 路由器用于此 Cloud VPN 隧道的 IPv4 地址。此 IPv4 地址会作为 Cloud Router 路由器向其 BGP 对等方通告的 IPv4 路由的下一个跃点进行通告。该地址必须是 BGP 对等 IPv4 地址所在的
/30
子网内的链路本地地址。 - 在 BGP 对等 IPv4 地址字段中输入 IPv4 地址。此地址是本地路由器或对等 VPN 设备的 IPv4 地址。此 IPv4 地址是从 Cloud Router 路由器的 BGP 对等方获知的 IPv6 路由的下一个跃点。该地址必须是 Cloud Router BGP IPv4 地址所在的
/30
子网内的链路本地地址。
可选:您可以手动或自动为高可用性 VPN 隧道分配 IPv6 BGP 下一个跃点地址。
- 如需自动分配地址,请在分配 BGP IPv6 下一个跃点部分中选择自动。
- 如需手动分配地址,请执行以下操作:
- 选择手动。
- 在 Cloud Router BGP IPv6 下一个跃点字段中输入 IPv6 地址。此地址是 Cloud Router 路由器用于此 Cloud VPN 隧道的 IPv6 地址。此 IPv6 地址会作为 Cloud Router 路由器向其 BGP 对等方通告的 IPv6 路由的下一个跃点进行通告。该地址必须在
2600:2d00:0:2::/63
范围内。 - 在对等 BGP IPv6 下一个跃点字段中输入 IPv6 地址。此地址是本地路由器或对等 VPN 设备的 IPv6 地址。此 IPv6 地址是从 Cloud Router 的 BGP 对等方获知的 IPv6 路由的下一个跃点。 该地址必须在
2600:2d00:0:2::/63
范围内。
点击保存并继续。
对于专用互连
如需为专用互连配置 BGP 会话,请转到 VLAN 连接页面。
选择包含要更新的 BGP 会话的 VLAN 连接。
在 VLAN 连接详情页面上,点击修改 BGP 会话。
选择 BGP 会话类型。如需为 IPv4 启用路由交换,请选择 IPv4 BGP 会话。
如需启用 MP-BGP,请在多协议 BGP 部分中,点击启用 IPv6 流量切换开关,将其切换到开启位置。
点击保存并继续。
gcloud
移除 IPv6 BGP 对等方:
gcloud compute routers remove-bgp-peer ROUTER_NAME \ --peer-name=PEER_NAME
移除 IPv6 BGP 接口:
gcloud compute routers remove-interface ROUTER_NAME \ --interface-name=INTERFACE_NAME
启用 IPv4 MP-BGP:
gcloud compute routers update-bgp-peer ROUTER_NAME \ --peer-name=PEER_NAME \ --enable-ipv6
API
使用 routers.patch
方法更新 bgpPeers[]
字段。
bgpPeers[]
字段接受 BGP 对等方数组。PATCH
此字段时,您将使用请求中包含的新数组覆盖现有 BGP 对等方数组。
发送
GET
请求以获取路由器的当前 BGP 对等方数组。如需了解详情,请参阅查看 BGP 会话配置。发送带有新 BGP 对等方数组的
PATCH
请求。对于要在 BGP 会话中为其启用 IPv6 的每个 BGP 对等方,请将bgpPeers[].enableIpv6
设置为TRUE
,并将bgpPeers[].enableIpv4
设置为FALSE
。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 对等方的会话中启用 IPv4 并停用 IPv6:
{ "name": "peer-1", "interfaceName": "if-peer-1", "ipAddress": "169.254.10.1", "peerIpAddress": "169.254.10.2", "peerAsn": 64512, "advertisedRoutePriority": 100, "advertiseMode": "DEFAULT", "advertisedGroups": [], "advertisedIpRanges": [], "enable": "TRUE", "enableIpv6": false, "enableIpv4": true }, { "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": [], "enable": "TRUE", "enableIpv6": false }
此外,如果您要为高可用性 VPN 隧道中使用的 BGP 会话启用 IPv6 流量,则可以指定 IPv6 下一个跃点地址:
{ "name": "peer-1", "interfaceName": "if-peer-1", "ipAddress": "169.254.10.1", "peerIpAddress": "169.254.10.2", "peerAsn": 64512, "advertisedRoutePriority": 100, "advertiseMode": "DEFAULT", "advertisedGroups": [], "advertisedIpRanges": [], "enable": "TRUE", "enableIpv6": false, "enableIpv4": true, "ipv6NexthopAddress": "2600:2d00:0:2:0:0:1:5", "peerIpv6NexthopAddress": "2600:2d00:0:2:0:0:1:6" }, { "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": [], "enable": "TRUE", "enableIpv6": false }
使用
ipv6NexthopAddress
和peerIpv6NexthopAddress
的值配置本地路由器或对等 VPN 设备。如需查看高可用性 VPN 和对等 VPN 设备的示例配置,请参阅为 IPv4 和 IPv6 流量设置第三方 VPN。
如需查看专用互连和本地路由器的示例配置,请参阅为 IPv4 和 IPv6 流量设置本地路由器。
后续步骤
- 如需停用或结束 BGP 会话,请参阅停用或移除 BGP 会话。