Help us improve your experience.

Let us know what you think.

Do you have time for a two-minute survey?

 
 

示例:配置 EVPN-VXLAN 集中路由桥接交换矩阵

现代数据中心依赖于 IP 交换矩阵。IP 交换矩阵在控制平面中使用基于 BGP 的以太网 VPN (EVPN) 信令,在数据平面中使用虚拟可扩展 LAN (VXLAN) 封装。此技术为 VLAN 内的第 2 层 (L2) 桥接和 VLAN 之间的路由提供了基于标准的高性能解决方案。

在大多数情况下,用户 VLAN 与 VXLAN 网络标识符 (VNI) 之间存在一对一关系。因此,VLAN 和 VXLAN 这两个缩写通常可以互换使用。默认情况下,从接入端口接收到任何入口 VLAN 标记时,VXLAN 封装会去除。以太网帧的其余部分封装在 VXLAN 中,以便跨交换矩阵传输。在出口点,VXLAN 封装被剥离,VLAN 标记(如果有)在帧发送到连接的设备之前被重新插入。

这是一个基于集中路由桥接 (CRB) 架构的 EVPN-VXLAN IP 交换矩阵示例。集成路由和桥接 (IRB) 接口为属于不同 VLAN 和网络的服务器和虚拟机提供第 3 层 (L3) 连接。这些 IRB 接口用作交换矩阵内 VLAN 间流量的默认网关。它们还可用作交换矩阵的远程目的地,例如数据中心互连 (DCI)。在 CRB 设计中,仅在主干设备上定义 IRB 接口。因此,这种设计被称为集中布线,因为所有布线都发生在主干上。

有关边缘路由桥接 (ERB) 设计的示例,请参阅 示例:使用任播网关配置 EVPN-VXLAN 边缘路由桥接结构

有关 EVPN-VXLAN 技术和支持的架构的背景信息,请参阅 EVPN 入门

要求

原始示例使用以下硬件和软件组件:

  • 两台运行 Junos OS 15.1X53-D30 版软件的 QFX10002 交换机(主干 1 和主干 2)。

  • 运行 Junos OS 14.1X53-D30 版软件的 4 台 QFX5100 交换机(叶 1 到叶 4)。

    • 使用 Junos OS 20.4R1 版进行更新和重新验证。

    • 有关支持平台的列表,请参阅 硬件摘要

概述

在此示例中,支持三组用户(即三个 VLAN)的物理服务器需要以下连接:

  1. 服务器 A 和 C 应该能够在 L2 上进行通信。这些服务器必须共享一个子网,因此必须共享一个 VLAN。
  2. 服务器 B 和 D 必须位于不同的 VLAN 上才能隔离广播。这些服务器必须能够在 L3 进行通信。
  3. 服务器 A 和 C 不应能够与服务器 B 和 D 通信。

为了满足这些连接要求,我们使用这些协议和技术:

  • EVPN 建立一个 L2 虚拟网桥来连接服务器 A 和 C,并将服务器 B 和 D 放入各自的 VLAN 中。

  • 在 EVPN 拓扑中,BGP 交换路由信息。

  • VXLAN 通过底层 L3 交换矩阵对 L2 帧建立隧道。VXLAN 封装的使用保留了 L3 交换矩阵,以供路由协议使用。

  • IRB 接口在 VLAN 之间路由 IP 数据包。

同样,IRB 接口仅在主干设备上配置,用于集中路由桥接 (CRB)。在这种设计中,主干设备充当 L3 网关,用于连接到叶交换机上的接入端口的各种服务器、虚拟机或容器化工作负载。当工作负载在其自己的 VLAN 内交换数据时,叶将桥接流量。然后,生成的 VXLAN 封装流量作为底层 (IP) 流量通过主干发送。对于 VLAN 内部流量,不使用主干的 VXLAN 虚拟隧道端点 (VTEP) 功能。VLAN 内流量在源叶和目标叶中的 VTEP 之间发送。

