RouterOS is pretty flexible so many way to do failover. The above approach is called “Route Failover”, see bottom of the summary of methods for failover/load balancing:
https://help.mikrotik.com/docs/display/ROS/Load+Balancing
Correct, an interface in a “down” state (e.g. unplugged or disabled in software) remove its route immediately. And, NAT rule should will deal connections when interface goes down.
I mention this method since if the use case for “travel”, this method is dirt simple. If you have a ethernet WAN, it will use that. If you don’t it uses LTE.
This is a valid middle-ground actually, checking next-hop using ping. All routes have a check-gateway=ping option. This is used by all more complex failover cases too.
check-gateway=ping on a /ip/route, will ping the next-hop and after three failed pings, it will disable the route. It ONLY checks next-hop, not “the internet” – but that’s better waiting for interface being down (e.g. using ONLY distance= in routes).
Since I’m guessing you’re using DHCP to get the WAN address from ether1, the DHCP client is what’s adding the default route to /ip/routes DYNAMICALLY. But there is not option there to add the “check-gateway=ping” option. But you can use a script in “Advance” tab… the script will run whenever an address is assigned and modify the route to check the next-hop ping to check the route:
:if ($bound=1) do={
/ip route set [ /routing/route/find dst-address="0.0.0.0/0" gateway=$"gateway-address" ] check-gateway=ping
}
And this is the “recursive routing” method. It depend on the 2 methods above to work. This method just abuses the routing table by using the check-gateway=ping to add an intermediate route via the host on internet you want to ping. But as the page describes, you need separate routing tables, etc. since that internet host your checking need to have a fixed route a specific WAN to check.
If you WAN uses DHCP or PPPoE or other dynamic WAN address, you still need a DHCP client script shown, but that part needs change. Mikrotik docs assume you have a IP static address for your WAN, so this method is actually especially complex for DHCP on ether1 and LTE as 2nd WAN – both have dynamic addresses.
Another forum member, @pcunite, has a initial/WIP guide for “MultiWAN” that covers the dynamic assignment part better than Mikrotik’s doc, see here http://forum.mikrotik.com/t/multiwan-with-routeros/163698/1
If just check a WAN’s via “next hop method” is good enough … I’d stop there. While “recursive routing” method totally works, lots of way the initial setup can go wrong…especially when you have dynamic WAN address…