> For the complete documentation index, see [llms.txt](https://docs.console.zenlayer.com/welcome/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://docs.console.zenlayer.com/welcome/cn/elastic-compute/networking/01-overview-2/04-dynamic-routing.md).

# 边界网关动态路由

边界网关上的动态路由即是 BGP。您在网关与邻居路由器之间建立对等关系 — 邻居可以是另一个 VPC 的边界网关，也可以是另一云平台的路由端点 — 双方交换前缀。您广播的路由向外发出；对等方广播的路由则以**动态路由**的形式到达您的 VPC 路由表，并可自动转发。

其价值在于双方均能适应变化。对等方新增一个子网并广播，该前缀即出现在您的 VPC 路由表中，无需您修改云端配置。会话断开时，该会话所承载的前缀将自动撤销。

## 您在云侧可控制的内容

为边界网关配置 BGP 时，您需要做出三方面决策：

* **与谁建立对等** — 互联链路、VLAN、对端 ASN 及可选密码。
* **向外广播什么** — 对等方可以学习到您 VPC 的哪些子网、路由或 CIDR。
* **学习到的前缀采用何种路由模式** — 区域传播还是全局传播。参见[路由模式](/welcome/cn/elastic-compute/networking/01-overview-2/05-routing-modes.md)。

BGP 会话本身的机制由平台负责处理。

## 建立对等关系

在 Console 中，对于已挂载到 VPC 的[边界网关](https://console.zenlayer.com/zec/borderGateway)，您可以添加 BGP 邻居。需要指定：

* **VLAN ID** — 互联链路的 VLAN。
* **对端 AS 号。**
* **可选的 BGP 密码。**
* **链路类型和带宽。**

会话建立后，网关即可进行前缀交换。

## 控制广播内容

您不会自动广播所有内容。对于每个边界网关，您需要选择以下其中一种模式：

* **宣告所有可见子网。** 所挂载 VPC 中的每个子网都会被广播。之后新增的子网也会自动广播。适合简单场景；当您不希望所有子网都被暴露时，此方式存在风险。
* **宣告自定义路由。** 当只需要将特定的 VPC 路由对对等方可见时，您选择要广播的路由 ID。
* **宣告自定义 CIDR 地址段。** 您列出要广播的特定 CIDR。其他内容不会发出。这是最安全的默认方式：您只广播您明确想要广播的内容。
* **按子网选择。** 您逐一开启或关闭每个子网的广播。适用于"全部"范围过大，但允许子网列表变动频繁、手动维护 CIDR 列表较为繁琐的场景。

请选择满足需求的最严格模式。广播了不该广播的前缀 — 尤其是与对端地址空间重叠的前缀 — 可能造成路由环路或导致对等方丢弃流量。

## 您学习到的内容

对等方广播的路由以**动态路由**的形式到达 VPC 路由表。从转发角度看，它们与其他路由条目无异：目标前缀、下一跳（边界网关）、优先级。

需要了解的行为：

* **撤销是自动的。** 对等方停止广播某个前缀，该前缀即从路由表中移除。BGP 会话完全断开时，该会话学习到的所有前缀均被撤销。
* **最长前缀匹配仍然有效。** 学习到的 `/24` 会覆盖匹配该 `/24` 的更粗粒度路由。
* **向其他区域的传播取决于模式。** 在区域模式下，学习到的前缀仅保留在本地区域的路由表中。在全局模式下，该前缀会通过 Zenlayer 的私有骨干网传播至 VPC 所覆盖的每个区域。参见[路由模式](/welcome/cn/elastic-compute/networking/01-overview-2/05-routing-modes.md)。

## 常见控制要点

**保持广播显式化。** 使用已宣告的 CIDR、选定的路由或按子网选择，控制对等方从您这里学习到的内容。

**选择区域或全局传播。** 区域模式将学习到的前缀保留在本地区域。全局模式通过私有骨干网将学习到的前缀发送至其他可达区域。

**避免对等路由重叠。** 如果两个对等方广播同一前缀，路由选择在运维上将难以推断。优先使用不重叠的广播，或有意为之并记录在案。

## 动态路由无法解决的问题

* **地址重叠。** 如果对等两侧都配置了广播 `10.0.0.0/16`，BGP 会毫不犹豫地从两侧广播该路由。路由行为将与预期不符；请先规划好地址空间。
* **传输层故障。** BGP 假设底层传输正常工作。如果私有链路不稳定，BGP 会话也会随之抖动，路由表将持续震荡。请先修复传输层，再依赖 BGP。

## 上线前的检查项

1. **您的 ASN 与对端 ASN 不同。** 两端使用相同 ASN 需要额外配置，且通常不是您想要的结果。
2. **前缀列表是显式的。** 在生产对等中，不要依赖"所有子网"广播方式，除非您已审计过子网列表。
3. **在演练测试中验证 VPC 路由表是否正确。** 建立会话，检查学习到的路由，在将生产工作负载路由至该对等之前，验证流量是否正常。
4. **您的对等方清楚预期是什么。** 在安排割接之前，就广播前缀和 ASN 达成一致。当双方都清楚"正确"应是什么样子时，BGP 故障排查会快得多。