相反,必须路由 VLAN 间(和交换矩阵间)流量。此流量封装到 VXLAN 中,并通过叶叶桥接到主干。叶子知道将此流量发送到主干,因为需要路由的源以 VLAN 默认网关的目标 MAC 地址为目标。换句话说,发送到 IRB MAC 地址的帧将在 L2 转发到主干设备。

在主干中,移除了 L2 封装,以适应与 VLAN/IRB 关联的路由实例中的 L3 路由查找。对于 VLAN 间流量,主干通过其路由查找确定目标 VLAN 和相应的 VXLAN VNI。然后,主干重新封装流量,并通过底层将其发送到目标叶或叶。

拓扑

图 1 所示的简单 IP Clos 拓扑包括两台主干交换机、四台叶交换机和四台服务器。每个叶交换机都有一个与每个主干交换机的连接以实现冗余。

服务器网络分为 3 个 VLAN,每个 VLAN 映射到一个 VXLAN 虚拟网络标识符 (VNI)。VLAN v101 支持服务器 A 和 C,VLAN v102 和 v103 分别支持服务器 B 和 D。配置参数请参见 表1

图 1:EVPN-VXLAN 拓扑 EVPN-VXLAN Topology
图 2:EVPN-VXLAN 逻辑拓扑

逻辑拓扑显示预期的连接。在此示例中,一个路由实例用于通过 VLAN 101 连接服务器 A 和 C,一个路由实例用于通过 VLAN 102 和 103 连接服务器 B 和 D。默认情况下,服务器只能与同一路由实例中的其他服务器通信。

由于服务器 A 和 C 共享同一个 VLAN,因此服务器在 L2 进行通信。因此,服务器 A 和 C 不需要 IRB 接口进行通信。我们将路由实例中的 IRB 接口定义为启用未来 L3 连接的最佳实践。相比之下,服务器 B 和 D 需要通过各自的 IRB 接口进行 L3 连接才能通信,因为这些服务器位于运行在唯一 IP 子网上的不同 VLAN 中。

EVPN-VXLAN Logical Topology

表 1 提供了为每个网络配置的关键参数,包括 IRB 接口。IRB 接口支持每个 VLAN,并通过该 VLAN 从其他 VLAN 路由数据包。

表 1:关键 VLAN 和 VXLAN 参数

参数

服务器 A 和 C

服务器 B 和 C

Vlan

101 版

102 版

 

103 版

VXLAN VNI

101

102

 

103

虚拟帧 ID

101

102

 

103

IRB 接口

IRB.101

IRB.102

 

IRB.103

配置 表1中的参数时,请记住以下几点。您必须:

  • 将每个 VLAN 与唯一的 IP 子网相关联,从而与唯一的 IRB 接口相关联。

  • 为每个 VLAN 分配一个唯一的 VXLAN 网络标识符 (VNI)。

  • 将每个 IRB 接口指定为 L3 虚拟路由转发 (VRF) 实例的一部分,也可以在默认交换机实例中将这些接口集中在一起。此示例使用 VRF 实例强制用户社区 (VLAN) 之间的分离。

  • 在每个 IRB 接口的配置中包括一个默认网关地址,您可以使用层次结构级别的配置语句[interfaces irb unit logical-unit-number family inet address ip-address]指定virtual-gateway-address该地址。配置虚拟网关会为每个 IRB 接口设置一个冗余默认网关。

主干 1:底层网络配置

CLI 快速配置

要快速配置此示例,请复制以下命令,将其粘贴到文本文件中,删除所有换行符,更改与您的配置匹配所需的任何详细信息,将命令复制并粘贴到 [edit] 层次结构级别的 CLI 中,然后从配置模式进入 commit

主干 1:配置底层网络

分步过程

