Help us improve your experience.

Let us know what you think.

Do you have time for a two-minute survey?

 
 

使用默认第 3 层网关在 EVPN-VXLAN 叠加网络中路由流量

以太网 VPN-虚拟可扩展 LAN (EVPN-VXLAN) 环境中的物理(裸机)服务器依靠默认的第 3 层网关将其流量从一个虚拟网络 (VN) 路由到另一个物理服务器或另一个 VN 中的虚拟机 (VM)。您可以在充当第 3 层 VXLAN 网关的瞻博网络设备上启用默认网关功能。在第 3 层 VXLAN 网关上,您可以使用虚拟网关地址 (VGA) 配置集成路由和桥接 (IRB) 接口,进而将该 IRB 接口配置为默认的第 3 层网关。在数据中心内和整个数据中心互连 (DCI) 解决方案使用 EVPN-VXLAN 时,可以配置带有 VGA 的 IRB 接口。

了解默认网关

要启用默认网关功能,请使用唯一的 IP 地址和媒体访问控制 (MAC) 地址配置 IRB 接口。此外,您使用 VGA 配置 IRB 接口(该 VGA 必须是任播 IP 地址),第 3 层 VXLAN 网关会自动生成 MAC 地址。

当您为 VGA 指定 IPv4 地址时,第 3 层 VXLAN 网关会自动生成 00:00:5e:00:01:01:01 作为 MAC 地址。当您指定 IPv6 地址时,第 3 层 VXLAN 网关会自动生成 00:00:5e:00:02:01 作为 MAC 地址。

在充当第 3 层 VXLAN 网关的瞻博网络设备上,您可以使用或 配置语句在[edit interfaces irb unit logical-unit-number]层级为默认网关virtual-gateway-v4-macvirtual-gateway-v6-mac显式配置 IPv4 或 IPv6 MAC 地址。使用此配置时,设备会使用配置的 MAC 地址覆盖自动生成的 MAC 地址。

VGA 和关联的 MAC 地址在特定 VN 中提供默认网关功能。将 VN 中的每个主机(物理服务器或虚拟机)配置为使用 VGA。

通过使用任播 IP 地址作为 VGA,当虚拟机从一个 EVPN 提供商边缘 (PE) 设备移动到同一 VN 中的另一个设备时,虚拟机可以使用相同的默认网关。换言之,无需使用新的默认网关 IP 地址更新 VM,以便进行 MAC 绑定。

EVPN-VXLAN 拓扑中的第 3 层 VXLAN 网关响应针对 VGA 的地址解析协议 (ARP) 请求,并转发发往默认网关 MAC 地址的数据包。

最佳实践:

如果为 IRB 接口分配 VGA,我们建议最佳做法是同时配置虚拟网关 MAC (VMAC) 地址。您应将相同的 VMAC 分配给使用同一 VGA 配置的所有 IRB 接口。也就是说,在给定 VN 中用作默认网关的 VGA 地址也会在所有 IRB 接口上共享相同的 VMAC 地址。VGA 和 VMAC 组合在每个 VN 中必须是唯一的。换句话说,在 VLAN 中,您分配相同的 VGA 和 VMAC,而在 VN 之间,您必须配置唯一的 VGA/VMAC 组合。

表 1:VGA 和 VMAC 指南
虚拟网络 IRB VGA IRB VMAC
越南 1 10.0.1.254/24 00:05:85:00:01:01 将相同的 VGA 和 VMAC 分配给为 VN 1 提供服务的所有 IRB。这些值与分配给 VN 2 的 IRB 的值不同。
越南 2 10.0.2.254/24 00:05:85:00:02:02 将相同的 VGA 和 VMAC 分配给为 VN 2 提供服务的所有 IRB。这些值不同于为 VN 1 分配给 IRB 的值

遵循此建议可避免在 IRB 接口发送旨在用于最终目标的 MAC 地址的 ARP 消息时,ARP 请求和响应的数据路径不对称。

最佳实践:

如果瞻博网络设备在 EVPN-VXLAN 集中路由桥接叠加网络(具有两层 IP 交换矩阵的 EVPN-VXLAN 拓扑结构)中充当第 3 层 VXLAN 网关,我们建议 IRB 接口 IP 地址在给定虚拟网络的不同第 3 层 VXLAN 网关中是唯一的,并且为 IRB 配置虚拟网关 MAC 地址。遵循此建议可避免在 IRB 接口发送旨在用于最终目标的 MAC 地址的 ARP 消息时,ARP 请求和响应使用非对称数据路径。如果为 IRB 接口配置虚拟网关 MAC 地址,我们建议您在不同的第 3 层 VXLAN 网关中使用唯一的 MAC 地址,并且在给定的第 3 层 VXLAN 网关中,跨不同的 IRB 单元使用相同的 MAC 地址。

