Как определить, что один шлюз отвалился от интернета и перейти на другой программно (Windows)?
Всё решается простыми метриками маршрутов… На провод поменьше ставится, на GPRS побольше и всё работает. Больше ни каких телодвижений и скриптов не требуется.
Попробуйте прописать одинаковые метрики на Ethernet и на GPRS. Будет стабильно работать, если компьютер не шарит интернет для других компьютеров локальной сети, иначе Windows автоматически перебивает метрики. Команда route print покажет реальные метрики (в диалогах они не соответсвуют действительности).

Нужна будет программка, можно скооперироваться — самому нужен самописный «балансировщик», т.к. платить за Kerio не охота, а я как раз под Windows пишу.