轻松配置 EVPN LAG (EZ-LAG)
总结 借助 EZ-LAG 配置功能,您可以轻松地为连接了多宿主或单宿主服务器的一对对等提供商边缘 (PE) 设备配置小型以太网虚拟专用网络 (EVPN)。您将使用简化的 Junos OS CLI 语句层次结构,而内置的提交脚本将生成完整配置。
EVPN 交换矩阵 PE 设备通过将多宿主链路分组到带有标识符 (ESI) 的 EVPN 以太网段中,可靠地处理进出连接的多宿主终端设备的流量。您可以将参与以太网段的链路配置为链路聚合组 (LAG),因此我们将多宿主链路集称为 ESI LAG。在本文档中,当 PE 设备链接到具有相同 ESI 的多宿主终端设备时,我们将这些设备称为对 等 PE 设备 。尽管 EVPN PE 设备不需要将单宿主链路作为以太网分段来处理,但 PE 设备在 LAG 中也可能有一个或多个链路到单宿主终端设备。
终端设备可以是直接连接到 PE 设备的主机或服务器,也可以是连接了终端主机或服务器的客户边缘 (CE) 设备。为简单起见,在本文档中,我们将终端设备统称为 服务器。
EVPN 多宿主可在两台交换机之间提供冗余和负载平衡,并提供不运行 STP 的无环路第 2 层 (L2) 网络。但是,配置 EVPN 多宿主可能很复杂,并且涉及在交换矩阵中的 PE 设备之间正确配置许多语句。借助这种简单的 EVPN LAG 配置功能(也称为 EZ-LAG 功能),我们提供了一个简化的配置语句层次结构和一个内置提交脚本,您可以使用它来设置 EVPN 多宿主。通过此功能,可以轻松地将多机箱链路聚合组 (MC-LAG) 拓扑迁移到基于标准的 EVPN-VXLAN 多宿主模型。
请参阅 图 1。受支持的 EVPN 拓扑包括:
-
两个通过聚合以太网接口包背对背连接的对等 PE 设备
-
使用 VXLAN 封装连接对等 PE 设备的 EVPN 交换矩阵
-
对等 PE 设备与一个或多个连接的多宿主服务器之间的 ESI LAG 配置
-
对等 PE 设备与一个或多个连接的单宿主服务器之间的连接
此功能需要软件许可证。请参阅 《瞻博网络许可用户指南 》,详细了解 Juniper Flex 软件许可证模式和瞻博网络敏捷许可,以及支持平台上 EZ-LAG 功能的可用许可证。
使用简单的 EVPN LAG 配置的好处
-
自动化配置: 您无需使用网络控制器,即可轻松设置小型 EVPN 交换矩阵,包括用于多宿主连接服务器的 ESI-LAG。您可以通过 CLI 提供一些基本参数,设备的内置提交脚本会将它们转换为完整的 EVPN 交换矩阵配置。
-
配置灵活性: 您可以灵活使用基本和默认配置选项,也可以自定义生成的配置。您可以覆盖许多提交脚本默认行为,并手动配置这些元素。
-
简化拓扑迁移: 您可以使用此功能轻松将多机箱链路聚合组 (MC-LAG) 拓扑迁移到简单的 EVPN-VXLAN 交换矩阵。
Easy EVPN LAG 配置概述
简单的 EVPN LAG 配置功能会在配置提交时运行。它包括:
-
层次结构级别的一组配置语句,您可以使用这些语句
[edit services evpn]
提供参数以设置指定的 EVPN 交换矩阵。 -
内置提交脚本,用于在提交时(在标准 Junos OS 配置有效性检查之前)处理简化的配置元素并生成相应的 EVPN 交换矩阵配置。有关如何启用 EZ-LAG 提交脚本,请参阅 内置提交脚本 。
您可以配置一些 [edit services evpn]
语句,以提供配置 EVPN 交换矩阵和连接到所连接服务器的链路所需的最小参数集。
当您提交 [edit services evpn]
配置语句时,设备将调用提交脚本,该脚本将使用您提供的参数生成相应的 EVPN 配置。commit 脚本派生一些特定于提交简化配置的设备的配置语句。提交过程会验证配置,并为缺少必需参数或配置错误的参数生成警告消息。
有关提交脚本的更多信息,请参阅 提交脚本概述 和 提交脚本的工作原理 。
在任何时候,您都可以轻松地再 [edit services evpn]
添加几条语句,以将元素添加到现有配置中,例如新 VLAN 或与新服务器的连接。
[edit services evpn] 语句层次结构概述
您只需几条配置语句即可指定最少的参数集。例如,考虑以下小型 EVPN-VXLAN 交换矩阵,该交换矩阵具有两个连接的多宿主服务器,每个服务器托管两个 VLAN:
以下几个简单的 EVPN LAG 配置命令提供了在设备 Peer PE 1 上配置 如图 2 所示的 EVPN 交换矩阵所需的最小参数。提交这些配置命令时,commit 脚本会生成相应的完全默认配置,其中可能包含 80 到 100 个配置命令:
set services evpn device-attribute peer-id 1 system-id 10:14:15:16:17:10 peer-to-peer peer-subnet inet 10.1.1.0/31 interface-name [ ge-0/0/0 ge-0/0/1 ] set services evpn device-attribute loopback peer1-subnet 192.168.1.1/32 peer2-subnet 192.168.2.1/32 set services evpn evpn-vxlan irb IRB_10 vlan-id 10 subnet-address inet 10.10.1.1/24 set services evpn evpn-vxlan irb IRB_20 vlan-id 20 subnet-address inet 10.20.1.1/24 set services evpn evpn-vxlan server SERVER_1 esi-lag-id 1 vlan-id-list [ 10 20 ] interface ge-0/0/3 set services evpn evpn-vxlan server SERVER_2 esi-lag-id 2 vlan-id-list [ 10 20 ] interface ge-0/0/4
[edit services evpn]
命令层次结构提供了许多其他选项,使您能够根据需要灵活地自定义默认生成的配置。commit 脚本使用您在简化配置中提供的一些元素自动派生生成的配置中的其他参数。默认情况下,commit 脚本还会为 EVPN 交换矩阵中的其他常见功能生成配置命令,例如从 PE 设备到服务器的接口上的环路检测和风暴控制。
您可以包括以下选项:
-
告诉提交脚本不要在生成的配置中自动派生某些参数。
-
覆盖某些提交脚本默认值和行为。
-
将配置组应用于提交脚本生成的语句。
使用这些选项中的任何一个,如果提交脚本需要任何此类元素才能提供有效配置,则必须手动配置这些元素。
有关每个语句和选项提供给提交脚本的参数以及这些参数如何影响生成的配置的详细信息,请参阅 用于生成配置的简化 CLI 语句和参数 。
内置提交脚本
默认情况下,此功能 services_evpn_commit_script.py
的 commit 脚本在支持的平台上处于启用状态。
由于 commit 脚本会应用瞬时配置更改,因此要使 commit 脚本正常工作,还必须设置 system scripts allow-transients 选项,如下所示:
-
在 Junos OS 24.2R1 版本之前的版本中,您只能在全局级别设置选项
allow-transients
,并且该选项将应用于任何配置的提交脚本,如下所示:set system scripts commit allow-transients
-
从 Junos OS 24.2R1 版开始,如果需要,您还可以在单个脚本级别设置
allow-transients
选项,以便选项仅适用于 EZ-LAG 提交脚本,如下所示:set system scripts commit file services_evpn_commit_script.py allow-transients
用于生成配置的简化 CLI 语句和参数
[edit services evpn]
集。我们还展示了提交脚本如何映射简化的配置参数以生成完整配置。
默认生成的配置概述
默认生成的配置包括:
-
使用外部 BGP (EBGP) 的底层和叠加对等互连。
-
名为 __SERVICES_EVPN_EVPN_VXLAN_MAC-VRF_1 的默认 MAC-VRF EVPN 实例,具有 VLAN 感知服务类型和 VXLAN 封装,用于托管您指定的 VLAN。
您还可以配置其他 MAC-VRF 实例及其成员 VLAN。
-
具有指定 IPv4(或 IPv6)地址的 IRB 接口,用于在 VLAN 之间进行路由。
默认情况下,commit 脚本为每个 IRB 接口派生一个虚拟网关地址,作为指定 IRB 子网地址范围内的最高可配置地址。
如果您未指定该参数,commit 脚本还会分配默认虚拟网关 MAC 地址 00:00:5e:00:01:01。
-
到多宿主服务器的 ESI LAG 连接,以及到单宿主服务器的 LAG 链接。
commit 脚本将聚合以太网接口作为中继接口分配给这些链路,并具有 VLAN 标记、灵活的以太网服务封装并启用了 LACP。
-
在面向服务器的聚合以太网接口上进行轻量级环路检测,并具有环路检测操作
interface down
。请参阅 EVPN-VXLAN 轻量级叶到服务器环路检测 ,了解此功能的更多信息。 -
在面向服务器的接口上进行风暴控制。
commit 脚本生成名为 __SERVICES_EVPN_EVPN_VXLAN_STORM_CONTROL 的默认风暴控制配置文件,并将其分配给每个面向服务器的接口。有关风暴控制功能的更多信息,请参阅 EVPN-VXLAN 环境中的 MAC 过滤、风暴控制和端口镜像支持 。
请点击此处,查看简单 LAG 配置示例和生成的相应配置: 使用多宿主服务器轻松配置 EVPN LAG。
以下各节将详细介绍配置元素。
Easy EVPN LAG 配置声明和选项
表 1 显示了配置语句层次结构级别的语句和选项 [edit services evpn]
。commit 脚本需要一组最少的语句,以便具有足够的信息来生成工作配置。下表标明了哪些语句是必需的。您可以选择包含其他语句,以更改提交脚本行为,并根据拓扑和配置首选项的需要覆盖默认值。
commit 脚本使用您在简化配置中提供的一些元素自动派生生成的配置中的其他参数。默认情况下,commit 脚本还会生成配置语句,以支持 EVPN 交换矩阵中的常见功能,例如服务器链路上的环路检测和风暴控制。
语句和子语句 | 选项 | 目的 | 强制性的? |
---|---|---|---|
defaults-override 如果配置这些选项中的任何一个,则脚本将不会自动从您提供的相关 |
|||
no-aggregate-device-count-config |
不要生成默认聚合以太网 (aen) 接口计数配置语句。 |
不 |
|
无循环检测配置 |
不要生成轻量级环路检测配置语句。 |
不 |
|
no-platform-defaults-config |
不要为默认的平台特定选项生成语句。 |
不 |
|
无策略和路由选项配置 |
不要生成默认路由和策略选项配置语句。 如果指定此选项,则必须在层次结构级别上手动为名为 EXPORT-LO0 或者,您必须包含 |
不 |
|
无风暴控制配置 |
不要生成风暴控制配置。 |
不 |
|
no-overlay-bgp-config |
不要为叠加生成 BGP 配置。 |
不 |
|
无底层配置 |
不要为底层对等生成配置。 |
不 |
|
通过这些语句,您可以定义参数来配置对等 PE 设备,包括对等互连接口、底层对等互连和它们之间的叠加对等互连,以形成 EVPN 交换矩阵。默认情况下,commit 脚本会配置具有外部 BGP (EBGP) 的底层和叠加对等互连。您可以选择性地指定 commit 脚本为其他可用的底层或叠加协议之一生成配置。或者,您也可以设置 |
|||
对等 ID peer-id |
数字 (1-2),用于标识交换矩阵中的 PE 设备(与其对等 PE 设备相比)。 commit 脚本使用此值派生某些值,这些值在生成的配置中的对等 PE 设备中必须是唯一的。 |
是的 |
|
系统 ID system-id |
对等方 PE 设备的系统 ID(MAC 地址格式)。 commit 脚本需要此值来派生配置,以便在 ESI LAG 接口上设置 LACP。 |
是的 |
|
(device-attribute) 回送 |
peer1 子网 peer1-subnet peer2 子网 peer2-subnet |
PE 设备环路 对等方 PE 1 和对等方 PE 2 的 IPv4 子网地址 根据此参数,commit 脚本配置对等 PE 设备的环路接口子网地址,以及每个设备的路由器 ID。 |
是的 |
(device-attribute) |
对等子网 (inet | inet6) subnet-address |
将 PE 设备连接到其对等方 PE 设备的接口的 IPv4 或 IPv6 子网地址。 您可以使用或 |
是的 |
对等子网 接口名称 [ interface-name ... ] |
将 PE 设备连接到其对等方 PE 设备的接口的名称。 |
是的 |
|
overlay-connectivity { ibgp } |
使用内部 BGP (IBGP) 而非默认协议 EBGP 为叠加对等生成指定的配置。 |
不 |
|
底层连接 { OSPF } |
使用 OSPF 而非默认协议 EBGP 为底层对等生成指定的配置。 |
不 |
|
通过这些语句,您可以定义参数以将对等 PE 设备配置为使用一个或多个 VLAN 感知 MAC-VRF 实例通过 VXLAN 封装运行 EVPN。 默认情况下,commit 脚本在名为 __SERVICES_EVPN_EVPN_VXLAN_MAC_VRF_1 的单个 MAC-VRF 实例中启用 EVPN-VXLAN。如果在 如果需要,您可以在 L2 上配置多个 MAC-VRF 实例以实现租户流量分离。 这些语句还提供用于将 ESI-LAG 设置为多宿主服务器或将 LAG 设置为单宿主服务器的参数,包括 IRB 接口和关联的 VLAN。您也可以选择性地指定在此节下的 IRB 实例配置 DHCP 中继。 |
|||
name |
DHCP 中继组名称。 |
不 |
|
dhcp 服务器地址 dhcp-server-address |
用于启用 DHCP 服务器中继组的 DHCP 服务器的 IP 地址。 |
不 |
|
中继源 DHCP-relay-source-interface |
DHCP 中继源环路接口的 IP 地址。 commit 脚本生成使用此源地址的 DHCP |
不 |
|
VRF 实例 vrf-instance-id |
此配置中要为其配置 DHCP 中继的 VRF 实例标识符。 如果未指定 vrf-instance-id,则提交脚本将使用默认的 VRF 实例( |
不 |
|
irb-instance |
用于标识 IRB 实例及其用于提交脚本处理的关联参数的字符串。 建议在生成的配置中选择与 IRB 实例参数匹配的 ID。例如,对与 VLAN 10 关联的 IRB 实例使用“irb_10”,该实例在生成的配置中为 IRB.10。 |
是的 |
|
应用配置组 config-groups |
将指定的配置组应用于提交脚本从此层次结构级别的语句生成的配置。 |
不 |
|
no-dhcp-relay |
从 DHCP 中继配置中排除此 IRB 实例。 仅当指定使用 |
不 |
|
使用任播地址 |
使用任播网关地址配置 IRB 实例。 使用此选项时,您必须在 |
不 |
|
VLAN ID vlan-num |
与 IRB 实例关联的 VLAN ID。 commit 脚本派生具有匹配逻辑单元号的 IRB 接口名称。例如,commit 脚本将 irb.10 配置为 vlan-num 10。 |
是的 |
|
(IRB irb-instance) 实例 |
mac-vrf 实例 instance-id |
IRB 实例所属的 MAC-VRF 实例 ID。 commit 脚本使用 MAC-VRF 实例名称__SERVICES_EVPN_EVPN_VXLAN_MAC_VRF_instance-id生成 MAC-VRF 实例配置语句。 |
不* *如果未配置此选项,则提交脚本将使用默认 instance-id 值 1 创建 MAC-VRF 实例。 |
VRF 实例 instance-id |
此 IRB 实例所属的第 3 层 (L3) 虚拟路由和转发 (VRF) 实例。 如果指定此选项,则提交脚本将为 VRF 实例名称__SERVICES_EVPN_EVPN_VXLAN_VRF_instance-id生成 VRF 实例配置语句。 |
不* *如果未配置此选项,则提交脚本将使用默认 VRF 实例(与 |
|
(IRB irb-instance) |
inet (ipv4-subnet-address |ipv4-addr1 ipv4-addr 2 [ ...]) |
IRB 接口的 IPv4 子网地址或子网地址列表。 为简单起见,您可以在两个对等 PE 设备上配置相同的 IRB 子网地址。默认情况下,commit 脚本使用 PE 对等方 ID 根据配置 ipv4-subnet-address 的值为每个对等设备派生不同的 IRB 子网地址。 或者,您可以在每个对等方 PE 设备上设置所需的子网地址,并包含该选项, router-advertisement 配置语句的详细信息。 |
是的* *您必须使用 |
inet6 (ipv6-subnet-address |ipv6-addr1 ipv6-addr 2 [ ...]) |
IRB 接口的 IPv6 子网地址。 commit 脚本使用此选项的默认行为与 |
是的* *您必须使用 |
|
no-irb-address-auto-derive |
请勿在为此 IRB 实例生成的配置中派生 IRB 子网地址。 如果您不希望使用 PE 对等方 ID 的提交脚本默认行为从同一配置的 ( 使用此选项,commit 脚本将使用您提供的确切 此选项也可在适用于所有 IRB 实例的 |
不 |
|
虚拟网关-v4-地址 virtual-gateway-v4-address |
IRB 接口的虚拟网关 IPv4 地址。 如果未包含此选项,则默认情况下,commit 脚本会从该 |
不 |
|
virtual-gateway-v6-address virtual-gateway-v6-address |
虚拟网关 IRB 接口的 IPv6 地址。 如果未包含此选项,则提交脚本将具有与 |
不 |
|
name |
用于标识连接到对等 PE 设备的服务器(如 SERVER_1 或 HostA)的唯一名称。 此值在内部用于将与服务器相关的参数与要为该服务器生成的语句相关联。您可能会在生成的配置中相关语句的说明参数中看到此服务器名称。 |
是的 |
|
应用配置组 config-groups |
将指定的配置组应用于提交脚本从此层次结构级别的语句生成的配置。 |
不 |
|
enable-pxe-boot |
启用此连接的服务器以使用预启动执行环境 (PXE) 启动过程。 commit 脚本在指向服务器的链路上配置 LACP |
不 |
|
ESI-LAG-ID esi-lag-id |
此服务器的 ESI LAG 连接 ID。 commit 脚本通过添加 esi-lag-id 基本接口名称 ae0(例如, esi-lag-id 1 使用 ae1),为连接到此服务器分配一个聚合以太网接口。 |
是的* *您必须为每台服务器指定至少一个 |
|
单一宿主 ID single-home-id |
命名服务器的单宿主连接 ID。 commit 脚本通过添加 single-home-id 基本接口名称 ae1024(例如, single-home-id 1 使用 ae1025)来分配用于连接此服务器的聚合以太网接口。 |
是的* *您必须为每台服务器指定至少一个 esi-lag-id 上一行中的选项。 |
|
接口 (interface-name | interface-name [ ...]) |
从对等 PE 设备到此服务器的物理链路的接口名称或接口名称列表。 |
是的 |
|
vlan-id-list [vlan-id-list] |
此 MAC-VRF 实例和服务器托管的 VLAN ID 列表。 |
是的* *您必须为每台服务器配置至少一个 VLAN ID 列表(其中至少有一个 VLAN ID),无论是在此 |
|
(服务器 name) mac-vrf 实例 |
instance-id |
托管此服务器的 MAC-VRF 实例的标识符。 如果未指定此选项,则提交脚本将生成将这些服务器参数与默认 MAC-VRF 实例(名为 __SERVICES_EVPN_EVPN_VXLAN_MAC_VRF_1)相关联的配置。 |
不 |
vlan-id-list [vlan-id-list] |
此 MAC-VRF 实例和服务器托管的 VLAN ID 列表。 |
是的* * 您必须在此 MAC-VRF 实例级别或 |
|
通过这些语句,您可以为 EVPN 交换矩阵中的对等 PE 设备通用的配置元素指定参数,例如默认 VLAN 和任播网关地址。如果未配置这些选项,则 commit 脚本具有它使用的默认值。 |
|||
任播-MAC anycast-mac |
在生成的配置中全局使用指定的任播虚拟网关 MAC 地址。 |
不 |
|
默认 VLAN vlan-id |
在生成的配置中,使用此 VLAN ID (1-4094) 作为默认 VLAN。 如果未配置系统默认 VLAN ID,commit 脚本将使用此 ID。 |
不 |
|
no-irb-address-auto-derive |
请勿在所有 IRB 实例的生成配置中派生 IRB 接口子网地址。请改用您在 否则,默认情况下,commit 脚本会从 您也可以在 |
不 |
|
start-aggregate-ethernet-index num |
将此数字用作连接到连接服务器的 ESI LAG 链路的聚合以太网接口名称中的起始索引。 对于到服务器的 ESI LAG 链路,commit 脚本默认从 ae1 开始,并且仅为对等 PE 之间的链路保留 ae0 接口名称。
注意:
此选项不会影响为单宿主服务器链路生成的接口名称。对于单宿主服务器链路,commit 脚本使用从 ae1025 开始的聚合以太网接口名称。 |
不 |
|
虚拟网关-MAC virtual-gateway-mac | 在生成的配置中,将此虚拟网关 MAC 地址用于 IPv4 和 IPv6 流量。 如果要为 IPv4 和 IPv6 流量分配不同的虚拟网关 MAC 地址,请指定 |
不 |
|
(全局参数) MTU |
覆盖 overlay-mtu |
指定要在生成的配置中为叠加对等互连中使用的接口设置的最大传输单元 (MTU),以字节为单位,而非默认 MTU 值。 默认 MTU 值因平台和您为其配置该值的接口(或协议)类型而异。 |
不 |
衬垫物 underlay-mtu |
指定要在生成的配置中为叠加对等互连中使用的接口设置的 MTU(以字节为单位),而不是默认 MTU 值。 默认 MTU 值因平台和您为其配置该值的接口(或协议)类型而异。 |
不 |
|
(全局参数) 虚拟网关 |
v4-mac v4-mac |
在生成的配置中,将此虚拟网关 MAC 地址用于全局的 IPv4 流量。 如果未配置此选项或选项(如上所述), |
不 |
v6-mac v6-mac |
在生成的配置中,将此虚拟网关 MAC 地址全局用于 IPv6 流量。 如果未配置此选项或 |
不 |
提交脚本如何在生成的配置中使用简单的 EVPN LAG 配置元素
表 2 列出了提交脚本使用或从您提供的简化配置派生的配置元素和默认值。
配置元素 | 默认值或派生值 |
---|---|
常规元素或共享元素 |
|
在生成的配置中,已连接的 |
num 默认为 255。 (某些平台可能会使用不同的默认平台特定值。 |
对等 PE 标识符,用于将指定或派生的参数与相应的对等 PE 设备相关联 从 |
每个对等 PE 设备都需要参数 peer-id (没有默认值)。 值 peer-id 可以为 1 或 2。 |
对等方 PE 设备环路接口 (lo0) 地址 从
|
使用提供的环路子网地址中的对等方 PE 设备 peer-id 上的环路接口地址作为该对等方 ID。 |
路由器 ID,用于
从
|
分配的值与设备的环路接口地址相同。 |
负载均衡 针对每个流的路由选项策略 负载平衡 |
set policy-options policy-statement pplb then load-balance per-packet set routing-options forwarding-table export pplb |
每个面向服务器的接口的风暴控制配置 |
set forwarding-options storm-control-profiles __SERVICES_EVPN_EVPN_VXLAN_STORM_CONTROL all bandwidth-percentage 1 set interfaces interface-name ether-options ethernet-switch-profile storm-control __SERVICES_EVPN_EVPN_VXLAN_STORM_CONTROL |
点对点 PE 设备连接 您可以指定内部使用的对等 PE 设备 ID,用于跟踪适用于该配置的 EVPN 对等 PE 设备的参数,如下所示:
|
|
聚合以太网接口名称 |
AE0 |
聚合以太网接口地址 从
|
为简化配置,您可以在两个对等 PE 设备上进行相同的 subnet-address 配置。 commit 脚本根据如下内容派生接口地址 peer-id :
例如,如果 IPv4 subnet-address 为 10.0.1.0/31:
|
聚合以太网接口 接口成员物理接口 从 |
参数 [ interface-name ... ] 为必填项;将这些接口设置为 ae0 中的成员链路。 |
对等 PE 设备到服务器连接 您可以指定服务器名称并分配 ID,以表示指向这些服务器的链路(多宿主 ESI LAG 连接或单宿主连接),如下所示:
commit 脚本在内部使用服务器名称将配置的元素与连接的服务器相关联,但也会在相关生成的配置语句的 description 元素中显示这些名称。 |
|
用于将 ESI LAG 链路的聚合以太网接口名称分配给多宿主服务器的起始索引 | 默认值为 1 (ae1) 要覆盖默认值并分配不同的起始索引 (num),请配置:
此选项仅影响到多宿主服务器的聚合以太网接口的起始索引 ( 此选项不会影响提交脚本分配单宿主服务器链接( |
从对等 PE 设备到服务器的一个或多个物理接口名称(单个接口或接口列表) 从 |
每个服务器必需的参数,无默认值 |
聚合以太网接口名称 (aeindex) 和逻辑单元 (unit num) 从
|
根据服务器链路 ID 和配置的 MAC-VRF 实例 ID(或默认 MAC-VRF instance-id 1),按如下方式进行派生:
|
聚合以太网接口选项和成员 VLAN 从
|
启用 VLAN 标记、灵活的以太网服务封装和中继接口模式。 从已配置的服务器设置成员 VLAN 例如,对于 esi-lag-id 默认 MAC-VRFinstance-id 1 中的 set interfaces ae1 vlan-tagging set interfaces ae1 encapsulation flexible-ethernet-services set interfaces ae1 unit 1 family ethernet-switching interface-mode trunk set interfaces ae1 unit 1 family ethernet-switching vlan members 10 set interfaces ae1 unit 1 family ethernet-switching vlan members 20 |
PE 设备到服务器链路上 LACP 的系统 ID(MAC 地址格式) 从:
|
通过添加服务器链路 ID, system-id 从每个服务器链路派生,如下所示: system-id + esi-lag-id 或 system-id + single-home-id 例如,如果 system-id 为 10:11:12:13:14:15,则对于 esi-lag-id 1 (ae1),在为该链路生成的 LACP 配置中,LACP 系统 ID 为 10:11:12:13:14:16: set interfaces ae1 aggregated-ether-options lacp active set interfaces ae1 aggregated-ether-options lacp system-id 10:11:12:13:14:16
注意:
要跳过为对等-服务器链路配置 LACP,请包括以下选项: set services evpn evpn-vxlan server server-name no-lacp |
多宿主服务器接口 ESI LAG 配置 从 |
自动派生 ESI: set interfaces aeesi-lag-id esi auto-derive type-1-lacp set interfaces aeesi-lag-id all-active |
在面向服务器的聚合以太网接口上进行轻量级环路检测配置 从
|
set protocols loop-detect enhanced interface aeesi-lag-id vlan-id vlan-id set protocols loop-detect enhanced interface aeesi-lag-id loop-detect-action interface-down set protocols loop-detect enhanced interface aeesi-lag-id transmit-interval 1s set protocols loop-detect enhanced interface aeesi-lag-id revert-interval 60 有关此环路检测功能的更多信息,请参阅 EVPN-VXLAN 轻量级叶到服务器环路检测。 |
EVPN、VXLAN 和 IRB 接口元素 生成配置中支持的 EVPN 实例参数:MAC-VRF 实例类型、VLAN 感知服务类型和 VXLAN 封装 |
|
MAC-VRF EVPN 实例名称 从: |
如果未配置一个或多个
否则,对于每个配置 instance-id,MAC-VRF 实例名称为 __SERVICES_EVPN_EVPN_VXLAN_MAC_VRF_instance-id。 |
每个 MAC-VRF 实例的聚合以太网接口逻辑单元 从
|
按如下方式派生和配置关联的逻辑接口: __SERVICES_EVPN_EVPN_VXLAN_MAC_VRF_instance-id 接口 ae(esi-lag-id | single-home-id) 设置路由实例。instance-id |
EVPN 实例的路由区分符 (RD) 从:
|
每个 MAC-VRF 路由实例的路由识别符派生自对等 PE 设备环路子网地址和 MAC-VRF instance-id ,如下所示: peer<peer-id>-subnet:instance-id |
EVPN 实例的目标扩展社区 从 |
VRF 目标:1:instance-id |
EVPN 实例中托管的 VLAN(桥接域) 从: |
VLAN 名称SERVICES_EVPN_EVPN_VXLAN_VLAN_vlan-id |
与配置的服务器 VLAN 对应的 IRB 接口逻辑单元 从: |
IRB 接口逻辑单元已 vlan-id 生成以下配置:
|
IRB 接口地址(要配置 从 如果您希望生成的配置具有您为每个对等 PE 设备显式设置的不同 IRB 接口 subnet-address 值(而不是从通用配置 subnet-address 值派生的默认地址),请配置以下选项:
|
从 IPv4 或 IPv6 subnet-address为每个对等 PE 设备派生不同的地址。 参数 subnet-address 为必填项,为简化配置,您可以在两个对等 PE 设备上进行相同的 subnet-address 配置。 commit 脚本根据 subnet-address 和 peer-id派生每个对等 PE 设备的不同 IRB 接口地址,如下所示:
例如,如果 IPv4 subnet-address 为 10.10.1.0/24:
注意:
提交过程不会执行提交检查,以强制在两台设备上设置相同的子网地址。默认情况下,commit 脚本将根据在此层次结构级别上配置 subnet-address 的地址派生 IRB 接口子网地址。 因此,强烈建议您在两台对等 PE 设备上使用相同的子网地址作为该参数,并且仅在每个设备上将 设置为 |
IRB 接口 虚拟网关地址 从 包括以下选项,以
|
派生 IRB 实例的虚拟网关地址作为 IPv4 或 IPv6 subnet-address 子网范围内的最高可配置地址。 例如,如果 IPv4 ( 同样,例如,如果 IPv6 ( |
IRB 接口 虚拟网关 MAC 地址 包括以下选项以
|
IPv4 虚拟网关 MAC 地址:00:00:5e:00:01:01 IPv6 虚拟网关 MAC 地址:00:00:5e:00:02:01 |
VXLAN 网络标识符 (VNI) 映射 从: |
将基值加 vlan-id 到 10000 |
PE 设备的底层对等互连 - 默认协议:EBGP BGP 组名:__SERVICES_EVPN_EVPN_VXLAN_EBGP_UNDERLAY |
|
自治系统 (AS) 编号 |
65000 + peer-id |
BGP 组配置的本地 AS 编号和对等方 AS 编号( 从 |
在 1 上 在其他对等 PE 设备 |
BGP 组配置的本地设备地址和对等邻接方地址( 从 |
在对等方 PE 设备 在另一个对等方 PE 设备 |
底层或叠加对等接口的 MTU 大小 |
使用您在 有关 MTU 设置的详细信息 ,请参阅媒体 MTU 和协议 MTU 。 |
将环路接口播发至 EBGP 对等 PE 设备的路由策略 |
set policy-options policy-statement EXPORT-LO0 term LOOPBACK from interface lo0.0 set policy-options policy-statement EXPORT-LO0 term LOOPBACK then accept set policy-options policy-statement EXPORT-LO0 term REJECT then reject set protocols bgp group __SERVICES_EVPN_EVPN_VXLAN_EBGP_UNDERLAY export EXPORT-LO |
PE 设备叠加对等 - 默认协议:EBGP BGP 组名:__SERVICES_EVPN_EVPN_VXLAN_EBGP_OVERLAY |
|
自治系统 (AS) 编号 (用于 从 |
65000 + peer-id |
生成的 BGP 组配置的本地设备地址和对等邻接方地址( 从
|
每个对等设备都使用提供的 |
PE 设备的其他底层对等选项 — OSPF 如果配置 |
|
具有 OSPF 底层网络对等互连的聚合以太网接口逻辑单元 |
ae0.0 |
OSPF 区域 |
0.0.0.0 |
PE 设备的其他叠加对等选项 — IBGP 如果配置 |
|
用于内部 BGP 对等互连的自治系统编号( |
65000 |
生成的 IBGP 组配置的本地设备地址和对等邻接方地址( 从
|
与 EBGP 叠加相同——每个对等设备都使用提供的 |
为 VRF 路由实例配置 DHCP 中继的选项 如果配置 |
|
DHCP 中继组配置 从
|
派生的 DHCP 中继组名称为 SERVICES_EVPN_EVPN_VXLAN_VRFname ,默认配置为: [edit routing-instances __SERVICES_EVPN_EVPN_VXLAN_VRF_instance-id forwarding-options] set dhcp-relay forward-only set dhcp-relay server-group SERVICES_EVPN_EVPN_VXLAN_VRFname dhcp-server-address [edit routing-instances __SERVICES_EVPN_EVPN_VXLAN_VRF_instance-id forwarding-options dhcp-relay group SERVICES_EVPN_EVPN_VXLAN_VRFname] set active-server-group SERVICES_EVPN_EVPN_VXLAN_VRFname set overrides relay-source relay-source-interface set relay-option-82 server-id-override |
使用多宿主服务器轻松配置 EVPN LAG
图 3 显示了一个拓扑结构,其中两个多宿主服务器连接到两个对等 PE 设备。对等 PE 设备在托管两个服务器 VLAN(VLAN ID 10 和 20)的小型 EVPN 交换矩阵中背对背连接。
通过两台多宿主服务器简化配置
本节显示了 图 3 中拓扑的最小、简单的 EVPN LAG 配置示例。您可以在 [edit services evpn]
配置部分中使用语句。此配置为提交脚本提供生成相应 EVPN-VXLAN 配置所需的所有参数。您只需配置特定于每个对等方 PE 设备的几个元素。否则,两台设备上的大多数配置都是相同的。
在此示例中,两个对等 PE 设备托管相同的 VLAN,并使用相同的物理接口名称链接到多宿主服务器,因此,这些必需的配置参数都可以成为对等 PE 设备之间通用配置的一部分。但是,由于在实际客户部署中,每个设备的物理接口分配通常不同,因此我们在下面为每个对等 PE 设备分别提供了这些参数的简单 EVPN LAG 配置语句。
commit 脚本对某些元素使用默认值。如前所述,它还会自动从简化配置中的参数中为生成的配置派生其他值。
请注意,在此配置中,我们将跨两个对等 PE 设备配置以下通用子网地址参数。我们之所以这样做,是因为提交脚本使用或根据 peer-id 运行脚本的每个对等 PE 设备上自动派生值:
-
每个设备的设备环回子网地址:
set services evpn device-attribute loopback peer1-subnet peer1-subnet peer2-subnet peer2-subnet
commit 脚本使用提供的环回子网地址作为运行它的本地地址 peer-id 。它使用另一个 peer-id 环路子网地址作为其对等 PE 设备邻接地址。
-
对等 PE 设备对等链路子网地址:
set services evpn device-attribute peer-to-peer peer-subnet inet subnet-address
commit 脚本使用聚合以太网接口子网地址 peer-id 1 作为配置subnet-address的地址,并在地址子网范围的低阶字节中派生 2 的subnet-address地址peer-id作为加 1。
-
为每个 VLAN 提供服务的每个 IRB 接口的 IRB 接口子网地址:
set services evpn evpn-vxlan irb irb-instance subnet-address inet subnet-address
commit 脚本派生 IRB 接口地址的方式与上述对等聚合以太网地址的方式相同——它使用为 1 配置subnet-address的地址,并将 1 添加到该subnet-address地址范围的peer-id低阶字节 peer-id 2。
提交过程不会执行提交检查,以强制在两台设备上设置相同的子网地址。默认情况下,commit 脚本将根据提供的 subnet-address peer-id
1 个值自动派生这些地址。因此,我们强烈建议您确保在简单的 EVPN LAG 配置中,在两个对等 PE 设备上将这些子网地址设置为相同的基值。这样,对于每个对等 PE 设备上的环路设备、环路对等链路和 IRB 接口子网地址,默认地址推导将按预期工作。
有关提交脚本为生成的配置派生的所有值的详细信息 ,请参阅生成的配置中的派生值 。
为两台多宿主服务器轻松配置 EVPN LAG
对等体 PE 1:
set services evpn device-attribute peer-id 1 set services evpn device-attribute peer-to-peer peer-subnet interface-name ge-0/0/0 set services evpn device-attribute peer-to-peer peer-subnet interface-name ge-0/0/1 set services evpn evpn-vxlan server SERVER_1 interface ge-0/0/3 set services evpn evpn-vxlan server SERVER_2 interface ge-0/0/4
Peer PE 2:
set services evpn device-attribute peer-id 2 set services evpn device-attribute peer-to-peer peer-subnet interface-name ge-1/0/0 set services evpn device-attribute peer-to-peer peer-subnet interface-name ge-1/0/1 set services evpn evpn-vxlan server SERVER_1 interface ge-0/0/3 set services evpn evpn-vxlan server SERVER_2 interface ge-0/0/4
两个对等 PE 设备上的通用配置:
set services evpn device-attribute loopback peer1-subnet 192.168.1.1/32 peer2-subnet 192.168.2.1/32 set services evpn device-attribute system-id 10:11:12:13:14:10 set services evpn device-attribute peer-to-peer peer-subnet inet 10.1.1.0/31 set services evpn evpn-vxlan irb irb_10 vlan-id 10 set services evpn evpn-vxlan irb irb_10 subnet-address inet 10.10.1.1/24 set services evpn evpn-vxlan irb irb_20 vlan-id 20 set services evpn evpn-vxlan irb irb_20 subnet-address inet 10.20.1.1/24 set services evpn evpn-vxlan server SERVER_1 esi-lag-id 1 set services evpn evpn-vxlan server SERVER_1 vlan-id-list [ 10 20 ] set services evpn evpn-vxlan server SERVER_2 esi-lag-id 2 set services evpn evpn-vxlan server SERVER_2 vlan-id-list [ 10 20 ]
简化配置中未指定的默认参数
commit 脚本使用以下未在此简化配置中指定的默认元素:
配置元素 | 默认值 |
---|---|
聚合以太网设备计数 |
255 |
点对点 PE 设备链路 |
AE0 |
叠加 对等 自治系统编号 基值 |
65000 |
底层和过度对等协议 |
EBGP |
底层 BGP 组名称 |
__SERVICES_EVPN_EVPN_VXLAN_EBGP_UNDERLAY |
底层导出策略名称和策略声明 |
导出-LO0 |
叠加 BGP 组名称 |
__SERVICES_EVPN_EVPN_VXLAN_EBGP_OVERLAY |
EVPN-VXLAN MAC-VRF 实例 |
instance-id 1 姓名:__SERVICES_EVPN_EVPN_VXLAN_MAC_VRF_1
|
虚拟网关 MAC 地址(适用于 IPv4) |
00:00:5E:00:01:01 |
VLAN 名称 |
SERVICES_EVPN_EVPN_VXLAN_VLAN_vlan-id |
风暴控制配置文件名称 |
__SERVICES_EVPN_EVPN_VXLAN_STORM_CONTROL |
使用两个多宿主服务器生成的配置
启用简单 EVPN LAG 配置提交脚本后,当您在 使用两个多宿主服务器的简化配置中提交配置时,提交脚本将生成以下 EVPN-VXLAN 配置。默认情况下,commit 脚本在面向服务器的接口上配置风暴控制和轻量级环路检测。
有关提交脚本在此生成的配置中从简化配置派生的所有值,请参阅 生成的配置中的派生值 。
对等体 PE 1:
set chassis aggregated-devices ethernet device-count 255 set chassis network-services enhanced-ip set interfaces ge-0/0/0 ether-options 802.3ad ae0 set interfaces ge-0/0/1 ether-options 802.3ad ae0 set interfaces ge-0/0/3 ether-options ethernet-switch-profile storm-control __SERVICES_EVPN_EVPN_VXLAN_STORM_CONTROL set interfaces ge-0/0/3 ether-options 802.3ad ae1 set interfaces ge-0/0/4 ether-options ethernet-switch-profile storm-control __SERVICES_EVPN_EVPN_VXLAN_STORM_CONTROL set interfaces ge-0/0/4 ether-options 802.3ad ae2 set interfaces ae0 aggregated-ether-options lacp active set interfaces ae0 unit 0 family inet address 10.1.1.0/31 set interfaces ae1 vlan-tagging set interfaces ae1 encapsulation flexible-ethernet-services set interfaces ae1 esi auto-derive type-1-lacp set interfaces ae1 esi all-active set interfaces ae1 aggregated-ether-options lacp active set interfaces ae1 aggregated-ether-options lacp system-id 10:11:12:13:14:11 set interfaces ae1 unit 1 family ethernet-switching interface-mode trunk set interfaces ae1 unit 1 family ethernet-switching vlan members 10 set interfaces ae1 unit 1 family ethernet-switching vlan members 20 set interfaces ae2 vlan-tagging set interfaces ae2 encapsulation flexible-ethernet-services set interfaces ae2 esi auto-derive type-1-lacp set interfaces ae2 esi all-active set interfaces ae2 aggregated-ether-options lacp active set interfaces ae2 aggregated-ether-options lacp system-id 10:11:12:13:14:12 set interfaces ae2 unit 1 family ethernet-switching interface-mode trunk set interfaces ae2 unit 1 family ethernet-switching vlan members 10 set interfaces ae2 unit 1 family ethernet-switching vlan members 20 set interfaces irb unit 10 virtual-gateway-accept-data set interfaces irb unit 10 family inet address 10.10.1.1/24 virtual-gateway-address 10.10.1.254 set interfaces irb unit 10 virtual-gateway-v4-mac 00:00:5e:00:01:01 set interfaces irb unit 20 virtual-gateway-accept-data set interfaces irb unit 20 family inet address 10.20.1.1/24 virtual-gateway-address 10.20.1.254 set interfaces irb unit 20 virtual-gateway-v4-mac 00:00:5e:00:01:01 set interfaces lo0 unit 0 family inet address 192.168.1.1/32 primary set interfaces lo0 unit 0 family inet address 192.168.1.1/32 preferred set forwarding-options storm-control-profiles __SERVICES_EVPN_EVPN_VXLAN_STORM_CONTROL all bandwidth-percentage 1 set policy-options policy-statement EXPORT-LO0 term LOOPBACK from interface lo0.0 set policy-options policy-statement EXPORT-LO0 term LOOPBACK then accept set policy-options policy-statement EXPORT-LO0 term REJECT then reject set policy-options policy-statement pplb then load-balance per-packet set routing-instances __SERVICES_EVPN_EVPN_VXLAN_MAC_VRF_1 instance-type mac-vrf set routing-instances __SERVICES_EVPN_EVPN_VXLAN_MAC_VRF_1 protocols evpn encapsulation vxlan set routing-instances __SERVICES_EVPN_EVPN_VXLAN_MAC_VRF_1 protocols evpn default-gateway no-gateway-community set routing-instances __SERVICES_EVPN_EVPN_VXLAN_MAC_VRF_1 vtep-source-interface lo0.0 set routing-instances __SERVICES_EVPN_EVPN_VXLAN_MAC_VRF_1 service-type vlan-aware set routing-instances __SERVICES_EVPN_EVPN_VXLAN_MAC_VRF_1 interface ae1.1 set routing-instances __SERVICES_EVPN_EVPN_VXLAN_MAC_VRF_1 interface ae2.1 set routing-instances __SERVICES_EVPN_EVPN_VXLAN_MAC_VRF_1 route-distinguisher 192.168.1.1:1 set routing-instances __SERVICES_EVPN_EVPN_VXLAN_MAC_VRF_1 vrf-target target:1:1 set routing-instances __SERVICES_EVPN_EVPN_VXLAN_MAC_VRF_1 vlans SERVICES_EVPN_EVPN_VXLAN_VLAN_10 vlan-id 10 set routing-instances __SERVICES_EVPN_EVPN_VXLAN_MAC_VRF_1 vlans SERVICES_EVPN_EVPN_VXLAN_VLAN_10 l3-interface irb.10 set routing-instances __SERVICES_EVPN_EVPN_VXLAN_MAC_VRF_1 vlans SERVICES_EVPN_EVPN_VXLAN_VLAN_10 vxlan vni 10010 set routing-instances __SERVICES_EVPN_EVPN_VXLAN_MAC_VRF_1 vlans SERVICES_EVPN_EVPN_VXLAN_VLAN_20 vlan-id 20 set routing-instances __SERVICES_EVPN_EVPN_VXLAN_MAC_VRF_1 vlans SERVICES_EVPN_EVPN_VXLAN_VLAN_20 l3-interface irb.20 set routing-instances __SERVICES_EVPN_EVPN_VXLAN_MAC_VRF_1 vlans SERVICES_EVPN_EVPN_VXLAN_VLAN_20 vxlan vni 10020 set routing-options router-id 192.168.1.1 set routing-options autonomous-system 65001 set routing-options forwarding-table export pplb set protocols bgp group __SERVICES_EVPN_EVPN_VXLAN_EBGP_UNDERLAY type external set protocols bgp group __SERVICES_EVPN_EVPN_VXLAN_EBGP_UNDERLAY local-address 10.1.1.0 set protocols bgp group __SERVICES_EVPN_EVPN_VXLAN_EBGP_UNDERLAY export EXPORT-LO0 set protocols bgp group __SERVICES_EVPN_EVPN_VXLAN_EBGP_UNDERLAY local-as 65004 set protocols bgp group __SERVICES_EVPN_EVPN_VXLAN_EBGP_UNDERLAY multipath multiple-as set protocols bgp group __SERVICES_EVPN_EVPN_VXLAN_EBGP_UNDERLAY neighbor 10.1.1.1 peer-as 65003 set protocols bgp group __SERVICES_EVPN_EVPN_VXLAN_EBGP_OVERLAY type external set protocols bgp group __SERVICES_EVPN_EVPN_VXLAN_EBGP_OVERLAY multihop ttl 2 set protocols bgp group __SERVICES_EVPN_EVPN_VXLAN_EBGP_OVERLAY multihop no-nexthop-change set protocols bgp group __SERVICES_EVPN_EVPN_VXLAN_EBGP_OVERLAY local-address 192.168.1.1 set protocols bgp group __SERVICES_EVPN_EVPN_VXLAN_EBGP_OVERLAY family evpn signaling set protocols bgp group __SERVICES_EVPN_EVPN_VXLAN_EBGP_OVERLAY neighbor 192.168.2.1 peer-as 65002 set protocols evpn no-core-isolation set protocols l2-learning platform-parameters no-mac-flush-on-aa-ae-down set protocols loop-detect enhanced interface ae1 vlan-id 10 set protocols loop-detect enhanced interface ae1 loop-detect-action interface-down set protocols loop-detect enhanced interface ae1 transmit-interval 1s set protocols loop-detect enhanced interface ae1 revert-interval 60 set protocols loop-detect enhanced interface ae2 vlan-id 10 set protocols loop-detect enhanced interface ae2 loop-detect-action interface-down set protocols loop-detect enhanced interface ae2 transmit-interval 1s set protocols loop-detect enhanced interface ae2 revert-interval 60
Peer PE 2:
set chassis aggregated-devices ethernet device-count 255 set chassis network-services enhanced-ip set interfaces ge-0/0/0 ether-options 802.3ad ae0 set interfaces ge-0/0/1 ether-options 802.3ad ae0 set interfaces ge-0/0/3 ether-options ethernet-switch-profile storm-control __SERVICES_EVPN_EVPN_VXLAN_STORM_CONTROL set interfaces ge-0/0/3 ether-options 802.3ad ae1 set interfaces ge-0/0/4 ether-options ethernet-switch-profile storm-control __SERVICES_EVPN_EVPN_VXLAN_STORM_CONTROL set interfaces ge-0/0/4 ether-options 802.3ad ae2 set interfaces ae0 aggregated-ether-options lacp active set interfaces ae0 unit 0 family inet address 10.1.1.0/31 set interfaces ae1 vlan-tagging set interfaces ae1 encapsulation flexible-ethernet-services set interfaces ae1 esi auto-derive type-1-lacp set interfaces ae1 esi all-active set interfaces ae1 aggregated-ether-options lacp active set interfaces ae1 aggregated-ether-options lacp system-id 10:11:12:13:14:11 set interfaces ae1 unit 1 family ethernet-switching interface-mode trunk set interfaces ae1 unit 1 family ethernet-switching vlan members 10 set interfaces ae1 unit 1 family ethernet-switching vlan members 20 set interfaces ae2 vlan-tagging set interfaces ae2 encapsulation flexible-ethernet-services set interfaces ae2 esi auto-derive type-1-lacp set interfaces ae2 esi all-active set interfaces ae2 aggregated-ether-options lacp active set interfaces ae2 aggregated-ether-options lacp system-id 10:11:12:13:14:12 set interfaces ae2 unit 1 family ethernet-switching interface-mode trunk set interfaces ae2 unit 1 family ethernet-switching vlan members 10 set interfaces ae2 unit 1 family ethernet-switching vlan members 20 set interfaces irb unit 10 virtual-gateway-accept-data set interfaces irb unit 10 family inet address 10.10.1.2/24 virtual-gateway-address 10.10.1.254 set interfaces irb unit 10 virtual-gateway-v4-mac 00:00:5e:00:01:01 set interfaces irb unit 20 virtual-gateway-accept-data set interfaces irb unit 20 family inet address 10.20.1.2/24 virtual-gateway-address 10.20.1.254 set interfaces irb unit 20 virtual-gateway-v4-mac 00:00:5e:00:01:01 set interfaces lo0 unit 0 family inet address 192.168.2.1/32 primary set interfaces lo0 unit 0 family inet address 192.168.2.1/32 preferred set forwarding-options storm-control-profiles __SERVICES_EVPN_EVPN_VXLAN_STORM_CONTROL all bandwidth-percentage 1 set policy-options policy-statement EXPORT-LO0 term LOOPBACK from interface lo0.0 set policy-options policy-statement EXPORT-LO0 term LOOPBACK then accept set policy-options policy-statement EXPORT-LO0 term REJECT then reject set policy-options policy-statement pplb then load-balance per-packet set routing-instances __SERVICES_EVPN_EVPN_VXLAN_MAC_VRF_1 instance-type mac-vrf set routing-instances __SERVICES_EVPN_EVPN_VXLAN_MAC_VRF_1 protocols evpn encapsulation vxlan set routing-instances __SERVICES_EVPN_EVPN_VXLAN_MAC_VRF_1 protocols evpn default-gateway no-gateway-community set routing-instances __SERVICES_EVPN_EVPN_VXLAN_MAC_VRF_1 vtep-source-interface lo0.0 set routing-instances __SERVICES_EVPN_EVPN_VXLAN_MAC_VRF_1 service-type vlan-aware set routing-instances __SERVICES_EVPN_EVPN_VXLAN_MAC_VRF_1 interface ae1.1 set routing-instances __SERVICES_EVPN_EVPN_VXLAN_MAC_VRF_1 interface ae2.1 set routing-instances __SERVICES_EVPN_EVPN_VXLAN_MAC_VRF_1 route-distinguisher 192.168.2.1:1 set routing-instances __SERVICES_EVPN_EVPN_VXLAN_MAC_VRF_1 vrf-target target:1:1 set routing-instances __SERVICES_EVPN_EVPN_VXLAN_MAC_VRF_1 vlans SERVICES_EVPN_EVPN_VXLAN_VLAN_10 vlan-id 10 set routing-instances __SERVICES_EVPN_EVPN_VXLAN_MAC_VRF_1 vlans SERVICES_EVPN_EVPN_VXLAN_VLAN_10 l3-interface irb.10 set routing-instances __SERVICES_EVPN_EVPN_VXLAN_MAC_VRF_1 vlans SERVICES_EVPN_EVPN_VXLAN_VLAN_10 vxlan vni 10010 set routing-instances __SERVICES_EVPN_EVPN_VXLAN_MAC_VRF_1 vlans SERVICES_EVPN_EVPN_VXLAN_VLAN_20 vlan-id 20 set routing-instances __SERVICES_EVPN_EVPN_VXLAN_MAC_VRF_1 vlans SERVICES_EVPN_EVPN_VXLAN_VLAN_20 l3-interface irb.20 set routing-instances __SERVICES_EVPN_EVPN_VXLAN_MAC_VRF_1 vlans SERVICES_EVPN_EVPN_VXLAN_VLAN_20 vxlan vni 10020 set routing-options router-id 192.168.2.1 set routing-options autonomous-system 65002 set routing-options forwarding-table export pplb set protocols bgp group __SERVICES_EVPN_EVPN_VXLAN_EBGP_UNDERLAY type external set protocols bgp group __SERVICES_EVPN_EVPN_VXLAN_EBGP_UNDERLAY local-address 10.1.1.1 set protocols bgp group __SERVICES_EVPN_EVPN_VXLAN_EBGP_UNDERLAY export EXPORT-LO0 set protocols bgp group __SERVICES_EVPN_EVPN_VXLAN_EBGP_UNDERLAY local-as 65003 set protocols bgp group __SERVICES_EVPN_EVPN_VXLAN_EBGP_UNDERLAY multipath multiple-as set protocols bgp group __SERVICES_EVPN_EVPN_VXLAN_EBGP_UNDERLAY neighbor 10.1.1.0 peer-as 65004 set protocols bgp group __SERVICES_EVPN_EVPN_VXLAN_EBGP_OVERLAY type external set protocols bgp group __SERVICES_EVPN_EVPN_VXLAN_EBGP_OVERLAY multihop ttl 2 set protocols bgp group __SERVICES_EVPN_EVPN_VXLAN_EBGP_OVERLAY multihop no-nexthop-change set protocols bgp group __SERVICES_EVPN_EVPN_VXLAN_EBGP_OVERLAY local-address 192.168.2.1 set protocols bgp group __SERVICES_EVPN_EVPN_VXLAN_EBGP_OVERLAY family evpn signaling set protocols bgp group __SERVICES_EVPN_EVPN_VXLAN_EBGP_OVERLAY neighbor 192.168.1.1 peer-as 65001 set protocols evpn no-core-isolation set protocols l2-learning platform-parameters no-mac-flush-on-aa-ae-down set protocols loop-detect enhanced interface ae1 vlan-id 10 set protocols loop-detect enhanced interface ae1 loop-detect-action interface-down set protocols loop-detect enhanced interface ae1 transmit-interval 1s set protocols loop-detect enhanced interface ae1 revert-interval 60 set protocols loop-detect enhanced interface ae2 vlan-id 10 set protocols loop-detect enhanced interface ae2 loop-detect-action interface-down set protocols loop-detect enhanced interface ae2 transmit-interval 1s set protocols loop-detect enhanced interface ae2 revert-interval 60
生成的配置中的派生值
在 具有两个多宿主服务器的生成配置中生成的配置中,commit 脚本根据相应的 easy EVPN LAG 配置元素派生以下值:
生自 [edit services evpn] | 的配置元素 | 派生对等方peer-id值 | |
---|---|---|---|
Peer 1 | 、Peer 2 | ||
AS 编号 |
默认 AS 编号基数:65000 |
底层 AS 编号: 65004 叠加 AS 编号:65001 |
底层 AS 编号: 65003 叠加 AS 编号:65002 |
点对点 ae0 地址 |
|
10.1.1.0/31 |
10.1.1.1/31 |
底层 EBGP 本地地址和邻居地址 |
|
|
|
叠加 EBGP 本地地址和邻居地址 |
|
|
|
system-id 对于每台服务器的 LACP 配置,ESI LAG 链路 |
|
AE1:10:11:12:13:14:11 AE2:10:11:12:13:14:12 |
AE1:10:11:12:13:14:11 AE2:10:11:12:13:14:12 |
用于以下用途的服务器 VLAN:
|
|
|
|
IRB 接口子网地址和 |
|
10.10.1.1/24 10.10.1.254/24 |
10.10.1.2/24 10.10.1.254/24 |
IRB 接口子网地址和 |
|
10.20.1.1/24 10.20.1.254/24 |
10.20.1.2/24 10.20.1.254/24 |
MAC-VRF 实例路由识别符 |
默认 MAC-VRF instance-id:1
|
192.168.1.1:1 |
192.168.2.1:1 |
MAC-VRF 实例路由目标 |
默认 MAC-VRF instance-id:1
|
|
|
每个服务器的 MAC-VRF 实例聚合以太网接口逻辑单元 ESI LAG 链路: ae[esi-lag-id].[instance-id] |
默认 MAC-VRF instance-id:1
|
服务器 1:ae1.1 服务器 2:ae2.1 |
服务器 1:ae1.1 服务器 2:ae2.1 |
IRB 接口名称(VLAN 10 和 20) |
|
|
|
VLAN 到 VNI 的映射(VLAN 10 和 20) |
默认 VNI 基值:10000 |
对于 VLAN 10:10010 对于 VLAN 20:10020 |
对于 VLAN 10:10010 对于 VLAN 20:10020 |
为新的多宿主服务器添加配置
图 4 显示了与 图 3 相同的拓扑结构,但增加了一个多宿主服务器。
此处的示例配置显示如何添加新的多宿主服务器 Server 3,该服务器托管两个 VLAN VLAN 10 和 VLAN 20。
用于添加新的多宿主服务器和 ESI LAG 的简化配置
在此示例中,两个对等 PE 设备:
-
使用接口 ge-0/0/5 链接到新服务器。
-
托管相同的 VLAN,VLAN 10 和 VLAN 20。
-
默认情况下自动派生 ES 标识符(使用
set interfaces aex esi auto-derive type-1-lacp
命令)
因此,您可以在两台设备上添加相同的附加 EASY EVPN LAG 配置语句,并且提交脚本会在两台设备上生成相同的附加配置语句。如此配置示例所示,您还可以将层次结构级别的选项[edit services evpn evpn-vxlan]
组合server server-name
到同一命令中。您只需为此用例添加一个配置行项目。
要将服务器 3 与相应的 ESI LAG 链路一起添加,请将以下单个简单的 EVPN LAG 配置命令添加到 Peer PE 1 和 Peer PE 2 上的现有简化配置中:
set services evpn evpn-vxlan server SERVER_3 esi-lag-id 3 vlan-id-list [ 10 20 ] interface ge-0/0/5
为新的多宿主服务器和 ESI LAG 生成的额外配置
commit 脚本根据简化配置中的简化配置语句在两个对等 PE 设备上生成以下附加配置, 以添加新的多宿主服务器和 ESI LAG:
set interfaces ge-0/0/5 ether-options ethernet-switch-profile storm-control __SERVICES_EVPN_EVPN_VXLAN_STORM_CONTROL set interfaces ge-0/0/5 ether-options 802.3ad ae3 set interfaces ae3 vlan-tagging set interfaces ae3 encapsulation flexible-ethernet-services set interfaces ae3 esi auto-derive type-1-lacp set interfaces ae3 esi all-active set interfaces ae3 aggregated-ether-options lacp active set interfaces ae3 aggregated-ether-options lacp system-id 10:11:12:13:14:13 set interfaces ae3 unit 1 family ethernet-switching interface-mode trunk set interfaces ae3 unit 1 family ethernet-switching vlan members 10 set interfaces ae3 unit 1 family ethernet-switching vlan members 20 set routing-instances __SERVICES_EVPN_EVPN_VXLAN_MAC_VRF_1 interface ae3.1 set protocols loop-detect enhanced interface ae3 vlan-id 10 set protocols loop-detect enhanced interface ae3 loop-detect-action interface-down set protocols loop-detect enhanced interface ae3 transmit-interval 1s set protocols loop-detect enhanced interface ae3 revert-interval 60
添加新的 VLAN 和 IRB 接口
图 5 显示了与 图 5 相同的拓扑,其中有一个仅由服务器 1 和服务器 2 托管的新 VLAN VLAN 30。
用于添加新 VLAN 的简化配置
要将服务器 1 和服务器 2 的 VLAN 30 添加到 使用多宿主服务器的简易 EVPN LAG 配置中的原始配置中,请添加以下简易 EVPN LAG 配置命令:
在两台 Peer PE 设备上:
set services evpn evpn-vxlan irb IRB_30 vlan-id 30 subnet-address inet 10.30.1.1/24 set services evpn evpn-vxlan server SERVER_1 vlan-id-list [ 30 ] set services evpn evpn-vxlan server SERVER_2 vlan-id-list [ 30 ]
在这种情况下,两个对等 PE 设备上的简化 EVPN LAG 配置是相同的,因为:
-
commit 脚本使用提供的 subnet-address 参数为您派生唯一的 IRB 接口子网地址。
-
我们将在两台设备上添加相同的 VLAN。
为新 VLAN 生成的其他配置
commit 脚本为 VLAN 30 生成以下附加配置:
对等体 PE 1:
set interfaces ae1 unit 1 family ethernet-switching vlan members 30 set interfaces ae2 unit 1 family ethernet-switching vlan members 30 set interfaces irb unit 30 virtual-gateway-accept-data set interfaces irb unit 30 family inet address 10.30.1.1/24 virtual-gateway-address 10.30.1.254 set interfaces irb unit 30 virtual-gateway-v4-mac 00:00:5e:00:01:01 set routing-instances __SERVICES_EVPN_EVPN_VXLAN_MAC_VRF_1 vlans SERVICES_EVPN_EVPN_VXLAN_VLAN_30 vlan-id 30 set routing-instances __SERVICES_EVPN_EVPN_VXLAN_MAC_VRF_1 vlans SERVICES_EVPN_EVPN_VXLAN_VLAN_30 l3-interface irb.30 set routing-instances __SERVICES_EVPN_EVPN_VXLAN_MAC_VRF_1 vlans SERVICES_EVPN_EVPN_VXLAN_VLAN_30 vxlan vni 10030
Peer PE 2:
set interfaces ae1 unit 1 family ethernet-switching vlan members 30 set interfaces ae2 unit 1 family ethernet-switching vlan members 30 set interfaces irb unit 30 virtual-gateway-accept-data set interfaces irb unit 30 family inet address 10.30.1.2/24 virtual-gateway-address 10.30.1.254 set interfaces irb unit 30 virtual-gateway-v4-mac 00:00:5e:00:01:01 set routing-instances __SERVICES_EVPN_EVPN_VXLAN_MAC_VRF_1 vlans SERVICES_EVPN_EVPN_VXLAN_VLAN_30 vlan-id 30 set routing-instances __SERVICES_EVPN_EVPN_VXLAN_MAC_VRF_1 vlans SERVICES_EVPN_EVPN_VXLAN_VLAN_30 l3-interface irb.30 set routing-instances __SERVICES_EVPN_EVPN_VXLAN_MAC_VRF_1 vlans SERVICES_EVPN_EVPN_VXLAN_VLAN_30 vxlan vni 10030
添加新的单宿主服务器
图 6 添加了一个仅连接到对等 PE 1 的单宿主服务器 Server 4。服务器 4 托管 VLAN、VLAN 10 和 VLAN 20。
在简化的配置中,您将提供用于 single-home-id 识别单宿主服务器链路以及与该服务器相关的参数。默认情况下,commit 脚本使用以基本索引 1024 开头的聚合以太网接口名称来链接到单宿主服务器。commit 脚本将 添加到 single-home-id 该索引中,生成以 ae1025 (for single-home-id = 1) 开头的接口名称。
添加单宿主服务器的简化配置
要将单宿主服务器 4 添加到 使用多宿主服务器的简易 EVPN LAG 配置中的原始配置中,请在 Peer PE 1 上添加以下简易 EVPN LAG 配置命令:
set services evpn evpn-vxlan server SERVER_4 single-home-id 1 vlan-id-list [ 10 20 ] interface ge-0/0/2
您可以在层次结构级别组合 server server-name
选项 [edit services evpn evpn-vxlan]
,如此配置示例所示。因此,您只需为此用例添加一个配置行项目。
为单宿主服务器生成的其他配置
commit 脚本为 Peer PE 1 上的服务器 4 生成以下附加配置:
set interfaces ge-0/0/2 ether-options ethernet-switch-profile storm-control __SERVICES_EVPN_EVPN_VXLAN_STORM_CONTROL set interfaces ge-0/0/2 ether-options 802.3ad ae1025 set interfaces ae1025 vlan-tagging set interfaces ae1025 encapsulation flexible-ethernet-services set interfaces ae1025 aggregated-ether-options lacp active set interfaces ae1025 aggregated-ether-options lacp system-id 10:11:12:13:18:19 set interfaces ae1025 unit 1 family ethernet-switching interface-mode trunk set interfaces ae1025 unit 1 family ethernet-switching vlan members 10 set interfaces ae1025 unit 1 family ethernet-switching vlan members 20 set routing-instances __SERVICES_EVPN_EVPN_VXLAN_MAC_VRF_1 interface ae1025.1 set protocols loop-detect enhanced interface ae1025 vlan-id 10 set protocols loop-detect enhanced interface ae1025 loop-detect-action interface-down set protocols loop-detect enhanced interface ae1025 transmit-interval 1s set protocols loop-detect enhanced interface ae1025 revert-interval 60
使用 OSPF 进行底层配置
默认情况下,简单的 EVPN LAG 配置提交脚本会生成一个配置,该配置使用 EBGP 进行对等 PE 设备之间的底层对等互连。请参阅 使用两个多宿主服务器生成的配置中的示例中的__SERVICES_EVPN_EVPN_VXLAN_EBGP_UNDERLAY EBGP 组配置语句。
如果您希望将 OSPF 用于底层对等互连,请在两个对等 PE 设备上的简单 EVPN LAG 配置中包括以下选项:
set services evpn device-attribute peer-to-peer underlay-connectivity ospf
使用此选项时,commit 脚本将使用以下默认参数生成 OSPF 底层对等配置,以代替默认的 EBGP 底层配置语句(另请参阅 表 2):
-
聚合以太网接口 逻辑单元 ae0.0
-
OSPF 区域 0.0.0.0
commit 脚本会在两个对等方 PE 设备上生成以下默认 OSPF 底层对等对等配置:
set protocols ospf area 0.0.0.0 interface ae0.0 set protocols ospf area 0.0.0.0 interface lo0.0 passive
如果您不想使用默认的 EBGP 或 OSPF 底层对等配置,可以设置以下简单的 EVPN LAG 配置选项:
set services evpn defaults-override no-underlay-config
设置此选项后,commit 脚本将不会生成任何底层对等配置。在这种情况下,您必须手动配置所需的底层对等互连。
使用 IBGP 进行叠加配置
默认情况下,简单的 EVPN LAG 配置提交脚本会生成一个配置,该配置使用 EBGP 在对等 PE 设备之间进行叠加对等互连。请参阅 使用两个多宿主服务器生成的配置中的示例中的 __SERVICES_EVPN_EVPN_VXLAN_EBGP_OVERLAY EBGP 组配置语句。
如果要改用 IBGP 进行叠加对等互连,请在两个对等 PE 设备上的简易 EVPN LAG 配置中包括以下选项:
set services evpn device-attribute peer-to-peer overlay-connectivity ibgp
使用此选项时,commit 脚本将使用以下默认参数或派生参数生成 IBGP 叠加对等配置,而不是默认的 EBGP 叠加配置(另请参阅 表 2):
-
IBGP 组名称__SERVICES_EVPN_EVPN_VXLAN_IBGP_OVERLAY
-
AS 编号 65000
-
派生自的
set services evpn device-attribute
IBGP 本地地址和对等邻接方地址:-
peer-id peer-id
-
loopback peer1-subnet peer1-subnet
-
loopback peer2-subnet peer2-subnet
-
对于 图 3 中的示例拓扑,生成的配置为:
对等体 PE 1:
set routing-options autonomous-system 65000 set protocols bgp group __SERVICES_EVPN_EVPN_VXLAN_IBGP_OVERLAY type internal set protocols bgp group __SERVICES_EVPN_EVPN_VXLAN_IBGP_OVERLAY local-address 192.168.1.1 set protocols bgp group __SERVICES_EVPN_EVPN_VXLAN_IBGP_OVERLAY family inet-vpn unicast set protocols bgp group __SERVICES_EVPN_EVPN_VXLAN_IBGP_OVERLAY family evpn signaling set protocols bgp group __SERVICES_EVPN_EVPN_VXLAN_IBGP_OVERLAY neighbor 192.168.2.1
Peer PE 2:
set routing-options autonomous-system 65000 set protocols bgp group __SERVICES_EVPN_EVPN_VXLAN_IBGP_OVERLAY type internal set protocols bgp group __SERVICES_EVPN_EVPN_VXLAN_IBGP_OVERLAY local-address 192.168.2.1 set protocols bgp group __SERVICES_EVPN_EVPN_VXLAN_IBGP_OVERLAY family inet-vpn unicast set protocols bgp group __SERVICES_EVPN_EVPN_VXLAN_IBGP_OVERLAY family evpn signaling set protocols bgp group __SERVICES_EVPN_EVPN_VXLAN_IBGP_OVERLAY neighbor 192.168.1.1