Se ti to zadání nějak postupně komplikuje a rozvíjí. :-)
Ale řeknemě, uvnitř používíš 192.168.0.0/16, kde 192.168.0.0/17 má jít přes linku A a 192.168.128.0/17 přes linku B. Kde linka A má IP 192.0.2.2/24 (brána A .1) a linka B je 198.51.100.2/24 (brána B .1).
/ip route
add distance=1 gateway=192.0.2.1 pref-src=192.0.2.2 check-gateway=ping
add distance=5 gateway=198.51.100.1 pref-src=198.51.100.2 check-gateway=ping
add distance=1 gateway=192.0.2.1 pref-src=192.0.2.2 routing-mark=uplinkA
add distance=5 gateway=198.51.100.1 pref-src=198.51.100.2 routing-mark=uplinkA
add distance=10 type=unreachable routing-mark=uplinkA
add distance=1 gateway=198.51.100.1 pref-src=198.51.100.2 routing-mark=uplinkB
add distance=5 gateway=192.0.2.1 pref-src=192.0.2.2 routing-mark=uplinkB
add distance=10 type=unreachable routing-mark=uplinkB
/ip route rule
add dst-address=192.168.0.0/16 table=main
add dst-address=192.0.2.0/24 table=main
add dst-address=198.51.100.0/24 table=main
add src-address=192.0.2.2/32 table=uplinkA action=lookup-only-in-table
add src-address=198.51.100.2/32 table=uplinkB action=lookup-only-in-table
add src-address=192.168.0.0/17 table=uplinkA action=lookup-only-in-table
add src-address=192.168.128.0/17 table=uplinkB action=lookup-only-in-table
Hlídá si to dostupnost brány pomocí pingu a při nedostupnosti zkouší použít druhou linku. Pokud je třeba hlídat dál (zda daný ISPík vidí třeba do NIXu), je možno použít rekurzivní routu (a pak jako brány použít třeba 8.8.8.8 a 8.8.4.4) nebo nějaké šaškárny s netwatch/skripty a povolování/zakazování rout.