本页内容
示例:手动配置 VNI 路由目标
此示例说明如何在 EVPN-VXLAN 拓扑中为多个虚拟网络标识符 (VNI) 手动设置路由目标。
要求
此示例使用以下硬件和软件组件:
-
QFX 系列交换机。
概述
如果使用该auto选项配置vrf-target该语句,则设备会自动在路由实例中派生路由目标。您还可以使用特定target值进行配置vrf-target,以便在路由实例中手动配置路由目标。
在此示例中,我们将展示如何通过指定 target 值来手动配置路由目标。您可以在以下级别使用该 vrf-target 语句手动配置路由目标:
-
全局级别 — 适用于路由实例中扩展的所有 VNI。
此设置适用于所有 EVPN 路由类型。
-
vni-optionslevel — 适用于路由实例中的特定 VNI。此设置仅适用于 EVPN 2 类和 3 类路由。使用此设置:
-
如果还在全局级别手动配置路由目标,则对于指定的 VNI,此设置将覆盖全局设置。
-
如果还设置了
auto自动派生路由目标的选项,则对于指定的 VNI,此设置将覆盖自动设置。
-
表 1 显示了相应的 CLI 层次结构,您可以在其中手动配置路由目标:
| 配置级别 | 默认交换机实例层次结构 | 配置的路由实例层次结构 | 适用的 EVPN 路由类型 |
|---|---|---|---|
| 路由实例中的全局(所有 VNI) |
|
|
所有 EVPN 路由类型 |
| 路由实例中指定的 VNI |
|
|
类型 2 类型 3 |
稍后会提供每个级别的配置示例。
手动路由目标配置注意事项
计划手动配置路由目标时,请参阅以下注意事项。
为大规模 EVPN-VXLAN 网络使用有限、稳定的路由目标
EVPN-VXLAN 网络中的 EVPN 设备使用带有路由目标社区的 EVPN 类型 1(每个以太网 VPN 实例自动发现 [AD/EVI])路由,相互播发以太网段 (ES)、VLAN 和 VNI 可达性信息。
EVPN 1 类路由只能承载有限数量的路由目标。大型网络可以有许多以太网段标识符 (ESI)、VLAN 和每个网桥域的路由目标。在 EVPN 实例中,如果在层次结构级别配置vrf-export[edit switch-options]的策略将多个路由目标添加到 EVPN Type 1 路由社区属性,则播发可能会超过最大 BGP 协议消息大小。在这种情况下,设备上的 BGP 协议处理将丢弃 EVPN Type 1 路由播发,因此其他 EVPN 设备不会接收路由。您可以在本地看到 EVPN Type 1 路由,但在远程 EVPN 对等方上看不到。
如果将 EVPN-VXLAN 网络设计为使 EVPN 类型 1 路由只需要承载一组稳定的路由目标,则可以避免此问题。
与其使用具有多个路由目标的 vrf-export 策略:
- 为 EVPN 实例配置一个
vrf-target单个。 - 使用
vrf-import策略 来policy-options控制哪个路由面向每个网桥域或租户导入。
例如,请参阅此完整配置示例中的策略的 vrf-import 分步配置 Leaf-1: 示例: 使用 MX 路由器作为主干配置 EVPN-VXLAN 集中路由桥接交换矩阵。
EVPN 1 类路由仅包含通用 VRF 路由目标和任何其他必需的封装社区。使用此模型,您可以扩展网络,同时将 BGP EVPN 协议消息保持在消息大小限制内。
配置
本节介绍在支持的配置级别手动配置 VNI 路由目标的一些用例。
为默认交换机实例中的所有 VNI 手动配置 VNI 路由目标
分步程序
此过程说明如何为默认交换机实例中的所有 VNI 手动配置路由目标。这是全局级手册路由目标配置。
-
在层次结构级别,
[edit switch-options]配置vtep-source-interfaceandroute-distiguisher语句。接下来,使用值配置vrf-targettarget语句。所有 VLAN 和相应 VNI 的所有 EVPN 路由都将使用此步骤中配置的vrf-target地址。[edit switch-options] user@switch# set vtep-source-interface lo0.0 user@switch# set route-distinguisher 192.168.1.11:1 user@switch# set vrf-target target:1111:11
注意:您可以选择性地包括
vrf-import和vrf-export策略,以进一步区分与路由目标匹配的要导入和导出的路由。请参阅 手动路由目标配置说明 ,了解使用vrf-export策略时的一些最佳实践。 -
在层次结构级别,
[edit protocols evpn]使用 VXLAN 封装配置 EVPN,并指定要扩展到 EVPN 实例中的 VNI。在此示例中,我们extended-vni-list使用将路由目标应用于所有 VNI 的选项配置all语句。[edit protocols evpn] user@switch# set encapsulation vxlan user@switch# set extended-vni-list all
结果
按照上述步骤操作并提交配置后,使用命令 show configuration 验证配置结果。
user@switch> show configuration switch-options
vtep-source-interface lo0.0;
route-distinguisher 192.168.1.11:1;
vrf-target {
target:1111:11;
}
user@switch> show configuration protocols evpn
encapsulation vxlan;
extended-vni-list all;
.
.
.
为 MAC-VRF EVPN 实例中的所有 VNI 和特定 VNI 手动配置 VNI 路由目标
分步程序
此过程说明如何在 EVPN-VXLAN 交换矩阵中为具有服务类型的 MAC-VRF 实例 (MAC-VRF1) vlan-aware 中的所有 VNI 手动配置路由目标。我们还在同一实例中手动为 VNI 100 配置不同的路由目标。
-
在层次结构级别,
[edit routing-instances MAC-VRF1]使用mac-vrf实例类型和服务类型vlan-aware配置路由实例。设置vtep-source-interface实例的 androute-distiguisher语句。在路由实例的全局级别手动配置值vrf-target。此全局级路由目标对应于您扩展到 EVPN 实例中的 VNI 的 EVPN 1 类、2 类和 3 类路由(请参阅下一步)。[edit routing-instances MAC-VRF1] user@switch# set vtep-source-interface lo0.0 user@switch# set instance-type mac-vrf user@switch# set service-type vlan-aware user@switch# set route-distinguisher 192.168.2.11:1 user@switch# set vrf-target target:1111:11
-
在层次结构级别,
[edit routing instances MAC-VRF1 protocols evpn]使用 VXLAN 封装配置 EVPN。使用语句列出extended-vni-list要扩展到 EVPN 实例中的 VNI。在此示例中,我们列出了两个 VNI,100 和 101。我们还在层次结构级别专门[edit routing-instances name protocols evpn vni-options vni vni]为 VNI 100 配置导出路由目标值。因此,您在上一步中设置的路由目标适用于任何 EVPN 1 类路由,并且仅适用于 EVPN 2 类和 3 类路由的 VNI 101。在此步骤中设置的 VNI 级别路由目标适用于 EVPN 2 类和 3 类路由的 VNI 100。[edit routing instances MAC-VRF1 protocols evpn] user@switch# set encapsulation vxlan user@switch# set extended-vni-list 100 101 user@switch# set vni-options vni 100 vrf-target export target:1234:11
您可以选择性地包括 vrf-import 和 vrf-export 策略,以进一步区分与路由目标匹配的要导入和导出的路由。
结果
按照上述步骤操作并提交配置后,使用命令 show configuration 验证配置结果。
user@switch> show configuration routing-instances MAC-VRF1
vtep-source-interface lo0.0;
instance-type mac-vrf;
service-type vlan-aware;
route-distinguisher 192.168.2.11:1;
vrf-target {
target:1111:11;
}
protocols {
evpn {
encapsulation vxlan;
extended-vni-list 100 101;
vni-options {
vni 100 {
vrf-target export target:1234:11;
}
}
}
}
.
.
.