> For the complete documentation index, see [llms.txt](https://docs.verge.io/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://docs.verge.io/learn-the-platform/zh/mo-kuai-4-wang-luo/02-external-networks.md).

# 外部网络

## 什么是外部网络？

外部网络是 VergeOS 环境与外部世界之间的桥梁。它们将 VergeOS 连接到上游物理基础设施——你的企业 LAN、WAN 连接、互联网，或任何存在于 VergeOS 之外的网络。

每个 VergeOS 系统至少需要一个外部网络，通常会在初始安装期间创建。安装后，你可以创建额外的外部网络，以支持多个上行链路、VLAN、独立管理网络，或租户专用的 WAN 连接。

外部网络位于 **物理网络** （二层交换连接）与 **DMZ** （三层路由骨干）之间。从虚拟机流向互联网的流量必须经过外部网络才能到达物理基础设施。

```mermaid
graph LR
    DMZ["DMZ 网络<br/>(路由骨干)"]
    EXT["外部网络<br/>(你的配置)"]
    PHY["物理网络<br/>(交换机连接)"]
    UP["上游<br/>路由器 / 互联网"]

    DMZ -->|"路由 / NAT"| EXT
    EXT -->|"VLAN / 绑定"| PHY
    PHY -->|"物理网线"| UP

    style DMZ fill:#fce4ec,stroke:#c62828
    style EXT fill:#f3e5f5,stroke:#6a1b9a
    style PHY fill:#e3f2fd,stroke:#1565c0
    style UP fill:#f5f5f5,stroke:#616161
```

## 创建外部网络

要创建新的外部网络，请在 **网络 → 新建外部** 中导航到 VergeOS UI。创建表单涵盖三个主要区域：网络标识、二层配置和 IP 编址。

### 网络标识

| 字段       | 说明                                       |
| -------- | ---------------------------------------- |
| **名称**   | 一个描述性名称（例如， `WAN1`, `MGMT-LAN`）。不允许包含空格。 |
| **说明**   | 用于后续管理的可选备注。                             |
| **HA 组** | 分配到高可用组，以便系统将网络实例分布到不同的物理节点上。            |

### 二层配置

该 **二层类型** 决定外部网络如何连接到物理基础设施：

| 二层类型      | 使用场景                                                                                                 |
| --------- | ---------------------------------------------------------------------------------------------------- |
| **vLAN**  | 最常见——在所选物理网络上使用 802.1Q VLAN ID 为流量打标签                                                                |
| **绑定**    | 交换机侧 LAG 组中的主/活动成员；请与次成员的 Bond Secondary 条目配对。要在物理网络之间进行软件主动-备份绑定，请参阅 [绑定接口](#bonded-interfaces) 下方。 |
| **绑定次要**  | 交换机侧 LAG 组中的次成员；与 `绑定` 主条目配对（不是主动-备份软件绑定）                                                            |
| **无**     | 无 VLAN 标记的直连——用于未标记/原生 VLAN 连接                                                                       |
| **vxLAN** | VXLAN 覆盖层——在二层 ID 字段中指定 VXLAN 网络标识符（VNI）                                                             |

选择二层类型后：

* **二层 ID** — 输入 VLAN 或 VXLAN ID（如适用）
* **MTU** — 通常为 `1500` ，适用于外部网络（高级用户可为巨帧进行调整）
* **接口网络** — 选择此外部网络映射到的物理网络（例如， `外部交换机`）。在这里选择另一个外部网络可启用 **Q-in-Q** （VLAN 套 VLAN）配置。

### IP 地址配置

该 **IP 地址类型** 决定外部网络的路由器如何获取其地址：

| IP 地址类型      | 说明                                  |
| ------------ | ----------------------------------- |
| **静态**       | 手动指定 IP、网络 CIDR、网关和 DNS。生产部署中最常见。   |
| **动态**       | 通过 DHCP 获取地址。仅限单一地址——仅适用于小型测试或归档系统。 |
| **BGP/OSPF** | 面向企业环境的动态路由协议集成。                    |
| **无**        | 仅二层连接，在 VergeOS 路由器上不分配 IP。         |

对于 **static** 配置时，请提供：

* **IP 地址** — 此网络路由器的地址（例如， `192.168.212.2`)
* **网络地址** — CIDR 格式的子网（例如， `192.168.212.0/24`)
* **DNS 服务器** — 以逗号分隔的列表（例如， `10.10.25.3, 10.10.25.4`)
* **网关监控** — 推荐。可检测上游连接丢失，使 VergeOS 能够响应故障。

## VLAN 配置

VLAN 是外部网络最常见的二层配置。每个外部网络都可以映射到物理网络上的特定 802.1Q VLAN ID，从而在无需额外物理布线的情况下实现网络分段。

**示例：** 创建一个名为 `WAN1` 的外部网络，位于 VLAN 50：

