Critical issue on STP flapping

I have the following setup:

Two sites:
Site A: One hAP ac² (namely A1)
Site B: Two hEX (namely B1 and B2)

There are two EOIP tunnels between two sites, A1 <> B1 and A1 <> B2, IPSEC encryption is enabled.
There is a layer 2 switch (dump with VLAN feature only, no STP feature) connecting B1 and B2
Firmware version tried: 6.45.7 upto 6.46.1

bridge interface (namely “local bridge”) is set on each router with the following members:
A1: EOIP A1 <> B1 and EOIP A1 <> B2
B1: EOIP A1 <> B1 and “switch uplink port”
B2: EOIP A1 <> B2 and “switch uplink port”

RSTP is running on each local bridge, with A1 is the lowest number in priority (ROOT bridge)
all ports are in forwarding mode except “switch uplink port” on B2, which is calculated as “alternate” as designed.

Problem:
I connected a PC on the switch at Site B, initiating a ping command to router A1, it gets regular lost of ping with 3-4 seconds long each for every 60 seconds.

Investigation:
(i) On Router B1, I checked the mac-address of Router A1 by command “/interface bridge host print interval=1s” and found that the mac-address flipped from “EOIP A1 <> B1” to “switch uplink port” during the ping lost period.
(ii) no IPSEC error during the ping lost (read from the webUI “IPSEC->Polict->Statistic”)
(iii) no EOIP disconnection during the ping lost (read from the webUI "Interface → EOIP → “Link Downs” counter)
(iv) no error packets on the related interfaces on three routers (read from the webUI “Interface → Ethernet → error packet counter”)
(v) I tried to vary the parameters in RSTP and EOIP but no help to this behavior.
(vi) I disabled the “EOIP A1 <> B2”, the ping drop problem disappeared.

I suspect the STP calculation on current firmware of routers causes a flapping of host on bridge port on every 60 seconds.

I put a week full-time to find out the solution but in vain. :unamused:
Is there any clue on solving this issue?

Set admin mac address in your Bridge…
Also, why do you use EOiP ?

I checked the admin-mac on the “local bridge” for all three routers are different with each other.
I use EOIP because I can simply form a single layer 2 network among two sites by adding the EOIP tunnel endpoint as bridge port in “local bridge” on the corresponding routers.

I checked the admin-mac on the “local bridge” for all three routers are different with each other.

But you said earlier the Bridge mac changes…

Sounds like you have a loop in the network

Could you have a look if you are being affected by the unpublished changes regarding CDP transmitting on STP blocked ports which may be poisoning MAC tables?

You can read my report starting this here:
http://forum.mikrotik.com/t/v6-44-3-stable-is-released/129680/122

You gave an critical idea on troubleshooting the annoying “bridge port received packet with own address as source address (XX:XX:XX:XX:XX:XX), probably loop” message which messed me up for a year! It really screwed me up as I had no idea why I got this warning message even there was no loop in the STP.

Finally I fell back all routers to the Long Term version 6.44.6 without changing any configuration and the problem disappeared, i.e. no more flapping for the mac-address in the bridge port periodically.
I have no time to troubleshoot the router again as I came across another problem in upgrading to 6.46 that my RB750R3 got HANG after the router reboot when upgrade finish.