Hi,
a RB2011 and a RB750GL are connected as following:

This is the config on the RB2011:
/interface export compact
/interface bridge
add comment=LAN mtu=1500 name=br_vlan100 protocol-mode=none
add comment=guests name=br_vlan200 protocol-mode=none
add comment=FFFr name=br_vlan300 protocol-mode=none
/interface ethernet
set [ find default-name=ether2 ] master-port=ether1
set [ find default-name=ether3 ] master-port=ether1 speed=1Gbps
set [ find default-name=ether7 ] master-port=ether6
set [ find default-name=ether10 ] master-port=ether6 poe-out=off
/interface vlan
add comment=LAN interface=ether5 l2mtu=1594 name=ether5.100 vlan-id=100
add comment=guests interface=ether5 l2mtu=1594 name=ether5.200 vlan-id=200
add comment="FFFr transfer" interface=ether5 l2mtu=1594 name=ether5.300 vlan-id=300
/interface bridge port
add bridge=br_vlan100 interface=wlan1
add bridge=br_vlan100 interface=ether6
add bridge=br_vlan100 interface=ether1
add bridge=br_vlan200 interface=ether5.200
add bridge=br_vlan300 interface=ether5.300
add bridge=br_vlan100 interface=ether5.100
add bridge=br_vlan300 interface=ether9
add bridge=br_vlan300 interface=ether8
And this the config on the RB750:
/interface export compact
/interface bridge
add l2mtu=1594 name=br_vlan100
add l2mtu=1594 name=br_vlan200
add l2mtu=1594 name=br_vlan300
/interface vlan
add interface=ether1 l2mtu=1594 name=ether1.100 vlan-id=100
add interface=ether1 l2mtu=1594 name=ether1.200 vlan-id=200
add interface=ether1 l2mtu=1594 name=ether1.300 vlan-id=300
/interface bridge port
add bridge=br_vlan100 interface=ether1.100
add bridge=br_vlan200 interface=ether1.200
add bridge=br_vlan300 interface=ether1.300
add bridge=br_vlan100 interface=ether2
add bridge=br_vlan200 interface=ether4
add bridge=br_vlan300 interface=ether5
add bridge=br_vlan100 interface=ether3
So basically, there is a VLAN trunk between the RB2011 (interface ether5) and the RB750 (interface ether1). On the RouterBoards, the VLAN interfaces are bridged to physical interfaces, so far no problem.
Now the packet leakage thing:
In VLAN 300 I’m using batman_adv (http://www.open-mesh.org/projects/batman-adv/wiki). This a mesh protocol which basically creates a virtual switch in the “cloud”. This protocol is using (braodcast) packets with the ethertype 0x4305. In my case, these packets are coming from VLAN 300 from the RB750 (departing from interface ether5 bridged to ether1.300) and going to the RB2011 (arriving at interface ether5.300 bridged to ether8 and ether9). Now the crazy thing: I can see these packets on all etherX interfaces on RB2011! This should not be the case.
After some research, I found out that the Mesh functionality in RouterOS is based on B.A.T.M.A.N. Is this conflicting with proper packet forwarding when they carry ethertype 0x4305? Apart from unnecessary traffic on the other ethernet ports, it is a bug with security implications. The bridge must not leak any traffic to other ports!
Just to clarify, I can observe this behavior with broadcast packets with ethertype 0x4305, “normal” broadcast traffic is handled correctly.
Did someone experience the same thing?
Thank you for any comments on this.
Ape