要在主干 1 上配置底层网络:

  1. 配置 L3 交换矩阵接口。

  2. 指定环路接口的 IP 地址。此 IP 地址用作 VXLAN 封装数据包外部标头中的源 IP 地址。

  3. 配置路由选项。该配置包括对负载平衡策略的引用,以支持使用通过底层网络的等价多路径 (ECMP) 路由。

  4. 为基于外部 BGP (EBGP) 的底层网络配置 BGP 组。请注意,BGP 配置中包含多路径,以允许使用多个等价路径。通常,BGP 使用平局算法来选择单个最佳路径。

  5. 配置按数据包负载均衡策略。

  6. 配置策略以将直接接口路由播发到底层网络。您至少必须将环路接口 (lo0) 路由播发到底层网络。

主干 1:叠加网络配置

CLI 快速配置

要快速配置此示例,请复制以下命令,将配置粘贴到文本文件中,删除所有换行符,更改与您的配置匹配所需的任何详细信息,将命令复制并粘贴到 [edit] 层次结构级别的 CLI 中,然后从配置模式进入 commit

在主干 1 上配置叠加网络

分步过程

要在主干 1 上配置叠加网络:

  1. 配置基于 BGP (IBGP) 的内部 EVPN-VXLAN 叠加网络。请注意,EVPN 地址系列配置为支持 EVPN 路由的播发。在这种情况下,我们定义一个与主干 2 的叠加对等,以实现主干到主干的连接。与底层一样,我们还在叠加层中启用了 BGP 多路径。

    注意:

    某些 IP 交换矩阵使用基于 EBGP 的 EVPN-VXLAN 叠加网络。有关同时将 EBGP 用于底层和叠加网络的 IP 交换矩阵的示例,请参阅 示例:使用任播网关配置 EVPN-VXLAN 边缘路由桥接交换矩阵。请注意,为叠加选择 EBGP 或 IBGP 不会对交换矩阵架构产生负面影响。集中路由桥接 (CRB) 和边缘路由桥接 (ERB) 设计都支持任一叠加类型。

  2. 为 L2 VXLAN VTEP 之间交换的 L2 帧配置 VXLAN 封装。

  3. 为 EVPN 协议配置默认网关选项 no-gateway-community

    注意:

    使用虚拟网关地址时,两个主干上都使用基于 VRRP 的 MAC“00:00:5e:00:01:01”,因此不需要 MAC 同步。有关详细信息,请参阅 默认网关

  4. 指定如何在结构中复制组播流量。

  5. 配置默认路由实例选项(虚拟交换机类型)。

主干 1:访问配置文件配置

CLI 快速配置

访问配置文件或访问端口配置涉及将服务器工作负载、BMS 或虚拟机连接到接入(叶)交换机所需的设置。此步骤涉及定义设备的 VLAN,以及分别提供用户隔离和 L3 路由的路由实例和 IRB 配置。

由于这是集中路由桥接 (CRB) 交换矩阵的示例,因此路由实例以及集成路由和桥接 (IRB) 接口仅在主干设备上定义。CRB 交换矩阵中的叶设备仅具有 L2 VXLAN 功能。

要快速配置此示例,请复制以下命令,将命令粘贴到文本文件中,删除所有换行符,更改与您的配置匹配所需的任何详细信息,将命令复制并粘贴到 [edit] 层次结构级别的 CLI 中,然后从配置模式进入 commit

注意:

启用 代理 macip 通告 后,L3 网关将代表 EVPN-VXLAN 网络中的 L2 VXLAN 网关通告 MAC 和 IP 路由(MAC+IP 类型 2 路由)。EVPN-MPLS 不支持此行为。从 Junos OS 20.2R2 版开始,启用代理 macip-通告时将显示以下警告消息:

警告:只有 EVPN VXLAN 支持代理-macip-通告配置

当您更改配置、保存配置或使用 show 命令显示配置时,将显示该消息

为主干 1 配置访问配置文件

分步过程