对于在 EVPN-VXLAN 边缘路由桥接叠加网络(具有两层 IP 交换矩阵的 EVPN-VXLAN 拓扑)中的 QFX10000 交换机上配置的 IRB 接口,您还可以在具有相同MAC 地址的 VN 中的每个第 3 层 VXLAN 网关上配置每个 IRB 接口。有关更多信息,请参阅 示例:使用任播网关配置 EVPN-VXLAN 边缘路由桥接交换矩阵

最佳实践:

默认情况下,EVPN-VXLAN 网络中的设备会通过 EVPN 多宿主实现虚拟网关冗余,从而自动生成 ESI(请参阅了解冗余默认网关)。对于具有边缘路由桥接叠加的 EVPN 网络,建议禁用自动生成 ESI。要禁用自动 ESI 生成,请在 [edit interfaces irb unit logical-unit-number]层次结构级别包含语no-auto-virtual-gateway-esi句。

从 Junos OS 版本 22.1R1 开始,MX960、MX2020 和 MX10008 路由器还会默认为 EVPN 第 3 层网关 IRB 接口 ESI 启用自动 ESI 生成。但是,EVPN-MPLS 网络不支持该 no-auto-virtual-gateway-esi 语句。因此,在这种情况下,您将始终看到为 IRB 接口自动生成的 ESI。

注意:

要对 IRB 接口进行故障排除,您可以对接口的 IP 地址执行 ping 命令。

要对 MX 系列路由器上的默认网关进行故障排除,可以从 CE 设备对默认网关的 VGA 执行 ping 命令。要支持对 VGA 执行 ping 命令,请在首选虚拟网关的 [edit interfaces irb unit] 层次结构中包含该virtual-gateway-accept-data语句。

此外,您还可以从 PE 设备(MX 系列路由器)对 CE 设备的 IP 地址执行 ping 命令。要支持对 CE 设备的 IP 地址执行 ping 命令,请使用唯一的 IRB IP 地址在 [edit interfaces irb unit logical-unit-number family (inet |inet6} address ip-address] 层次结构中包含首选语句。否则,在对 CE 设备执行 ping 命令时,必须手动将唯一 IRB IP 地址指定为源 IP 地址。

对于每个配置了 VGA 的 IRB 接口,有两组 IP 和 MAC 地址:一组用于 IRB 接口本身,另一组用于默认网关。因此,设备会播发 IRB 接口和默认网关的 MAC 路由。但是,由于所有第 3 层 VXLAN 网关都具有相同的任播 IP 地址和 MAC 绑定,因此默认网关扩展社区属性不会与默认网关的 MAC 路由播发相关联。

了解默认网关如何处理虚拟网络之间的已知单播流量

图 1 所示的中央路由桥接叠加网络中,MX 系列路由器充当第 3 层 VXLAN 网关,QFX5200交换机充当第 2 层 VXLAN 网关。终端主机 1 到 4 是必须相互通信的物理服务器。

图 1:处理虚拟网络 Handling Known Unicast Traffic Between Virtual Networks之间的已知单播流量

在此拓扑中,VN1 (10.10.0.0/24) 中的终端主机 1 和 VN 2 中的终端主机 3 (10.20.0.0/24) 交换已知的单播数据包。在两个终端主机之间交换数据包之前,假设主机向 MX1(第 3 层 VXLAN 网关)发送了 ARP 请求,并且 MX1 使用 VN1 中默认网关的 MAC 地址进行响应。

例如,终端主机 1 发起数据包并将其发送到 QFX1,即第 2 层 VXLAN 网关。QFX1 使用 VXLAN 标头封装数据包并将其发送至 MX1。对于内部目标 MAC,数据包包括 VN1 中默认网关的 MAC 地址。对于内部目标 IP,数据包包含终端主机 3 的 IP 地址。收到数据包后,MX1 对其进行解封装,并在内部目标 MAC 字段中检测到默认网关的 MAC 地址后,在 VN1 的 L3-VRF 路由表中对终端主机 3 的 IP 地址执行路由查找。找到路由后,数据包会路由到 VN2,并根据 ARP 路由条目,使用 VXLAN 标头封装数据包并发送至 QFX3。QFX3 对数据包进行解封,并将其发送至终端主机 3。

