Citrix ADC

配置基于 MAC 的转发

启用基于 MAC 的转发 (MBF) 后,当请求到达 Citrix ADC 设备时,设备会记住帧的源 MAC 地址,并将其用作生成回复的目标 MAC 地址。基于 Mac 的转发可用于避免多路由/ARP 查找,并避免不对称的数据包流。当 Citrix ADC 连接到多个有状态设备(如 VPN 或防火墙)时,可能需要基于 Mac 的转发,因为它可确保将返回流量发送到初始通信来自的同一设备。

当您使用 VPN 设备时,基于 Mac 的转发非常有用,因为它可以保证通过 VPN 流动的所有流量通过同一 VPN 设备返回。

以下拓扑图说明了基于 Mac 的转发过程。

图 1. 基于 MAC 的转发模式

MBF

启用基于 MAC 的转发 (MBF) 后,Citrix ADC 会缓存以下地址:

  • 入站连接的来源(例如路由器、防火墙或 VPN 设备等传输设备)。
  • 响应请求的服务器。

当服务器通过 Citrix ADC 设备进行响应时,设备会将响应数据包的目标 MAC 地址设置为缓存地址,确保流量以对称方式流动,然后将响应转发到客户端。该流程不涉及路由表查找和 ARP 查找功能。但是,Citrix ADC 启动连接时,它将使用路由和 ARP 表进行查找功能。在直接服务器返回配置中,必须启用基于 Mac 的转发。

有关直接服务器返回配置的更多信息,请参阅负载平衡

某些部署拓扑可能需要传入和传出路径通过不同的路由器。基于 Mac 的转发会破坏这种拓扑设计。

在以下情况下应禁用 MBF:

  • 当您配置链路负载平衡时。在这种情况下,由于连接成本,流量不对称是可取的。
  • 当服务器使用网络接口卡 (NIC) 成组而不使用 LACP(802.1ad 链路聚合)时。要在此情况下启用基于 Mac 的转发,必须在 Citrix ADC 和服务器之间使用第 3 层设备。 注意:当服务器使用 NIC 与 LACP 成组时,可以启用 MBF,因为虚拟接口使用一个 MAC 地址。
  • 使用防火墙群集时。防火墙群集假定使用 ARP 解析入站流量的 MAC 地址。有时,入站 MAC 地址可以是非群集 MAC 地址,不应用于入站数据包处理。

禁用 MBF 时,设备使用 L2 或 L3 连接将响应从服务器转发到客户端。根据路由表,用于传出连接和传入连接的路由器可能会有所不同。在反向流量的情况下(来自服务器的响应):

  • 如果源和目标位于不同的 IP 子网上,则设备使用路由查找来定位目标。
  • 如果源与目标位于同一子网上,Citrix ADC 将查找 ARP 表以定位网络接口并将流量转发到该网络接口。如果 ARP 表不存在,Citrix ADC 将请求 ARP 条目。

要使用 CLI 启用或禁用基于 Mac 的转发,请执行以下操作:

在命令提示窗口中,键入:

  • enable ns mode MBF
  • 禁用 ns 模式 MBF

要使用 GUI 启用或禁用基于 Mac 的转发,请执行以下操作:

  1. 导航到系统 > 置”,在模式和功能组中,单击配置模式
  2. 选择或清除 基于 Mac 的转发 选项。

用于负载平衡设置的基于 MAC 的转发

某些负载平衡设置要求 Citrix ADC 设备绕过这些设置的全局 MBF(如果启用),而是使用路由 /ARP 查找将数据包发送到目标。

网络配置文件的 MBF 参数用于为特定的负载平衡配置启用或禁用 MBF。通过将网络配置文件(启用或禁用 MBF)绑定到虚拟服务器和服务,可以为客户端以及负载平衡配置的服务器端设置 MBF。

例如,如果禁用 MBF 的网络配置文件绑定到负载平衡配置的虚拟服务器,Citrix ADC 设备会绕过全局 MBF(如果启用),而是使用 Route/ARP 查找向客户端发送响应数据包。

准备工作

在开始为负载平衡配置配置 MBF 之前,请注意以下几点:

  • 在负载平衡配置中,客户端(虚拟服务器)和服务器端(服务/服务组)可以具有不同的 MBF 设置。
  • 如果在绑定到虚拟服务器和服务的网络配置文件中未明确设置 MBF,则负载平衡配置将继承全局 MBF 设置。
  • 在负载平衡配置中,如果没有网络配置文件绑定到服务,服务器端(服务)将继承绑定到虚拟服务器的网络配置文件的客户端 MBF 设置。
  • 在具有直接服务器返回模式的负载平衡配置中,客户端继承绑定到服务的网络配置文件中的 MBF 设置。
  • 在内容交换配置中,客户端采用绑定到内容交换虚拟服务器的网络配置文件中的 MBF 设置,而不是从目标负载平衡虚拟服务器。

限制

在开始为负载平衡配置配置 MBF 之前,请注意以下限制:

  • 群集设置中不支持负载平衡配置的 MBF 设置。
  • 对于具有 MAC 模式或 L2Conn 设置的虚拟服务器,无论绑定到虚拟服务器的网络配置文件中的 MBF 设置如何,都会启用 MBF。
  • Citrix ADC 设备不支持使用网络配置文件为负载平衡监视器设置 MBF。换句话说,网络配置文件的 MBF 设置不应用于网络配置文件绑定到的监视器。无论绑定网络配置文件的 MBF 设置如何,全局 MBF 设置都会应用于监视器。

为负载平衡配置配置配置配置配置 MBF

为负载平衡配置配置配置 MBF 包括以下任务:

  • 在网络配置文件中启用 MBF 参数。
  • 将网络配置文件绑定到负载平衡虚拟服务器或服务。

要使用 CLI 在网络配置文件中启用 MBF,请执行以下操作:

  • 要在添加网络配置文件时启用 MBF,请在命令提示符下键入:
    • add netProfile <name> -MBF ( ENABLED | DISABLED )
    • show netprofile <name>
  • 若要在现有网络配置文件中启用 MBF,请在命令提示符下键入:
    • set netProfile <name> -MBF ( ENABLED | DISABLED )
    • show netprofile <name>

使用 GUI**在网络配置文件中启用 MBF

  1. 导航到 系统 > 网络 > 网络配置文件
  2. 在添加或修改网络配置文件时启用 MBF 参数。

在以下示例配置中,网络配置文件 NETPROFLE-MBF-LBVS 已启用 MBF,并绑定到负载平衡虚拟服务器 LBVS-1。此外,网络配置文件网络配置文件 MBF 已启用,并绑定到一个负载平衡服务 SVC-1。

> add netprofile NETPROFILE-MBF-LBVS -MBF ENABLED

Done

> add netprofile NETPROFILE-MBF-SVC -MBF ENABLED

Done

> set lb vserver LBVS-1 -netprofile NETPROFILE-MBF-LBVS

Done

> set service SVC-1 -netprofile NETPROFILE-MBF-SVC

Done

配置基于 MAC 的转发