1. 导航至 **网络 → 新建外部**
2. 设置 **名称** 更改为 `WAN1`
3. 设置 **二层类型** 更改为 `vLAN`
4. 设置 **二层 ID** 更改为 `50`
5. 设置 **接口网络** 更改为 `外部交换机`
6. 配置 IP 编址（静态或动态）
7. 单击 **提交**

### Q-in-Q（VLAN 内嵌 VLAN）

对于需要双标签的环境（例如，服务提供商边缘），请选择一个 **外部网络** （而不是物理网络）作为 **接口网络**。这会在现有 VLAN 标签之上再叠加第二个 VLAN 标签，从而创建一个 Q-in-Q 隧道。

## 绑定接口

绑定可为外部连接提供 NIC 冗余。对外部网络的通用建议是 **LACP（802.3ad）** ，如果上游交换机支持，则优先使用；对于 2-NIC 裸机安装，可使用 **主动-备份** 作为替代方案，因为这类安装中两块 NIC 都承载核心架构流量，且外部连接必须通过 VLAN 共享这些相同的物理接口。LAG/MLAG 仅适用于外部网络——绝不会用于核心架构。

### 创建绑定的外部网络

1. 导航到外部网络的 **编辑** 设置
2. 设置 **二层类型** 更改为 `vLAN` 并输入相应的 VLAN ID
3. 启用 **绑定** 复选框
4. 在 **绑定接口**下，选择要参与的物理网络：
   * 选择特定架构（例如， `core-fabric-1 交换机`, `core-fabric-2 交换机`），或者
   * 选择 **全部** 以跨所有可用接口进行绑定
5. 单击 **提交**

### 测试绑定故障切换

配置绑定后，验证故障切换行为：

1. 导航到外部网络仪表板并选择 **网卡**
2. 物理断开一条网络网线
3. 确认 UI 将断开连接的 NIC 显示为 **已断开**
4. 确认外部连接通过备用 NIC 仍保持
5. 重新连接网线并验证 NIC 返回为 **已连接** 状态

{% hint style="warning" %}
在断开任何网络网线之前，务必确认核心网络冗余已就绪。进行绑定故障切换测试时，请确保可以使用本地控制台或 IPMI 作为备用访问方式。
{% endhint %}

## 默认路由规则

创建外部网络后， **在添加默认路由规则之前，流量不会流动**。这是一个很容易被忽略的关键创建后步骤。

要添加默认路由：

1. 在外部网络仪表板中，点击 **规则**
2. 单击 **新建**
3. 配置规则：
   * **名称：** `默认路由`
   * **操作：** `路由`
   * **方向：** `出站`
   * **源：** `任意`
   * **目标：** `默认值`
   * **目标类型：** `IP/自定义`
   * **目标 IP：** 你的上游网关（例如， `192.168.212.1`)
4. 单击 **提交**，然后 **应用规则**

如果没有此规则，外部网络将处于运行状态，但无法将流量路由到上游网关。

## HA 组

HA 组通过将网络实例分布到不同的物理节点上，为外部网络提供高可用性。当两个或更多网络分配到同一个 HA 组时，系统会尽可能让它们运行在不同节点上——从而降低单个节点故障导致所有外部连接中断的风险。

配置方法：

1. 创建或编辑外部网络时，将 **HA 组** 字段设置为组名
2. 为相关的外部网络分配相同的组名
3. 可选设置一个 **首选节点** 或 **故障转移集群** 以实现更细粒度的放置控制

## DHCP 服务器配置

外部网络可以运行内置 DHCP 服务器，为网络上的客户端分配地址（例如，租户、可直接外部访问的虚拟机，或通过 PXE 启动的节点）。

| 设置          | 说明                          |
| ----------- | --------------------------- |
| **域名**      | DHCP 作用域的可选域名               |
| **网关**      | 向 DHCP 客户端通告的默认网关           |
| **主机名**     | 此网络路由器的主机名                  |
| **动态 DHCP** | 启用后，可为动态分配指定 DHCP 起始/停止地址范围 |
| **顺序地址**    | 启用后，按连续顺序而非伪随机方式分配地址        |

## 其他网络选项

### 集群亲和性

可选将网络固定到特定的 **集群** 以及 **故障转移集群** ，以控制 VNet 在多集群环境中的运行位置。

### PXE 启动

如果 VergeOS 节点将通过此网络进行 PXE 启动，请在外部网络上启用 PXE 启动。默认禁用。

### 断电时

控制物理节点断电或租户断电后重启时的行为： **上次状态** （恢复到之前状态）， **保持关闭**，或 **开机**.

### 速率限制

在路由上启用限速，以限制整体网络流量。配置限速值、速率类型（包/秒、MB/天、字节/小时等）以及突发额度。

### 统计跟踪

**跟踪所有规则的统计信息** 可对每条规则自动进行数据包/字节计数。 **跟踪 DMZ 统计信息** 监控该网络与 DMZ 之间的总流量。

### DNS 配置

选择 **已禁用** （无 DNS）， **Bind** （权威 DNS），或 **简单** （无本地记录的 DNS 转发）。