要为服务器网络配置配置文件:

  1. 配置支持 VLAN 101、102 和 103 之间路由的 IRB 接口。

  2. 指定 EVPN-VXLAN 域中包含哪些虚拟网络标识符 (VNI)。

  3. 为每个 VNI 配置路由目标。

    注意:

    在原始配置中,主干设备运行 Junos OS 版本 15.1X53-D30,叶设备运行 14.1X53-D30。在这些软件版本中,在层次结构级别中包含[edit protocols evpn vni-options vni] 配置语句时vrf-target,还必须包含export该选项。请注意,更高版本的 Junos OS 不需要此选项。因此,此更新示例中的配置省略了export该选项。

  4. 为服务器 A 和 C 配置路由实例。

  5. 为服务器 B 和 D 配置路由实例。

  6. 配置 VLAN v101、v102 和 v103,并将相应的 VNI 和 IRB 接口与每个 VLAN 关联。

主干 2:完整配置

CLI 快速配置

主干 2 的配置与主干 1 的配置类似,因此我们提供完整配置,而不是分步配置。要快速配置此示例,请复制以下命令,将命令粘贴到文本文件中,删除所有换行符,更改与您的配置匹配所需的任何详细信息,将命令复制并粘贴到 [edit] 层次结构级别的 CLI 中,然后从配置模式进入 commit

叶 1:底层网络配置

CLI 快速配置

要快速配置此示例,请复制以下命令,将命令粘贴到文本文件中,删除所有换行符,更改与您的配置匹配所需的任何详细信息,将命令复制并粘贴到 [edit] 层次结构级别的 CLI 中,然后从配置模式进入 commit

为叶 1 配置底层网络

分步过程

要为叶 1 配置底层网络:

  1. 配置 L3 接口。

  2. 指定环路接口的 IP 地址。此 IP 地址用作任何 VXLAN 封装数据包的外部标头中的源 IP 地址。

  3. 设置路由选项。

  4. 配置一个外部 BGP (EBGP) 组,该组将主干作为对等方包含在内,以处理底层网络路由。

  5. 配置在瞻博网络交换机之间的多条路径上分配流量的策略。

  6. 配置策略以通告直接接口路由。底层至少必须能够完全访问设备环路地址。

叶 1:叠加网络配置

CLI 快速配置

要快速配置此示例,请复制以下命令,将命令粘贴到文本文件中,删除所有换行符,更改任何必要的详细信息以匹配您的配置,将命令复制并粘贴到层次结构级别的 CLI [edit] 中,然后从配置模式进入 commit

为叶 1 配置叠加网络

分步过程

要为叶 1 配置叠加网络,请执行以下操作:

  1. 为 EVPN-VXLAN 叠加网络配置内部 BGP (IBGP) 组。

  2. 为 EVPN 邻接方之间交换的数据包配置 VXLAN 封装。

  3. 指定如何在 EVPN-VXLAN 环境中复制组播流量。

  4. 配置默认路由实例选项(虚拟交换机类型)。

叶 1:访问配置文件配置

CLI 快速配置

要快速配置此示例,请复制以下命令,将命令粘贴到文本文件中,删除所有换行符,更改与您的配置匹配所需的任何详细信息,将命令复制并粘贴到 [edit] 层次结构级别的 CLI 中,然后从配置模式进入 commit

配置叶 1 的访问配置文件

分步过程

