Hello,
I am testing MLAG + VRRP setup using RouterOS 7.22.1 and I believe I have encountered a problem during failback scenario.
Topology
-
2 × RB4011 (MLAG peers)
-
1 × CRS326 (LACP client / ToR switch)
-
Host connected to CRS326
Connections:
-
CRS326 → RB4011-A (ether4)
-
CRS326 → RB4011-B (ether4)
-
RB4011-A ↔ RB4011-B via peer-link (ether10)
Configuration summary
-
MLAG configured on both RB4011 (same
mlag-id) -
LACP (802.3ad) between CRS326 and both RB4011
-
VLAN 100 used for L2 domain
-
VRRP configured on VLAN100:
VRRP VIP: 10.100.0.1
R1 priority: 150 (primary)
R2 priority: 100 (backup)
preemption-mode=yes
Expected behavior
-
When R1 fails → R2 becomes VRRP master → traffic continues
-
When R1 returns → R1 becomes VRRP master again → traffic continues
Actual behavior
1. Failover works correctly
-
R1 powered off
-
R2 becomes VRRP master
-
Host connectivity OK (only 1 ping lost)
2. Failback is broken
-
R1 powered back on
-
VRRP switches master back to R1
BUT:-
Host cannot ping
10.100.0.1 -
No connectivity through VRRP gateway
-
Critical observation (packet flow)
On R1 (VRRP master), I captured traffic:
On MLAG uplink:
/tool sniffer quick interface=lag-to-tor ip-protocol=icmp
I see incoming ICMP requests:
SRC: 10.100.0.150 → DST: 10.100.0.1
DST-MAC: 00:00:5E:00:01:64 (VRRP MAC)
On VLAN interface:
/tool sniffer quick interface=vlan100 ip-protocol=icmp
→ No packets at all
On peer-link:
/tool sniffer quick interface=ether10 ip-protocol=icmp
→ SAME ICMP packets are forwarded to peer:
SRC: 10.100.0.150 → DST: 10.100.0.1
Interpretation
-
R1 is VRRP master
-
Traffic to VIP arrives on R1
-
BUT instead of being processed locally, it is forwarded via MLAG peer-link to R2
-
R2 is VRRP backup → does not process VIP → packets are dropped
Additional verification
-
R1 responds correctly on its real IP
10.100.0.2 -
R1 can ping host from real IP
-
BUT cannot ping from VRRP IP:
/ping 10.100.0.150 src-address=10.100.0.1 → FAIL
/ping 10.100.0.150 src-address=10.100.0.2 → OK
Workaround
If I restart VRRP on R1:
/interface vrrp disable vrrp100
/interface vrrp enable vrrp100
→ immediately:
-
VIP becomes reachable
-
traffic starts working normally
Conclusion
It appears that after failback:
-
VRRP master role is correctly assigned
-
but MLAG/bridge forwarding still treats VRRP MAC as external
-
and forwards traffic via peer-link instead of local processing
Restarting VRRP fixes the issue, which suggests a state inconsistency.
Question
Is this:
-
a known limitation of MLAG + VRRP?
-
or a bug in RouterOS 7.22.1?
Can provide full configuration export if needed