Socket 高可用性故障转移因 Meraki 交换机 GARP 限制而失败

问题

在 Socket HA 对执行 HA 故障转移的情况下,新的主 Socket 会发送一条不必要的 ARP 广播,然后开始响应对站点局域网 IP地址的 ARP 广播请求。 如需更多信息,请参见 了解 Socket 高可用性和故障转移

然而,在 Meraki 交换机连接两个 Sockets 的场景中,HA 故障转移过程可能会失败,交换机会错误地将所有帧转发到从属 Socket,导致中断。

环境

此问题专门涉及通过 Meraki 交换机互连的 Socket HA 对。 建议的解决方案适用于 Socket 版本 13 及以上。

故障排查

  • 按照 RFC2338 的规定,Socket 将在 HA 故障转移过程中发送一条 gratuitous ARP REQUEST 数据包。 可以在数据包捕获中验证此行为,该捕获将显示以下标志:opcode = 1
  • Meraki 支持已确认其系统在 opcode = 1 的 GARP 请求时表现为忽略,因此未能更新交换机的 CAM 表。 有关此问题的详细信息记录在 Meraki MS 交换和 Gratuitous ARP

解决方案

从 Socket 版本 13 开始,可以向支持请求后端配置,以更改 gratuitous ARP 数据包中的操作码标志,从而有效地缓解与 Meraki 交换机相关的问题。

注意:此配置应仅适用于具有 Meraki 交换机的站点,而不应在帐号级别应用。

推荐的后端配置将 GARP 数据包中的操作码更改为 2,表示为响应,从而确保成功更新交换机的 CAM 表。

这篇文章有帮助吗?

3 人中有 3 人觉得有帮助

0 条评论