Hi to all, I noticed many complains regarding problem of freezing ethernet ports in rb435G. Here is the simple solution which you can use to avoid rebooting and packet loss until MikroTik post fix in ROS:
1. Go to Switch > switch1 and uncheck: switch all ports
2. Go to System>Scripts, click on + and, write name: ether
then add this in source:
:if ([/ping 192.168.1.1 interval=1 count=10] =0) do={
log info "ether port is down" ; /interface ethernet switch set 0 switch-all-ports=yes ;
/interface ethernet switch set 0 switch-all-ports=no
}
Please NOTE that 192.168.1.1 should be ip address of any other RB connected to RB435G via Ethernet Port. You can change that according your setup.
3. Go to System>Netwatch .. click on + and in host field type 192.168.1.1 (ip of other rb via ethernet), interval 00:00:10 and timeout 1000ms ... at Down Tab, write: /system script run ether
4. In Netwatch copy rule at 3. and change interval 00:00:15 (Please note that this step is important as in test I found out that sometimes rb do not respond well to first rule, so you must have this)
5. You can copy again with interval interval 00:00:20 for any case - this is optional
This is it. I tested this on ROS 5.8 and 435G and it works perfect. You can avoid that watchdoog reboot it so packet loss is much smaller in the moment rb435g ether ports stop responding.
Feel free to test it on 493G but you must use this source:
:if ([/ping 192.168.1.1 interval=1 count=10] =0) do={
log info "ether port is down" ; /interface ethernet switch set 0 switch-all-ports=yes ;
/interface ethernet switch set 0 switch-all-ports=no ; /interface ethernet switch set 1 switch-all-ports=yes ;
/interface ethernet switch set 1 switch-all-ports=no
}
as this model has two chips. Actually I didn't test this on 493G, but it should work. If you need to use switch-all-ports = yes .. you must change positions of yes and no commands in script.
Any comments, welcome.