目录

简介

了解ARP泛洪

使用案例1.在ACI中学习终端

使用案例2.在合作计划中学习终端

使用案例3.目标IP未知，ARP泛洪已禁用

使用案例4.目标IP未知，启用ARP泛洪

使用案例5.不同EPG和BD中的终端

了解ARP收集

使用案例1.目标IP未知，ARP泛洪已禁用

使用案例2.不同EPG和BD中的终端

简介

本文档介绍在以应用为中心的基础设施(ACI)交换矩阵中使用地址解析协议(ARP)泛洪和ARP收集。

了解ARP泛洪

在思科ACI中，可以选择使用ARP泛洪或在需要时将其禁用。必须了解有关ARP泛洪的交换矩阵行为，以便排除第2层故障。

如果启用了ARP泛洪，ARP流量将根据传统网络中的常规ARP处理在交换矩阵内泛洪。当您需要无故ARP(GARP)请求来更新主机ARP缓存或路由器ARP缓存时，需要ARP泛洪。当IP地址可以具有不同的MAC地址时（例如，使用负载均衡器和防火墙的故障转移集群），就会出现这种情况。

如果禁用ARP泛洪，交换矩阵将尝试使用单播将ARP流量发送到目的地。因此，将对ARP数据包的目标IP地址进行第3层查找。ARP的行为类似于第3层单播数据包，直到它到达目的枝叶交换机。

注意：请注意，此选项仅在网桥域上启用了单播路由时适用。如果禁用单播路由，则隐式启用ARP泛洪。

接下来，您将看到一些与使用ARP泛洪相关的使用案例。

使用案例1.在ACI中学习终端

此使用案例适用于枝叶交换机知道两个终端的情况。

在这种情况下，ARP泛洪不起作用。当枝叶交换机知道其终端信息时，流量在本地进行交换。当一个终端（例如H1）向另一个终端(H2)发送ARP请求，并且禁用ARP泛洪时，此行为相同。由于枝叶交换机知道连接H2的位置并检查ARP目标IP地址（即H2 IP地址），因此不需要泛洪流量或将流量重定向到主干层。因此，它会向H2发送ARP请求。

无论终端组(EPG)、网桥域或接入/封装设置如何，如果枝叶知道终端，则以相同的方式处理终端。

示例1.交换矩阵已知的端点，在同一EPG、网桥域和接入/封装中工作。

示例2.交换矩阵已知的终端，工作在同一个EPG网桥域中，但访问/封装不同。

示例3.交换矩阵已知的端点，工作在不同的EPG但使用相同的网桥域。

当禁用ARP泛洪且终端属于同一网桥域中不同EPG的一部分时，当连接到同一枝叶交换机时，如果枝叶交换机知道ARP目标IP地址，则ARP流量会进行本地路由（启用单播路由）。

使用案例2.在合作计划中学习终端

当两个终端都连接到不同的枝叶交换机时，此使用案例适用；出现在主干交换机的协作协议(COOP)数据库中。

ARP请求必须通过交换矩阵转发。从H1到H3的ARP流量为：

- H1使用广播目标MAC向H3发送ARP请求。

- ACI尝试使用单播转发来发送ARP请求，因此本地枝叶交换机检查ARP目标IP地址，即H3 IP地址。由于本地枝叶交换机不知道终端H3的IP地址，因此它会将ARP请求发送到主干交换机进行主干代理。

- 主干在COOP数据库中具有H3信息（启用了单播路由），并通过交换矩阵将ARP请求转发到目的枝叶交换机，目的枝叶交换机再将其转发到H3。H3收到流量后，会回复H1。

注意：上述机制适用于所有三种场景。

示例1.交换矩阵已知的终端，工作于同一EPG、网桥域和接入/封装。

示例2.交换矩阵已知的端点，工作在同一EPG桥接域中，但访问/封装不同。

示例3.交换矩阵已知的端点，工作在不同的EPG但使用相同的网桥域。

使用案例3.目标IP未知，ARP泛洪已禁用

此使用案例适用于入口枝叶不知道目标IP地址的位置（禁用ARP泛洪，启用单播路由）。

在类似场景中，当禁用ARP泛洪且入口枝叶不知道ARP目标IP地址位于何处时，ARP请求将发送到任播主干代理隧道终端(TEP)，而不是泛洪。从H1到H2的ARP流量为：

- H1使用广播目标MAC向H2发送ARP请求。

- ACI尝试使用单播转发来发送ARP请求。本地枝叶交换机不知道终端H2的IP地址（入口枝叶不知道ARP目标IP），因此它将ARP请求发送到主干交换机以进行主干代理。

- 由于主干交换机上的COOP数据库中缺少H2终端信息，因此主干丢弃原始数据包，而是触发ARP收集来检测目标IP，从而不会丢弃后续ARP请求。

示例1.无论EPG、网桥域或接入/封装设置如何，ARP请求的流都保持如前所述。

