那年窗外下的雪.头像
关注
AIDC 学习日志|第 25 天|设备输出反推、MAC Flapping 与 EAD 撤销封面图

AIDC 学习日志|第 25 天|设备输出反推、MAC Flapping 与 EAD 撤销

本节概览

今天把 MAC Flapping 从“现象”进一步拆成四类可能:合法主机迁移、重复 MAC、二层环路、控制面与数据面不同步。随后复习 Type 2、MAC Mobility、Type 1 per-ES、Type 1 per-EVI 和 Mass Withdrawal 的作用范围,并根据四组设备输出判断故障类型。核心方法是:先描述可观察事实,再区分合理推断和待验证根因,最后设计最小验证集合。

一、今日目标与完成情况

  • 区分合法主机迁移、重复 MAC、二层环路和控制面/数据面不同步
  • 根据 MAC Mobility 序列判断“迁移”与“反复跳变”的差异
  • 理解 Type 2 与 Type 1 EAD 的不同层次
  • 理解 Type 1 per-ES、Type 1 per-EVI 和 Mass Withdrawal
  • 根据设备输出判断单 MAC 故障、整段故障和双主风险
  • 记录原回答、标准答案、错误前提、证据边界和验证顺序
  • 尚未在真实 CloudEngine/VRP 设备上执行这些命令

二、重要方法:现象不等于根因

MAC Flapping 的意思是:同一 MAC 的学习位置在两个或多个出口之间反复变化。它本身只是数据面观察到的现象,不等于已经确认了根因。

现象:MAC 在 Eth-Trunk 与 NVE 之间跳变
直接原因:Leaf 反复收到同一源 MAC 的不同入口报文
根因候选:主机迁移、重复 MAC、二层环路、ESI/Aliasing异常、控制面与数据面不同步
验证:结合本地 MAC、EVPN Type 2、Mobility 序列、服务器和拓扑证据
验收:MAC 稳定、业务连续、BUM/回程正常

三、四种 MAC 位置变化的区别

类型典型事实不能直接假设的内容优先验证
合法主机迁移旧位置停止,新位置稳定,存在迁移事件,序列适度递增不能只凭序列递增确认迁移主机平台、虚拟机迁移记录、Type 2
重复 MAC两个活动设备使用相同 MAC,位置反复覆盖不能只看一个 MAC 表项就定性服务器、虚拟机、容器、网卡 MAC 清单
二层环路多个 MAC 高频跳变,可能有 BUM/广播增加、多个接口异常BUM 不明显也不能完全排除已知单播环路接口计数、桥接、VLAN/BD、Peer-Link、保护
控制/数据面不同步Type 2 宣告一个位置,本地 MAC/FIB 仍使用另一个EVPN Established 不代表业务转发表正确Type 2、EAD/Aliasing、本地硬件表

四、第一组问答:判断四类根因

问题 1:合法迁移还是 Flapping

题目:

MAC 原来位于 Leaf1 Eth-Trunk10;
随后 Leaf1 旧位置消失;
Leaf2 开始稳定学习该 MAC;
Mobility 序列从 7 变成 8;
服务器平台确认发生虚拟机迁移。

你的回答:合法主机迁移。

批改:正确。证据链是:旧位置停止、新位置稳定、序列递增、外部迁移事件存在。序列号变化本身不是充分证据,必须和主机事件及新位置稳定性结合。

问题 2:两个位置反复切换

题目:

同一 MAC 每 1 秒在 Leaf1 Eth-Trunk10 和 Leaf2 NVE 之间切换;
两台服务器配置了相同 MAC;
没有虚拟机迁移。

你的回答:重复 MAC。

批改:正确。两个活动设备同时使用相同 MAC,是最直接的高优先级根因。仍应确认两台设备确实在线并持续发送报文,排除 MAC 清单记录错误。

问题 3:多个 MAC 同时跳变

题目:

