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

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

了解默认网关

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

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

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

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

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

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

最佳实践:

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

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

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

最佳实践:

在具有双层 IP 交换矩阵的 EVPN VXLAN集中路由桥接叠加网络(具有双层 IP 交换矩阵的 EVPN-VXLAN 拓扑)中充当第 3 层VXLAN网关的瞻博网络设备上,建议在给定虚拟网络的不同第 3 层VXLAN网关之间,IRB 接口 IP 地址是唯一的,并且您为 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 网关上配置每个 VXLAN 接口。有关更多信息,请参阅 示例:使用任播网关配置 EVPN-VXLAN 边缘路由桥接交换矩阵。

最佳实践:

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

注意:

要对 IRB 接口进行故障排除,可以对接口的 IP 地址使用 Ping 命令。

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

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

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

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

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

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

在此拓扑中,VN1 中的终端主机 1 (10.10.0.0/24) 和 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 层 VXLANVXLAN 网关或 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 VXLAN 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 条目。然后,物理服务器将包含 IRB 接口的 MAC 地址的 ARP 响应单播回第 3 层 VXLAN 网关,