使用案例4.目标IP未知，启用ARP泛洪

此使用案例适用于入口枝叶不知道目标IP地址的位置（启用ARP泛洪，启用单播路由）。

如果在网桥域中启用了ARP泛洪，则来自H1的ARP请求通过泛洪到达H2。从H1到H2的ARP流量为：

- H1使用广播目标MAC向H2发送ARP请求。

- ARP请求泛洪到网桥域中的所有接口。H2接收帧并做出应答，同时在交换矩阵中获知。

示例 1.

注意：思科ACI（网桥域或EPG级别）封装中的泛洪可用于将网桥域内的泛洪流量限制为单个封装。当两个EPG共享同一网桥域且启用了Flood in Encapsulation时，EPG泛洪流量不会到达另一个EPG。

启用ARP泛洪的优点之一是能够检测从一个位置移动到另一个位置的静默IP，而无需通知ACI枝叶。由于ARP请求在网桥域内泛洪，即使ACI枝叶仍然认为IP位于旧位置，具有静默IP的主机也会作出适当响应，以便ACI枝叶可以相应地更新其条目。

如果禁用ARP泛洪，则ACI枝叶会一直将ARP请求仅转发到旧位置，直到IP终端老化。另一方面，禁用ARP泛洪的好处是能够将ARP请求直接发送到目标IP的位置，从而优化流量，假设没有终端在不通过GARP等通知其移动的情况下移动。

使用案例5.不同EPG和BD中的终端

当终端连接在不同的EPG和不同的网桥域时，将应用此使用案例。

当终端属于不同的EPG和不同的网桥域时，必须路由它们之间的流量。泛洪不会通过网桥域，包括ARP泛洪。因此，如果H1需要与连接在同一枝叶交换机上的H2通信，流量将发送到默认网关MAC地址，因此ARP泛洪在本示例中并不相关。

了解ARP收集

思科ACI有多种机制检测静默主机，其中ACI枝叶未获取本地终端。ACI有一些机制可以检测这些静默主机。对于流向未知MAC的第2层交换流量，您可以在网桥域(BD)下将第2层未知单播选项设置为泛洪，而对于具有广播目标MAC的ARP请求，您可以在网桥域下使用ARP泛洪选项来控制泛洪行为。此外，思科ACI使用ARP收集来发送ARP请求，以解析尚未获知的终端的IP地址（静默主机检测）。

通过ARP收集，如果主干没有有关ARP请求的目标连接位置的信息（目标IP不在COOP数据库中），交换矩阵将生成一个源自桥接域交换机虚拟接口(SVI)（沉浸式网关）IP地址的ARP请求。此ARP请求发送到网桥域的所有枝叶节点的边缘接口部分。此外，只要流量被路由到未知IP，就会触发（第3层）路由流量的ARP收集，而不考虑配置，例如ARP泛洪。

ARP收集有一些要求：

- IP地址用于转发（禁用ARP泛洪的ARP请求，或以ACI BD SVI作为网关的子网间的流量）

- 单播路由已启用

- 在网桥域下创建的子网

使用案例1.目标IP未知，ARP泛洪已禁用

此使用案例适用于目标/目标终端未知到交换矩阵（禁用ARP泛洪）的情况。

当终端位于不同的枝叶交换机上，同时属于同一EPG和网桥域，并且使用同一VLAN访问映射时，ARP请求（例如，从H1到H3）必须通过交换矩阵转发。如果主干交换机（静默主机）上的COOP数据库中缺少H3信息，且禁用了ARP泛洪，也可以使用ARP收集，如图所示。

从H1到H3的ARP流量为：

- H1使用广播目标MAC向H3发送ARP请求。

- ACI尝试使用单播转发来发送ARP请求，因此本地枝叶交换机检查ARP目标IP地址(H3 IP)。 由于本地枝叶交换机不知道终端H3的IP地址，因此它会将ARP请求发送到主干交换机进行主干代理。

- 主干交换机上的COOP数据库中缺少H3信息，因此使用沉浸式网关IP地址作为源来触发ARP收集。此ARP请求在域中泛洪。

- H3收到ARP请求和应答，同时在交换矩阵中获知。

无论EPG、网桥域或访问/封装设置如何，当两个终端尝试相互通信时（无论它们与交换矩阵内相同或不同枝叶交换机的连接如何），ARP收集功能的工作方式相同。

使用案例2.不同EPG和BD中的终端

此使用案例适用于终端连接在不同的EPG和网桥域（启用ARP泛洪）中。

当终端属于不同的EPG和不同的网桥域时，必须路由它们之间的流量。泛洪不会跨过网桥域，包括ARP泛洪可能生成的ARP泛洪。因此，如果H1需要与连接在同一枝叶交换机上的H2通信，流量将发送到默认网关MAC地址，因此ARP收集在本例中无关紧要。