约 50 个 MAC 同时跳变;
广播计数持续上升;
未知单播出现重复;
多个接入口出现异常高流量。

你的回答:多个 MAC 同时跳变。

批改:方向正确,但根因结论应补全为:高度怀疑二层环路或广播风暴。一个重复 MAC通常只影响单个地址;多个 MAC、BUM 重复和多端口高流量说明影响范围已经扩大到二层拓扑。即使 BUM 不明显,已知单播环路仍可能存在。

问题 4:Type 2 与本地 MAC 表不一致

题目:

EVPN Type 2:MAC 的远端位置为 Leaf2;
本地 MAC 表:MAC 仍指向 Eth-Trunk10;
EVPN 邻居 Established;
服务器没有迁移。

你的回答:控制面与数据面不同步。

批改:正确。EVPN Type 2反映控制面学习结果,本地 MAC/FIB反映数据面出口。需要继续检查 Type 2 发布者、EAD/Aliasing、硬件编程、LACP/Eth-Trunk和保护状态。

问题 5:最小验证链

题目:

MAC Flapping
→ 查看本地 MAC 表
→ 查看 ______
→ 检查 ______
→ 检查 ______
→ 业务验收

你的回答:LACP、Aliasing。

批改:方向合理但不完整。推荐写法:

MAC Flapping
→ 查看本地 MAC 表
→ 查看 EVPN Type 2、MAC Mobility 序列和远端 VTEP
→ 检查 ESI/EAD/Aliasing 与 LACP/Eth-Trunk
→ 检查服务器 MAC、Bond、虚拟交换机及 VLAN/BD/L2 VNI
→ 业务验收

只看 LACP 和 Aliasing,不能判断是否存在重复 MAC、Type 2 旧路径或 VLAN/BD 映射错误。

五、第二组问答:最小验证集合

问题 1:单 MAC 跳变

你的回答:

EVPN Type 2 → 主机迁移记录 → 重复 MAC 检查

批改:正确方向。应再加入本地 MAC 表和跳变频率:

本地 MAC 表及跳变时间
→ EVPN Type 2、远端 VTEP 和 Mobility 序列
→ 主机迁移记录
→ 重复 MAC 检查

问题 2:序列号快速增加

你的回答:MAC Flapping。

批改:正确。如果序列快速增加但没有稳定的新位置,也没有合法迁移事件,应优先怀疑重复 MAC、二层环路、虚拟交换机或多归属路径异常。

问题 3:Type 2 与本地表均显示远端但业务丢包

你的回答:

EAD/Aliasing → 本地 MAC/FIB 编程 → LACP/Eth-Trunk → 保护状态 → 清理旧表项后的业务恢复

批改:方向正确。还需要补充 Underlay 到远端 VTEP、NVE 封装/解封装计数、MTU、BD/L2 VNI、ARP、ACL和回程检查。此时问题可能不在 MAC 学习,而在 VXLAN 数据面或回程。

问题 4:多个 MAC 跳变但 BUM 不增加

你的回答:不可以,二层环路不只影响一个 MAC。

批改:结论正确。应更准确地说:不能因为 BUM 没有明显增加就排除二层环路。环路可能主要转发已知单播,或者 BUM 被保护机制、策略或流量规模掩盖。

问题 5:重复 MAC 排障链

本题未作答,标准链如下:

现象:同一 MAC 在本地 Eth-Trunk 与 NVE 之间反复跳变
→ 证据:两台活动设备使用相同 MAC,且没有合法迁移记录
→ 直接原因:两个位置同时发送相同源 MAC,反复覆盖 MAC 学习位置
→ 根因候选:虚拟机克隆、手工 MAC、虚拟交换机桥接、Bond/LACP错误
→ 验证:MAC清单、Type 2 发布者、MAC学习端口、服务器Bond、VLAN/BD/L2 VNI
→ 修复:消除重复 MAC并修正桥接或聚合
→ 验收:MAC稳定、Flapping消失、Type 2位置正确、同子网和回程恢复

