# 边界网关路由模式

边界网关以两种路由模式之一运行：**区域模式**或**全局模式**。模式决定了其所处理的路由的传播范围。

这一区别至关重要，因为边界网关只存在于某一个区域。它的 BGP 对等方在该区域与之通信。模式所回答的问题是：网关从对等方学习到一个前缀后，该前缀仅对*本地区域*的 VPC 工作负载可用，还是对 *VPC 在每个区域的所有子网*均可用？

**创建边界网关时，默认模式为区域模式。** 如果您希望将学习到的路由传播至 VPC 的每个区域，必须显式切换至全局模式。

![区域模式与全局模式对比](/files/2swJyTSbGR1hpvMl4SjC)

## 区域模式

学习到的路由和广播内容仅在网关所在区域内有效。该区域的 VPC 路由表会反映这些路由，其他区域的路由表则不会。

以下情况适合使用区域模式：

* **对等方只关心单个区域的流量。** 只与一个区域的工作负载通信的数据中心，没有必要出现在其他区域的路由表中。
* **您希望每个区域独立建立对等关系。** 每个区域拥有自己的网关和对等方，您倾向于并行的区域级范围，而非集中化方案。
* **您希望控制影响半径。** 某一区域内的路由错误广播不会传播到其他区域。

该区域内的实例访问学习到的前缀的流量路径为：实例 → VPC 路由 → 边界网关 → BGP 对等方。无需跨区域跳转。

*其他*区域的实例无法通过该网关访问以区域模式学习到的前缀。如有需要，可在该区域部署第二个边界网关并建立独立会话，或将当前网关切换至全局模式。

## 全局模式

学习到的路由从网关所在区域，通过 Zenlayer 的私有骨干网，传播至 VPC 在其他所有区域的子网。该前缀出现在每个区域的 VPC 路由表中。其他区域的实例发出的流量先经骨干网转至网关所在区域，再从该区域出口到 BGP 对等方。

以下情况适合使用全局模式：

* **单个外部对等关系服务于所有区域的工作负载。** 您不希望每个区域各维护一个 BGP 会话；只需建立一次对等，覆盖全局。
* **对等方是外部前缀的"单一可信来源"。** 企业数据中心、运营商上游、中心化本地网络 — 凡是需要从所有区域均可访问的资源，都应学习至全局模式网关。
* **区域模式需要过多冗余会话。** 十个区域 × 一个对等方 = 区域模式下需维护十个 BGP 会话，全局模式只需一个。

权衡点在于传输成本和延迟。来自较远区域的流量需要经过较长的骨干网路径才能到达对等方。如果对等方与网关所在区域在物理位置上相近，这是高效的。如果对等方服务于对延迟敏感的工作负载，按区域部署网关可能仍然更合适。

## 如何选择

| 您的情况              | 模式   |
| ----------------- | ---- |
| 数据中心仅连接到一个区域      | 区域模式 |
| 本地网络需要从每个区域均可访问   | 全局模式 |
| 每个区域已有各自的网关       | 区域模式 |
| 希望将外部对等集中在一个区域    | 全局模式 |
| 合规要求路由必须保留在区域内    | 区域模式 |
| 单个靠近互联网的对等方服务整个环境 | 全局模式 |

如有疑虑，从区域模式开始。影响半径严格限定在较小范围内，之后有需要时可切换至全局模式。反向操作 — 从全局模式切换回区域模式 — 则需要在您希望独立管理的各区域重新建立会话。

## 每个网关只有一种模式

一个边界网关在同一时间只能使用一种模式。在当前的 VPC 模型中，一个 VPC 对应一个边界网关，因此请根据您对学习到的路由所期望的范围来选择模式。

如果某个区域需要仅限本地的路由，而另一个区域需要全局路由，请将其设计为独立的 VPC 或独立的区域部署，而不是尝试为同一 VPC 挂载多个边界网关。

## 模式不影响的内容

* **BGP 会话本身。** 无论模式如何，对端侧的配置完全相同 — 对等方不知道也不关心模式设置。
* **向外广播。** 网关向 BGP 对等方广播的前缀集与模式无关。模式影响的是*学习到的*前缀在您侧的可见范围；它不影响对等方从您这里看到的内容。

## 常见错误

**误认为区域模式会"经骨干网"到达其他区域。** 不会。区域模式即是区域范围。其他区域的 VPC 路由表不会包含学习到的前缀。

**对某个区域延迟敏感、其他区域不敏感的对等方设置全局模式。** 无论是否受益，所有远端区域都要承担骨干网传输成本。如果只有一个区域实际需要该对等，区域模式可直接服务于该区域，不影响其他区域。

**在生产环境高峰期变更已在线网关的模式。** 模式变更生效很快，但会引发重新收敛 — 受影响范围内的路由表将被重建。请将此类变更安排在流量低谷期进行。


---

# Agent Instructions: Querying This Documentation

If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter:

```
GET https://docs.console.zenlayer.com/welcome/cn/elastic-compute/networking/01-overview-2/05-routing-modes.md?ask=<question>
```

The question should be specific, self-contained, and written in natural language.
The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