## 演练：创建完整的外部网络

这个端到端示例将创建一个带 VLAN 标记、静态 IP 和默认路由的外部网络。

```mermaid
graph TD
    A["导航到 网络 → 新建外部"] --> B["设置名称、VLAN ID、接口网络"]
    B --> C["配置静态 IP、CIDR、网关、DNS"]
    C --> D["启用网关监控"]
    D --> E["点击提交 → 网络启动"]
    E --> F["点击 规则 → 新建"]
    F --> G["创建默认路由规则"]
    G --> H["应用规则 → 流量通过"]

    style A fill:#e3f2fd,stroke:#1565c0
    style E fill:#e8f5e9,stroke:#2e7d32
    style H fill:#e8f5e9,stroke:#2e7d32
```

**步骤：**

1. **导航到** 更改为 **网络 → 新建外部**
2. **名称：** `WAN1`
3. **二层类型：** `vLAN`, **二层 ID：** `50`
4. **MTU：** `1500`
5. **接口网络：** `外部交换机`
6. **IP 地址类型：** `静态`
7. **IP 地址：** `192.168.212.2`
8. **网络地址：** `192.168.212.0/24`
9. **DNS：** `10.10.25.3, 10.10.25.4`
10. **网关监控：** 已启用
11. 单击 **提交** — 等待网络显示为 **运行中**
12. 单击 **规则 → 新建**
13. **规则名称：** `默认路由`, **操作：** `路由`, **方向：** `出站`
14. **目标：** `默认值`, **目标类型：** `IP/自定义`, **目标 IP：** `192.168.212.1`
15. 单击 **提交**，然后 **应用规则**

你的外部网络现在已正常运行，并将流量路由到上游网关。

## 多个外部网络

生产部署通常会使用多个外部网络：

* **分别的 WAN 和 LAN** — 一个外部网络专用于互联网访问，另一个专用于企业 LAN 连接
* **管理网络** — 将管理流量（IPMI、UI 访问）隔离到其自己的外部网络和 VLAN 上
* **租户专用外部网络** — 为租户提供他们自己的 VLAN 或二层外部网络，以便直接访问上游
* **冗余 ISP 连接** — 连接到不同上游提供商的多个外部网络，用于故障切换

每个外部网络都可以映射到相同或不同的物理网络，使用不同的 VLAN、IP 范围和路由规则。

{% hint style="info" %}
**VMware 桥接**

如果你来自 VMware？VergeOS 外部网络将 VLAN 标记、静态路由、NIC 团队、HA 以及按网络限速整合到一个配置表单中——无需单独的 vDS、NSX Edge 或外部负载均衡器。
{% endhint %}

{% hint style="info" %}
**Nutanix 桥接**

如果你来自 Nutanix AHV？VergeOS 在网络层设置 VLAN，把 DHCP/DNS/NAT/路由构建到每个外部网络中，将主动-备份绑定以复选框形式呈现，并自动监控网关健康状况。
{% endhint %}

## 要点总结

| 概念         | 摘要                                              |
| ---------- | ----------------------------------------------- |
| **用途**     | 外部网络将 VergeOS 连接到上游 LAN、WAN 和互联网基础设施            |
| **二层类型**   | vLAN（最常见）、绑定、绑定次要、无（直连）、vxLAN                   |
| **IP 类型**  | 静态、动态/DHCP、BGP/OSPF、无（二层仅）                      |
| **默认路由**   | 创建后必需——没有它，网络可以运行，但无法路由流量                       |
| **绑定**     | 外部网络优先使用 LACP（802.3ad）；对于 2-NIC 裸机节点，主动-备份是替代方案 |
| **HA 组**   | 将网络实例分布到各个节点以实现高可用性                             |
| **网关监控**   | 检测上游连接丢失——生产环境中始终建议启用                           |
| **DHCP**   | 可选的内置 DHCP 服务器，支持动态或顺序地址分配                      |
| **Q-in-Q** | 通过选择一个外部网络（而非物理网络）作为接口网络来实现双 VLAN 标记            |

## 下一步

外部网络将 VergeOS 连接到上游基础设施后，下一部分将介绍如何为你的工作负载构建隔离的虚拟网络： [**内部网络与 DHCP/DNS →**](/learn-the-platform/zh/mo-kuai-4-wang-luo/03-internal-networks.md)


---

# Agent Instructions
This documentation is published with GitBook. GitBook is the documentation platform designed so that both humans and AI agents can read, navigate, and reason over technical content effectively. Learn more at gitbook.com.

## 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, and the optional `goal` query parameter:

```
GET https://docs.verge.io/learn-the-platform/zh/mo-kuai-4-wang-luo/02-external-networks.md?ask=<question>&goal=<endgoal>
```

`ask` is the immediate question: it should be specific, self-contained, and written in natural language.
`goal` is optional and describes the broader end goal you are ultimately trying to accomplish on behalf of the user. GitBook uses it to tailor the answer towards what is most useful for that goal.

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.