六、Type 2、MAC Mobility 与 EAD

1. Type 2

Type 2 主要发布具体的 MAC 或 MAC/IP 位置:

MAC/IP
→ 所属 EVI/业务
→ 远端 VTEP
→ 可能的 ESI 与移动信息

它回答:这个 MAC/IP 在哪里?

2. MAC Mobility

MAC Mobility 用于判断同一 MAC/IP 的新旧位置。合法迁移一般是:

Leaf1 序列 7
→ 主机迁移
→ Leaf2 序列 8
→ 远端设备淘汰旧位置

如果序列快速增加但 MAC 没有稳定的新位置,不能直接当作正常收敛,应查重复 MAC、环路和多归属异常。

3. Type 1 per-ES

Type 1 per-ES 的作用范围是整个 Ethernet Segment,主要用于:

  • Ethernet Segment 发现;
  • 表达 ES 状态变化;
  • 触发 ES 范围的快速撤销;
  • 支持 Mass Withdrawal。

可以理解为:

整个多归属 Ethernet Segment 是否仍然有效?

4. Type 1 per-EVI

Type 1 per-EVI 的作用范围是某个 Ethernet Segment 上的某一个 EVI。它比 per-ES 更细粒度,可以表达:

  • 某个 ES 是否参与某个具体 EVI;
  • 某个业务的多归属成员状态;
  • EVI 范围内的 Aliasing 与撤销。

因此:

per-ES:整个 ES 层次
per-EVI:某个业务 EVI 层次
Type 2:具体 MAC/IP 层次

5. Mass Withdrawal

如果一个 Ethernet Segment 整体故障,不应等待每一个 MAC 单独老化。EAD 相关撤销可以批量清除一组旧候选路径:

ES 故障
→ EAD 状态变化或撤销
→ 远端识别 ES 失效
→ 批量清除相关 MAC/Aliasing 候选出口
→ 更新本地 MAC/FIB
→ 剩余 Leaf 接管

这就是 Mass Withdrawal 的工程价值:缩短大规模 MAC 路径收敛时间。

Ethernet Segment

Type 1 per-ES
整个 ES 的发现与撤销

Type 1 per-EVI
某个 EVI 的成员状态

Aliasing
多个 Leaf 作为候选出口

Type 2 MAC/IP
具体 MAC/IP 位置

Mass Withdrawal
批量撤销相关路径

本地 MAC/Aliasing/FIB

七、第三组问答:四个设备输出案例

案例 A

输出:

只有一个 MAC 在 Leaf1 和 Leaf2 之间移动;
Mobility 序列持续增加;
没有主机迁移记录;
没有明显 BUM 重复。

标准答案:更接近重复 MAC 或单点 MAC Flapping,不是合法迁移。

依据:没有迁移事件,且位置持续反复而非移动后稳定。优先检查两个活动设备是否使用相同 MAC、服务器 Bond、虚拟交换机和本地/远端 Type 2 发布者。若后续发现多个 MAC也跳变,再提高二层环路的优先级。

案例 B

输出:

约 2000 个 MAC 同时从 Leaf1 的候选出口中撤销;
EVPN 邻居仍 Established;
Leaf2 快速接管;
业务短暂中断后恢复。

标准答案:Mass Withdrawal,更具体地说是 Ethernet Segment 故障后的 EAD 撤销。

依据:影响的是大量 MAC,且剩余 Leaf 很快接管;EVPN 邻居 Established 只说明会话仍存在,不否定服务路径撤销。

案例 C

输出:

本地 MAC 表显示 MAC 在 Eth-Trunk10;
EVPN Type 2 显示 MAC 在远端 Leaf2;
EAD 和 EVPN 邻居均正常;
硬件转发表仍未更新。

标准答案:控制面与数据面不同步,当前直接故障表现位于数据面。