要为服务器网络配置配置文件:

  1. 配置用于与物理服务器连接的 L2 以太网接口。此接口与 VLAN 101 关联。在此示例中,接入接口配置为中继以支持 VLAN 标记。还支持未标记的访问接口。

  2. 为虚拟网络标识符 (VNI) 配置路由目标。

    注意:

    在原始配置中,主干设备运行 Junos OS 版本 15.1X53-D30,叶设备运行 14.1X53-D30。在这些软件版本中,在层次结构级别中包含[edit protocols evpn vni-options vni] 配置语句时vrf-target,还必须包含export该选项。请注意,更高版本的 Junos OS 不需要此选项,如此示例中使用的更新配置所示。

  3. 指定 EVPN-VXLAN 域中包含哪些 VNI。

  4. 配置 VLAN v101。VLAN 将映射到您在主干设备上配置的同一 VXLAN VNI。请注意,叶设备上未指定 L3 集成路由和桥接 (IRB) 接口。这是因为在集中路由桥接 (CRB) 中,叶仅执行 L2 桥接。

叶 2:完整配置

CLI 快速配置

叶 2 的配置与叶 1 的配置类似,因此我们提供完整配置,而不是分步配置。要快速配置此示例,请复制以下命令,将命令粘贴到文本文件中,删除所有换行符,更改任何必要的详细信息以匹配您的配置,将命令复制并粘贴到层次结构级别的 CLI [edit] 中,然后从配置模式进入 commit

叶 3:完整配置

CLI 快速配置

叶 3 的配置与叶 1 的配置类似,因此我们提供完整配置,而不是分步配置。要快速配置此示例,请复制以下命令,将命令粘贴到文本文件中,删除所有换行符,更改任何必要的详细信息以匹配您的配置,将命令复制并粘贴到层次结构级别的 CLI [edit] 中,然后从配置模式进入 commit

叶 4:完整配置

CLI 快速配置

叶 4 的配置与叶 1 的配置类似,因此我们提供完整配置,而不是分步配置。要快速配置此示例,请复制以下命令,将命令粘贴到文本文件中,删除所有换行符,更改任何必要的详细信息以匹配您的配置,将命令复制并粘贴到层次结构级别的 CLI [edit] 中,然后从配置模式进入 commit

验证

确认集成路由和桥接 (IRB) 接口工作正常:

验证 IRB 接口

目的

验证主干 1 和主干 2 上的 IRB 接口配置。

行动

在操作模式下,输入 show interfaces irb 命令。

意义

主干 1 的示例输出验证以下内容:

  • IRB 接口 irb.101、irb.102 和 IRB.103 已配置。

  • 配置 IRB 接口的物理接口已启动并正在运行。

  • 每个 IRB 接口都正确映射到其各自的 VLAN。

  • 每个 IRB 接口的配置都能正确反映分配给它的 IP 地址和目标(虚拟网关地址)。

验证路由实例

目的

验证服务器 A 和 B 以及服务器 C 和 D 的路由实例是否已在主干 1 和主干 2 上正确配置。

行动

在操作模式下,输入命令路由 show route instance routing-instance-name extensive 实例服务器 AC 和服务器 BD。

意义

在主干 1 的示例输出中,服务器 A 和 C 以及服务器 B 和 D 的路由实例显示了与每个组关联的环路接口和 IRB 接口。输出还显示实际路由识别器、虚拟路由和转发 (VRF) 导入以及 VRF 导出策略配置。

验证动态 MAC 地址学习

目的

验证对于 VLAN v101、v102 和 v103,所有叶子上的以太网交换表中是否安装了动态 MAC 地址。

行动

在操作模式下,输入 show ethernet-switching table 命令。

意义

叶 1 的示例输出指示它已获知其虚拟网关 (IRB) 的 MAC 地址 00:00:5e:00:01:01。这是连接的服务器用于访问其默认网关的 MAC 地址。由于两个主干上配置了相同的虚拟 IP/MAC,因此虚拟 IP 被视为 ESI LAG,以支持到两个主干的主动转发,而不会产生数据包环路的风险。输出还表明,枝叶 1 获知主干 1 和主干 2 的 IRB MAC 地址,它们用作 VTEP。

验证路由实例中的路由

目的

验证路由实例中是否存在正确的路由。

行动

在操作模式下,输入 show route table routing-instance-name.inet.0 命令。

意义