注意:

边缘路由桥接叠加网络中的流量流和已知单播流量的处理与本节所述基本相同。唯一的区别是,在边缘路由桥接叠加中,支持第 3 层 VXLAN 网关功能的 QFX 系列交换机同时充当第 2 层和第 3 层 VXLAN 网关。

了解默认网关如何处理虚拟网络之间的未知单播流量

注意:

本节中的信息适用于中心路由和边缘路由桥接叠加网络中未知单播数据包的流量流和处理。

对于由物理服务器发起的 VN 之间的未知单播流量,每个阶段都需要一个额外的 ARP 请求和响应流程。解析默认网关和主机的目标 MAC 地址后,流量的流动方式与 了解默认网关如何处理虚拟网络之间的已知单播流量中所述相同。

了解冗余默认网关

作为第 3 层 VXLAN 网关运行的瞻博网络设备也可以提供冗余默认网关功能。冗余默认网关可防止一个 VN 中的物理服务器与另一个 VN 中的物理服务器或虚拟机之间的通信丢失。

冗余默认网关功能通常在 EVPN-VXLAN 拓扑中实现,其中提供商边缘 (PE) 设备(如第 2 层 VXLAN 网关或 Contrail vRouter)在主动/主动模式下多宿主到多个第 3 层 VXLAN 网关。在第 3 层 VXLAN 网关上,IRB 接口配置为默认网关。请注意,每个默认网关使用相同的 VGA 和 MAC 地址。此外,VGA 和 MAC 地址与相同的以太网分段 ID (ESI) 相关联。

与默认网关的 VGA 和 MAC 地址关联的 ESI 会自动派生自 VN 的自治系统 (AS) 和 VXLAN 网络标识符 (VNI)。因此,每个第 3 层 VXLAN 网关为给定 VN 播发的默认网关 MAC 路由具有相同的 ESI。

从第 2 层 VXLAN 网关或与第 3 层 VXLAN 网关多宿主的 Contrail vRouter 的角度来看,每个第 3 层 VXLAN 网关上配置的每个默认网关的地址是相同的。因此,PE 设备会构建等价多路径 (ECMP) 下一跃点以到达每个默认网关。从主机发出并发往默认网关的 MAC 地址的流量是负载均衡的。

如果其中一个第 3 层 VXLAN 网关发生故障,远程 PE 设备将收到撤回或清除默认网关 MAC 地址的下一跃点的通知。故障第 3 层 VXLAN 网关的路径将从下一跃点数据库中移除。尽管移除了该路径,但在剩余的第 3 层 VXLAN 网关上配置的默认网关仍可访问,并且主机的 ARP 条目保持不变。

了解动态 ARP 处理

当物理服务器需要确定其默认网关的 MAC 地址时,物理服务器将发起包含默认网关的 VGA 的 ARP 请求。在集中路由的桥接叠加网络中,第 2 层 VXLAN 网关通常会接收 ARP 请求,将请求封装在 VXLAN 标头中,然后将封装的数据包转发至第 3 层 VXLAN 网关。在边缘路由桥接叠加中,第 2 层和第 3 层 VXLAN 网关通常从直接连接的物理服务器接收 ARP 请求。

收到 ARP 请求后,第 3 层 VXLAN 网关会根据需要对数据包进行解封,学习物理服务器的 IP 和 MAC 绑定,并在其数据库中创建 ARP 条目。然后,第 3 层 VXLAN 网关会使用默认网关的 MAC 地址进行回复。

在集中路由的桥接叠加网络中,ARP 响应使用 VXLAN 标头进行封装,并单播回第 2 层 VXLAN 网关。第 2 层 VXLAN 网关可以对 ARP 响应进行解封装,并将数据包转发至物理服务器。

在边缘路由桥接叠加中,ARP 响应将单播回直接连接的物理服务器。

如果 VN1 中的物理服务器发出的数据包发往 VN2 中的物理服务器,则第 3 层 VXLAN 网关会在其数据库中搜索目标物理服务器的 ARP 条目。如果未找到匹配项,第 3 层 VXLAN 网关将发起一个 ARP 请求,其中包括映射到 VN2 的 IRB 接口的 IP 和 MAC 地址,并将该请求发送到目标物理服务器。目标物理服务器学习 IRB 接口的 IP/MAC 绑定,并在其数据库中相应地添加或刷新 ARP 条目。然后,物理服务器将 ARP 响应(包括 IRB 接口的 MAC 地址)单播回第 3 层 VXLAN 网关,