控制面已经有远端 Type 2 信息,但本地 MAC/FIB 仍使用旧出口。应检查硬件编程、MAC表刷新、Aliasing/LACP成员状态和保护机制。不能简单归因于 EVPN 邻居故障。

案例 D

输出:

多个 MAC 高频跳变;
广播和未知单播计数增加;
Peer-Link 状态异常;
两台 Leaf 都认为自己可以转发。

标准答案:双主风险与二层环路。

依据:多个 MAC、BUM 增加、Peer-Link 异常、两台设备同时转发,符合双主保护失效或状态不同步。普通哈希不均衡只影响流量成员选择,不能解释大范围 MAC 跳变和双主转发。

八、四类案例对比图

单 MAC,迁移后稳定

单 MAC,两个活动源反复发送

多个 MAC + BUM/广播增加

Type 2 与本地 FIB 不一致

大量 MAC 同时撤销

观察 MAC 位置变化

影响范围与证据

合法主机迁移
Type 2 + Mobility

重复 MAC
位置覆盖

二层环路或双主
检查保护与拓扑

控制面/数据面不同步
检查 EAD/Aliasing/硬件

EAD / Mass Withdrawal
ES 级收敛

九、最小验证集合

单个 MAC 跳变

1. 保留跳变时间、频率、入口和方向;
2. 查看本地 MAC 表;
3. 查看 Type 2、远端 VTEP 和 Mobility 序列;
4. 查主机迁移记录与重复 MAC;
5. 查 Bond、虚拟交换机、VLAN/BD/L2 VNI;
6. 验证 MAC 稳定、连续单播和回程。

多个 MAC 同时失效

1. 查看 EAD per-ES/per-EVI 和撤销信息;
2. 查看 ESI、Aliasing、Leaf角色和保护状态;
3. 查看 Peer-Link、Keepalive、LACP;
4. 查看 MAC/FIB 批量更新;
5. 验证剩余 Leaf 接管、BUM、ARP、已知单播和回程。

常用命令类别

不同 VRP 版本的精确命令可能不同,训练时按命令类别理解:

display mac-address
display interface
display eth-trunk
display bgp evpn peer
display bgp evpn routing-table
display arp

命令输出只能证明对应层次的状态,不能用一个 Established 或一个 Up 覆盖整条业务路径。

十、今日复习卡片

MAC Flapping 是现象,不是根因;
合法迁移要求旧位置消失、新位置稳定并有迁移证据;
重复 MAC 会让两个位置反复覆盖同一 MAC;
多个 MAC + BUM 增加要查环路和双主;
Type 2 关注具体 MAC/IP 位置;
MAC Mobility 关注同一 MAC 的新旧位置;
Type 1 per-ES 关注整个 Ethernet Segment;
Type 1 per-EVI 关注某个 EVI 上的 ES 成员状态;
EAD/Mass Withdrawal 可以批量撤销旧候选路径;
EVPN Established 不等于服务数据面正常;
控制面正确但 FIB 未更新,属于控制面与数据面不同步;
先保留证据,再清理旧表项;
真实设备命令和收敛时间仍需实验验证。

十一、今日状态

第 25 天完成。现在已经能够从 MAC 表、EVPN Type 2、MAC Mobility、EAD、ESI/Aliasing、Peer-Link 和业务现象之间建立证据链,并区分:

合法迁移
vs 重复 MAC
vs 二层环路/双主
vs 控制面与数据面不同步
vs Ethernet Segment 级 Mass Withdrawal

下一阶段建议进入:EVPN 多归属故障的完整命令输出阅读与最小实验设计,重点把“概念判断”转化为“设备输出 → 根因 → 修复 → 验收”。

转载自 CSDN-专业IT技术社区

原文链接:https://blog.csdn.net/2502_91577682/article/details/165244422

文章来源转载

评论

赞0

评论列表

微信小程序
QQ小程序

关于作者

点赞数:0
关注数:0
粉丝:0
文章:0
关注标签:0
加入于:--