主干 1 的示例输出表明,服务器 A 和 C 的路由实例具有与 VLAN 101 关联的 IRB 接口路由,服务器 B 和 D 的路由实例具有与 VLAN 102 和 103 关联的 IRB 接口路由。

根据每个表中的路由,很明显,VLAN 101 中的服务器 A 和 C 无法访问 VLAN 102 或 103 中 C 和 D 中的服务器。输出还显示,包含服务器 B 和 D 路由的公共表允许通过其 IRB 接口进行 L3 通信。

验证连接

目的

验证服务器 A 和 C 是否可以相互 ping 操作,以及服务器 B 和 D 是否可以相互 ping 操作。

行动

从服务器运行 ping 命令。

意义

示例输出显示,服务器 A 可以 ping 服务器 C,服务器 B 可以 ping 服务器 D。服务器 A 和 C 不应能够 ping 服务器 B 和 D,服务器 B 和 D 不应能够 ping 服务器 A 和 C。

主干 1 和 2:路由泄漏(可选)

参考 图 2,回想一下,您配置了三个 VLAN 和两个路由实例,分别为 VLAN 101 中的服务器 A 和 C 以及 VLAN 102 和 103 中的服务器 B 和 D 提供连接。在本节中,您将修改配置以泄漏两个路由实例之间的路由。 图 3 显示了集成路由和桥接 (IRB) 路由泄露后生成的逻辑连接。

图 3:具有路由泄漏的 EVPN-VXLAN 逻辑拓扑 EVPN-VXLAN Logical Topology with Route Leaking

通过路由信息库 (RIB) 组修改,您可以预期 VLAN 101 中的服务器将使用 L3 连接访问 VLAN 102 和 103 中的服务器。

CLI 快速配置

在此阶段,您已经部署了基于 CRB 的 EVPN 交换矩阵,并已确认预期的连接。也就是说,服务器 A 和 C 可以在 L2 进行通信。服务器 B 和 D(分别位于 VLAN 102 和 103 上)通过其共享路由实例中的 IRB 路由进行通信。如果您希望所有服务器能够相互 ping 怎么办?解决此问题的一种选择是泄漏路由实例之间的路由。有关虚拟路由和转发 (VRF) 实例之间路由泄漏的更多信息,请参阅 自动导出 。要快速配置此示例,请复制以下命令,将命令粘贴到文本文件中,删除所有换行符,更改任何必要的详细信息以匹配您的配置,将命令复制并粘贴到层次结构级别的 CLI [edit] 中,然后从配置模式进入 commit

使用路由泄漏进行验证(可选)

使用路由泄漏验证路由(可选)

目的

验证路由实例中是否存在正确的路由。

行动

在操作模式下,输入 show route table routing-instance-name.inet.0 命令。

意义

主干 1 的示例输出表明,两个路由实例现在都具有与所有三个 VLAN 关联的集成路由和桥接 (IRB) 接口路由。由于您在实例表之间复制了路由,因此最终结果与在公共路由实例中配置所有三个 VLAN 的结果相同。因此,所有三个 VLAN 中的服务器之间都可以实现完整的 L3 连接。

使用路由泄漏验证连接(可选)

目的

验证服务器 A 和 C 是否可以对服务器 B 和 D 执行 ping 操作。

行动

从服务器运行 ping 命令。

意义

示例输出显示服务器 A 可以 ping 服务器 B 和服务器 D。它还显示服务器 C 可以 ping 服务器 B 和服务器 D。这确认了服务器及其 VLAN 之间的预期完全连接。

更改历史记录表

功能支持由您使用的平台和版本决定。使用 功能资源管理器 确定您的平台是否支持某个功能。

释放
描述
15.1X53-D30
从 Junos OS 15.1X53-D30 版开始,您可以使用集成路由和桥接 (IRB) 接口,通过虚拟可扩展 LAN (VXLAN) 封装在 VLAN 之间进行路由。