First off, I followed this example: http://wiki.mikrotik.com/wiki/Two_gateways_failover_with_load_balancing
Works perfectly. Love it, THANK YOU.
However, I am having 1 problem. In this example, and basically every example that I have found, it assumes that you have static IP addresses on your external interfaces. That is not the case in my situation. I have two dynamic IP addresses. The problem comes when I face these lines:
/ ip route
add dst-address=0.0.0.0/0 gateway=10.111.0.1 scope=255 target-scope=10 routing-mark=odd check-gateway=ping
add dst-address=0.0.0.0/0 gateway=10.112.0.1 scope=255 target-scope=10 routing-mark=even check-gateway=ping
add dst-address=0.0.0.0/0 gateway=10.112.0.1 scope=255 target-scope=10
add dst-address=0.0.0.0/0 gateway=10.111.0.1 scope=255 target-scope=10 distance=2
Now technically what I did was I went into ‘/ ip dhcp-client’ and turned off Add default route, then assigned them using the above, which is fine and dandy now, but what happens when the router reboots or the DHCP lease expires and it renews a new address that breaks that route statement.
The question, therefore, is: Is there a way to add a dhcp-client and add in “routing-mark”, “check-gateway”, and “distance” settings, OR. is there a way to script something that checks the default route of each dhcp-client, and update the “/ ip route” statements?