Adding an ethernet port (that you are plugged into) to a bridge causes disconnection in most recent RouterOS versions

Hi,

This is kind of a suggestion.

In the most recent versions of RouterOS (6.34.6 and 6.35.4), if you add the ethernet port you are plugged into, to a bridge, it disconnects you from the router.

Could we revert back to the way this used to behave in older versions (e.g. 6.32.4 didn’t have this problem). It causes a lot of problems for our installers who program our customer routers using a script.

Thanks

I assume you are connecting to MAC address. In this case you are disconnected only if bridge mac address is not the same as Ethernet MAC and such behaviour was on any ROS version.

Yes, this is connected via MAC-Telnet

It never used to disconnect on 6.32.4 and below. Just re-tested this, but on 6.34.6 and 6.35.4 it does

However I do see what you are saying by the MAC Address of what i’m connected to changes because I’m now using the MAC of the bridge
But for some reason, it never used to disconnect you until these recent versions…

Below is an example for 6.35.4

[admin@MikroTik] > /interface ethernet print
Flags: X - disabled, R - running, S - slave 
 #    NAME                   MTU MAC-ADDRESS       ARP        MASTER-PORT               SWITCH     
 0    ether1                1500 D4:CA:6D:AE:D3:E5 enabled    none                      switch1    
 1    ether2                1500 D4:CA:6D:AE:D3:E6 enabled    none                      switch1    
 2    ether3                1500 D4:CA:6D:AE:D3:E7 enabled    none                      switch1    
 3    ether4                1500 D4:CA:6D:AE:D3:E8 enabled    none                      switch1    
 4 R  ether5                1500 D4:CA:6D:AE:D3:E9 enabled    none                      switch1    
 5    ether6                1500 D4:CA:6D:AE:D3:EA enabled    none                      switch2    
 6    ether7                1500 D4:CA:6D:AE:D3:EB enabled    none                      switch2    
 7    ether8                1500 D4:CA:6D:AE:D3:EC enabled    none                      switch2    
 8    ether9                1500 D4:CA:6D:AE:D3:ED enabled    none                      switch2    
 9    ether10               1500 D4:CA:6D:AE:D3:EE enabled    none                      switch2    
10    sfp1                  1500 D4:CA:6D:AE:D3:E4 enabled    none                      switch1    
[admin@MikroTik] > /interface bridge print  
Flags: X - disabled, R - running 
 0  R name="bridge1" mtu=auto actual-mtu=1500 l2mtu=65535 arp=enabled mac-address=D4:CA:6D:AE:D3:E9
      protocol-mode=rstp priority=0x8000 auto-mac=yes admin-mac=00:00:00:00:00:00 max-message-age=2
      forward-delay=15s transmit-hold-count=6 ageing-time=5m 


for i from=1 to=10 do={/interface bridge port add bridge=bridge1 interface="ether$i"}

That is where i get disconnected
(and yes, that bridge already has the MAC Address from ether1, because I had just removed all ports from that bridge, to use in this example)
On 6.32.4

[admin@MikroTik] > /interface ethernet print
Flags: X - disabled, R - running, S - slave 
 #    NAME                         MTU MAC-ADDRESS       ARP        MASTER-PORT                       SWITCH                      
 0    ether1                      1500 D4:CA:6D:AE:D3:E5 enabled    none                              switch1                     
 1    ether2                      1500 D4:CA:6D:AE:D3:E6 enabled    none                              switch1                     
 2    ether3                      1500 D4:CA:6D:AE:D3:E7 enabled    none                              switch1                     
 3    ether4                      1500 D4:CA:6D:AE:D3:E8 enabled    none                              switch1                     
 4 R  ether5                      1500 D4:CA:6D:AE:D3:E9 enabled    none                              switch1                     
 5    ether6                      1500 D4:CA:6D:AE:D3:EA enabled    none                              switch2                     
 6    ether7                      1500 D4:CA:6D:AE:D3:EB enabled    none                              switch2                     
 7    ether8                      1500 D4:CA:6D:AE:D3:EC enabled    none                              switch2                     
 8    ether9                      1500 D4:CA:6D:AE:D3:ED enabled    none                              switch2                     
 9    ether10                     1500 D4:CA:6D:AE:D3:EE enabled    none                              switch2                     
10    sfp1                        1500 D4:CA:6D:AE:D3:E4 enabled    none                              switch1                     
[admin@MikroTik] > /interface bridge print
Flags: X - disabled, R - running 
 0  R name="bridge1" mtu=auto actual-mtu=1500 l2mtu=65535 arp=enabled mac-address=00:00:00:00:00:00 protocol-mode=rstp 
      priority=0x8000 auto-mac=yes admin-mac=00:00:00:00:00:00 max-message-age=20s forward-delay=15s transmit-hold-count=6 
      ageing-time=5m 
[admin@MikroTik] > for i from=1 to=10 do={/interface bridge port add bridge=bridge1 interface="ether$i"}
[admin@MikroTik] > /interface ethernet print
Flags: X - disabled, R - running, S - slave 
 #    NAME                         MTU MAC-ADDRESS       ARP        MASTER-PORT                       SWITCH                      
 0  S ether1                      1500 D4:CA:6D:AE:D3:E5 enabled    none                              switch1                     
 1  S ether2                      1500 D4:CA:6D:AE:D3:E6 enabled    none                              switch1                     
 2  S ether3                      1500 D4:CA:6D:AE:D3:E7 enabled    none                              switch1                     
 3  S ether4                      1500 D4:CA:6D:AE:D3:E8 enabled    none                              switch1                     
 4 RS ether5                      1500 D4:CA:6D:AE:D3:E9 enabled    none                              switch1                     
 5  S ether6                      1500 D4:CA:6D:AE:D3:EA enabled    none                              switch2                     
 6  S ether7                      1500 D4:CA:6D:AE:D3:EB enabled    none                              switch2                     
 7  S ether8                      1500 D4:CA:6D:AE:D3:EC enabled    none                              switch2                     
 8  S ether9                      1500 D4:CA:6D:AE:D3:ED enabled    none                              switch2                     
 9  S ether10                     1500 D4:CA:6D:AE:D3:EE enabled    none                              switch2                     
10    sfp1                        1500 D4:CA:6D:AE:D3:E4 enabled    none                              switch1                     
[admin@MikroTik] > /interface bridge print
Flags: X - disabled, R - running 
 0  R name="bridge1" mtu=auto actual-mtu=1500 l2mtu=1598 arp=enabled mac-address=D4:CA:6D:AE:D3:E5 protocol-mode=rstp 
      priority=0x8000 auto-mac=yes admin-mac=00:00:00:00:00:00 max-message-age=20s forward-delay=15s transmit-hold-count=6 
      ageing-time=5m 

I can do all that without getting disconnected from the router at all, and you can see that I am plugged into ether5, and the mac address of the bridge chooses the MAC for ether1 as the MAC for the bridge. So the MAC Address I’m connected to via MAC-Telnet did change. But for some reason, all RouterOS versions up to 6.32.4 do not disconnect you when doing so.

Actually i do remember one other odd version (6.31.x I believe that disconnected you too, but that was soon corrected in the 6.32.x versions)

What changed that no longer allows you to stay connected after adding that port? And can that change be reverted in future RouterOS versions?

Thanks