Hello!
I have set up merging 4 WAN channels with balancing and failover by that script:
/ip address
add address=192.168.0.1/24 network=192.168.0.0 broadcast=192.168.0.255 interface=Local
add address=192.168.1.2/24 network=192.168.1.0 broadcast=192.168.1.255 interface=WAN1
add address=192.168.2.2/24 network=192.168.2.0 broadcast=192.168.2.255 interface=WAN2
add address=192.168.3.2/24 network=192.168.3.0 broadcast=192.168.3.255 interface=WAN3
add address=192.168.4.2/24 network=192.168.4.0 broadcast=192.168.4.255 interface=WAN4
/ip dns set allow-remote-requests=yes cache-max-ttl=1w cache-size=5000KiB max-udp-packet-size=512 servers=77.88.8.1,8.8.8.8
/ip firewall mangle
add chain=input in-interface=WAN1 action=mark-connection new-connection-mark=WAN1_conn
add chain=input in-interface=WAN2 action=mark-connection new-connection-mark=WAN2_conn
add chain=input in-interface=WAN3 action=mark-connection new-connection-mark=WAN3_conn
add chain=input in-interface=WAN4 action=mark-connection new-connection-mark=WAN4_conn
add chain=output connection-mark=WAN1_conn action=mark-routing new-routing-mark=to_WAN1
add chain=output connection-mark=WAN2_conn action=mark-routing new-routing-mark=to_WAN2
add chain=output connection-mark=WAN3_conn action=mark-routing new-routing-mark=to_WAN3
add chain=output connection-mark=WAN4_conn action=mark-routing new-routing-mark=to_WAN4
add chain=prerouting dst-address=192.168.1.0/24 action=accept in-interface=Local
add chain=prerouting dst-address=192.168.2.0/24 action=accept in-interface=Local
add chain=prerouting dst-address=192.168.3.0/24 action=accept in-interface=Local
add chain=prerouting dst-address=192.168.4.0/24 action=accept in-interface=Local
add chain=prerouting dst-address-type=!local in-interface=Local per-connection-classifier=both-addresses-and-ports:4/0 action=mark-connection new-connection-mark=WAN1_conn passthrough=yes
add chain=prerouting dst-address-type=!local in-interface=Local per-connection-classifier=both-addresses-and-ports:4/1 action=mark-connection new-connection-mark=WAN2_conn passthrough=yes
add chain=prerouting dst-address-type=!local in-interface=Local per-connection-classifier=both-addresses-and-ports:4/2 action=mark-connection new-connection-mark=WAN3_conn passthrough=yes
add chain=prerouting dst-address-type=!local in-interface=Local per-connection-classifier=both-addresses-and-ports:4/3 action=mark-connection new-connection-mark=WAN4_conn passthrough=yes
add chain=prerouting connection-mark=WAN1_conn in-interface=Local action=mark-routing new-routing-mark=to_WAN1
add chain=prerouting connection-mark=WAN2_conn in-interface=Local action=mark-routing new-routing-mark=to_WAN2
add chain=prerouting connection-mark=WAN3_conn in-interface=Local action=mark-routing new-routing-mark=to_WAN3
add chain=prerouting connection-mark=WAN4_conn in-interface=Local action=mark-routing new-routing-mark=to_WAN4
/ip route
add dst-address=0.0.0.0/0 gateway=192.168.1.1 routing-mark=to_WAN1 check-gateway=ping
add dst-address=0.0.0.0/0 gateway=192.168.2.1 routing-mark=to_WAN2 check-gateway=ping
add dst-address=0.0.0.0/0 gateway=192.168.3.1 routing-mark=to_WAN3 check-gateway=ping
add dst-address=0.0.0.0/0 gateway=192.168.4.1 routing-mark=to_WAN4 check-gateway=ping
add dst-address=0.0.0.0/0 gateway=192.168.1.1 distance=1 check-gateway=ping
add dst-address=0.0.0.0/0 gateway=192.168.2.1 distance=2 check-gateway=ping
add dst-address=0.0.0.0/0 gateway=192.168.3.1 distance=3 check-gateway=ping
add dst-address=0.0.0.0/0 gateway=192.168.4.1 distance=4 check-gateway=ping
/ip firewall nat
add chain=srcnat out-interface=WAN1 action=masquerade
add chain=srcnat out-interface=WAN2 action=masquerade
add chain=srcnat out-interface=WAN3 action=masquerade
add chain=srcnat out-interface=WAN4 action=masquerade
it was working for a few days at then stopped for unknown reason.
For now, when I pinging any site through different WANs from ROUTER - it was working fine. But from local net or wifi - it’s not working at all, tracert doesn’t come further than the router.
Here is a full unload of the current configuration:
# sep/17/2014 23:44:31 by RouterOS 6.19
# software id = I6W3-KW2B
#
/interface bridge
add admin-mac=D4:CA:6D:C9:F9:05 arp=proxy-arp auto-mac=no l2mtu=1598 name=\
bridge-local
/interface ethernet
set [ find default-name=ether5 ] mac-address=D4:CA:6D:C9:F9:08 name=Local
set [ find default-name=ether1 ] mac-address=D4:CA:6D:C9:F9:04 name=WAN1
set [ find default-name=ether2 ] mac-address=D4:CA:6D:C9:F9:05 name=WAN2
set [ find default-name=ether3 ] mac-address=D4:CA:6D:C9:F9:06 name=WAN3
set [ find default-name=ether4 ] mac-address=D4:CA:6D:C9:F9:07 name=WAN4
/interface wireless
set [ find default-name=wlan1 ] l2mtu=2290 name=wlan2
/ip neighbor discovery
set WAN1 discover=no
/interface wireless security-profiles
set [ find default=yes ] authentication-types=wpa-psk,wpa2-psk eap-methods="" \
group-ciphers=tkip,aes-ccm mode=dynamic-keys unicast-ciphers=tkip,aes-ccm \
wpa-pre-shared-key=JungleLeo wpa2-pre-shared-key=JungleLeo
/ip ipsec proposal
set [ find default=yes ] enc-algorithms=3des
/ip pool
add name=default-dhcp ranges=192.168.88.10-192.168.88.254
/ip dhcp-server
add address-pool=default-dhcp disabled=no interface=bridge-local name=default
/system logging action
set 0 memory-lines=100
set 1 disk-lines-per-file=100
/interface bridge port
add bridge=bridge-local
add bridge=bridge-local interface=Local
/ip firewall connection tracking
set generic-timeout=0ms icmp-timeout=0ms tcp-close-timeout=0ms \
tcp-close-wait-timeout=0ms tcp-established-timeout=0ms \
tcp-fin-wait-timeout=0ms tcp-last-ack-timeout=0ms \
tcp-syn-received-timeout=0ms tcp-syn-sent-timeout=0ms \
tcp-time-wait-timeout=0ms udp-stream-timeout=0ms udp-timeout=0ms
/ip address
add address=192.168.88.1/24 comment="default configuration" interface=\
bridge-local network=192.168.88.0
add address=192.168.0.0/24 interface=Local network=192.168.0.0
add address=192.168.2.2/24 interface=WAN2 network=192.168.2.0
add address=192.168.3.2/24 interface=WAN3 network=192.168.3.0
add address=192.168.4.2/24 interface=WAN4 network=192.168.4.0
add address=192.168.1.1/24 interface=WAN1 network=192.168.1.0
/ip dhcp-client
add comment="default configuration" dhcp-options=hostname,clientid disabled=\
no interface=WAN1
/ip dhcp-server network
add address=192.168.88.0/24 comment="default configuration" dns-server=\
192.168.88.1,8.8.8.8 gateway=192.168.88.1
/ip dns
set allow-remote-requests=yes cache-size=5000KiB max-udp-packet-size=512 \
servers=77.88.8.1,8.8.8.8
/ip dns static
add address=192.168.88.1 name=router
/ip firewall filter
add chain=input comment="default configuration" protocol=icmp
add chain=input comment="default configuration" connection-state=established
add chain=input comment="default configuration" connection-state=related
add action=drop chain=input comment="default configuration" in-interface=WAN1
add chain=forward comment="default configuration" connection-state=\
established
add chain=forward comment="default configuration" connection-state=related
add action=drop chain=forward comment="default configuration" \
connection-state=invalid
/ip firewall mangle
add action=mark-connection chain=input in-interface=WAN1 new-connection-mark=\
WAN1_conn
add action=mark-connection chain=input in-interface=WAN2 new-connection-mark=\
WAN2_conn
add action=mark-connection chain=input in-interface=WAN3 new-connection-mark=\
WAN3_conn
add action=mark-connection chain=input in-interface=WAN4 new-connection-mark=\
WAN4_conn
add action=mark-routing chain=output connection-mark=WAN1_conn \
new-routing-mark=to_WAN1
add action=mark-routing chain=output connection-mark=WAN2_conn \
new-routing-mark=to_WAN2
add action=mark-routing chain=output connection-mark=WAN3_conn \
new-routing-mark=to_WAN3
add action=mark-routing chain=output connection-mark=WAN4_conn \
new-routing-mark=to_WAN4
add chain=prerouting dst-address=192.168.1.0/24 in-interface=bridge-local
add chain=prerouting dst-address=192.168.2.0/24 in-interface=bridge-local
add chain=prerouting dst-address=192.168.3.0/24 in-interface=bridge-local
add chain=prerouting dst-address=192.168.4.0/24 in-interface=bridge-local
add action=mark-connection chain=prerouting dst-address-type=!local \
in-interface=bridge-local new-connection-mark=WAN1_conn \
per-connection-classifier=both-addresses-and-ports:4/0
add action=mark-connection chain=prerouting dst-address-type=!local \
in-interface=bridge-local new-connection-mark=WAN2_conn \
per-connection-classifier=both-addresses-and-ports:4/1
add action=mark-connection chain=prerouting dst-address-type=!local \
in-interface=bridge-local new-connection-mark=WAN3_conn \
per-connection-classifier=both-addresses-and-ports:4/2
add action=mark-connection chain=prerouting dst-address-type=!local \
in-interface=bridge-local new-connection-mark=WAN4_conn \
per-connection-classifier=both-addresses-and-ports:4/3
add action=mark-routing chain=prerouting connection-mark=WAN1_conn \
in-interface=bridge-local new-routing-mark=to_WAN1
add action=mark-routing chain=prerouting connection-mark=WAN2_conn \
in-interface=bridge-local new-routing-mark=to_WAN2
add action=mark-routing chain=prerouting connection-mark=WAN3_conn \
in-interface=bridge-local new-routing-mark=to_WAN3
add action=mark-routing chain=prerouting connection-mark=WAN4_conn \
in-interface=bridge-local new-routing-mark=to_WAN4
/ip firewall nat
add action=masquerade chain=srcnat comment="default configuration" \
out-interface=WAN1
add action=masquerade chain=srcnat out-interface=WAN2
add action=masquerade chain=srcnat out-interface=WAN3
add action=masquerade chain=srcnat out-interface=WAN4 to-addresses=0.0.0.0
/ip route
add check-gateway=ping distance=1 gateway=192.168.1.1 routing-mark=to_WAN1
add check-gateway=ping distance=1 gateway=192.168.2.1 routing-mark=to_WAN2
add check-gateway=ping distance=1 gateway=192.168.3.1 routing-mark=to_WAN3
add check-gateway=ping distance=1 gateway=192.168.4.1 routing-mark=to_WAN4
add check-gateway=ping distance=1 gateway=192.168.1.1
add check-gateway=ping distance=2 gateway=192.168.2.1
add check-gateway=ping distance=3 gateway=192.168.3.1
add check-gateway=ping distance=4 gateway=192.168.4.1
/ip service
set api disabled=yes
/ip upnp
set allow-disable-external-interface=no
/system leds
set 0 leds=wlan-led type=wireless-status
set 1 interface=WAN1 leds=led1
set 2 interface=WAN2 leds=led2
set 3 interface=WAN3 leds=led3
set 4 interface=WAN4 leds=led4
set 5 interface=Local leds=led5 type=interface-activity
/system script
add name=script1 policy=\
ftp,reboot,read,write,policy,test,password,sniff,sensitive source="/ip add\
ress\r\
\nadd address=192.168.0.1/24 network=192.168.0.0 broadcast=192.168.0.255 i\
nterface=Local\r\
\nadd address=192.168.1.2/24 network=192.168.1.0 broadcast=192.168.1.255 i\
nterface=WAN1\r\
\nadd address=192.168.2.2/24 network=192.168.2.0 broadcast=192.168.2.255 i\
nterface=WAN2\r\
\nadd address=192.168.3.2/24 network=192.168.3.0 broadcast=192.168.3.255 i\
nterface=WAN3\r\
\nadd address=192.168.4.2/24 network=192.168.4.0 broadcast=192.168.4.255 i\
nterface=WAN4\r\
\n \r\
\n/ip dns set allow-remote-requests=yes cache-max-ttl=1w cache-size=5000Ki\
B max-udp-packet-size=512 servers=77.88.8.1,8.8.8.8\r\
\n \r\
\n/ip firewall mangle\r\
\nadd chain=input in-interface=WAN1 action=mark-connection new-connection-\
mark=WAN1_conn\r\
\nadd chain=input in-interface=WAN2 action=mark-connection new-connection-\
mark=WAN2_conn\r\
\nadd chain=input in-interface=WAN3 action=mark-connection new-connection-\
mark=WAN3_conn\r\
\nadd chain=input in-interface=WAN4 action=mark-connection new-connection-\
mark=WAN4_conn\r\
\n \r\
\nadd chain=output connection-mark=WAN1_conn action=mark-routing new-routi\
ng-mark=to_WAN1\r\
\nadd chain=output connection-mark=WAN2_conn action=mark-routing new-routi\
ng-mark=to_WAN2\r\
\nadd chain=output connection-mark=WAN3_conn action=mark-routing new-routi\
ng-mark=to_WAN3\r\
\nadd chain=output connection-mark=WAN4_conn action=mark-routing new-routi\
ng-mark=to_WAN4\r\
\n \r\
\nadd chain=prerouting dst-address=192.168.1.0/24 action=accept in-interfa\
ce=Local\r\
\nadd chain=prerouting dst-address=192.168.2.0/24 action=accept in-interfa\
ce=Local\r\
\nadd chain=prerouting dst-address=192.168.3.0/24 action=accept in-interfa\
ce=Local\r\
\nadd chain=prerouting dst-address=192.168.4.0/24 action=accept in-interfa\
ce=Local\r\
\n\r\
\nadd chain=prerouting dst-address-type=!local in-interface=Local per-conn\
ection-classifier=both-addresses-and-ports:2/0 action=mark-connection new-\
connection-mark=WAN1_conn passthrough=yes\r\
\nadd chain=prerouting dst-address-type=!local in-interface=Local per-conn\
ection-classifier=both-addresses-and-ports:2/1 action=mark-connection new-\
connection-mark=WAN2_conn passthrough=yes\r\
\nadd chain=prerouting dst-address-type=!local in-interface=Local per-conn\
ection-classifier=both-addresses-and-ports:2/3 action=mark-connection new-\
connection-mark=WAN3_conn passthrough=yes\r\
\nadd chain=prerouting dst-address-type=!local in-interface=Local per-conn\
ection-classifier=both-addresses-and-ports:2/4 action=mark-connection new-\
connection-mark=WAN4_conn passthrough=yes\r\
\n\r\
\nadd chain=prerouting connection-mark=WAN1_conn in-interface=Local action\
=mark-routing new-routing-mark=to_WAN1\r\
\nadd chain=prerouting connection-mark=WAN2_conn in-interface=Local action\
=mark-routing new-routing-mark=to_WAN2\r\
\nadd chain=prerouting connection-mark=WAN3_conn in-interface=Local action\
=mark-routing new-routing-mark=to_WAN3\r\
\nadd chain=prerouting connection-mark=WAN4_conn in-interface=Local action\
=mark-routing new-routing-mark=to_WAN4\r\
\n\r\
\n/ip route\r\
\nadd dst-address=0.0.0.0/0 gateway=192.168.1.1 routing-mark=to_WAN1 check\
-gateway=ping\r\
\nadd dst-address=0.0.0.0/0 gateway=192.168.2.1 routing-mark=to_WAN2 check\
-gateway=ping\r\
\nadd dst-address=0.0.0.0/0 gateway=192.168.3.1 routing-mark=to_WAN3 check\
-gateway=ping\r\
\nadd dst-address=0.0.0.0/0 gateway=192.168.4.1 routing-mark=to_WAN4 check\
-gateway=ping\r\
\n\r\
\n\r\
\n \r\
\nadd dst-address=0.0.0.0/0 gateway=192.168.1.1 distance=1 check-gateway=p\
ing\r\
\nadd dst-address=0.0.0.0/0 gateway=192.168.2.1 distance=2 check-gateway=p\
ing\r\
\nadd dst-address=0.0.0.0/0 gateway=192.168.3.1 distance=3 check-gateway=p\
ing\r\
\nadd dst-address=0.0.0.0/0 gateway=192.168.4.1 distance=4 check-gateway=p\
ing\r\
\n\r\
\n\r\
\n\r\
\n \r\
\n/ip firewall nat\r\
\nadd chain=srcnat out-interface=WAN1 action=masquerade\r\
\nadd chain=srcnat out-interface=WAN2 action=masquerade\r\
\nadd chain=srcnat out-interface=WAN3 action=masquerade\r\
\nadd chain=srcnat out-interface=WAN4 action=masquerade"
/tool graphing interface
add interface=bridge-local
/tool mac-server
set [ find default=yes ] disabled=yes
add interface=WAN2
add interface=WAN3
add interface=WAN4
add interface=Local
add
add interface=bridge-local
/tool mac-server mac-winbox
set [ find default=yes ] disabled=yes
add interface=WAN2
add interface=WAN3
add interface=WAN4
add interface=Local
add
add interface=bridge-local