...пусть "кучу телодвижений" по смене шлюза машина делает самостоятельно.
На каждом компе, кроме шлюзового:
1) Создай файл, например,
swapgw.cmd и скопируй туда этот код:
Код:
@echo off
set CON_NAME="Local Area Connection"
set CHK_IP=194.87.0.50
set GW1=192.168.1.1
set GW2=192.168.1.5
set TIMEOUT=100
for /f %%i in ('ping %CHK_IP% -n 1 -w %TIMEOUT% ^| find ^"out.^"') do goto :main
goto :eof
:main
for /f "tokens=1,2,3" %%i in ('netsh in ip sh ad %CON_NAME% ^| find ^"Gateway:^"') do call :swapgw %%k
goto :eof
:swapgw
if ##%1##==##%GW1%## (
netsh in ip set ad name=%CON_NAME% gateway=%GW2% gwmetric=0
) else (
netsh in ip set ad name=%CON_NAME% gateway=%GW1% gwmetric=0
)
2) поменяй в тексте
CON_NAME="название твоего сетевого подключения в кавычках" (возможно, что менять не придётся)
GW1=IP твоего основного шлюза
GW2=IP твоего резервного шлюза
3) в панели управления, в планировщике задач сделай запуск этого cmdшника в свернутом виде раз в минуту.
Всё.
Как это работает:
комп раз в минуту пробует пинговать
www.ru.
Если ему не удаётся - смотрит, что у него текущим шлюзом, и перескакивает на другой.
Т.е. не работает первый шлюз - перескочит на второй. Отвалится второй - вернется на первый.
Если есть "ложные срабатывания" - увеличь TIMEOUT.
P.S.: Если там стоит русская XP - надо, соответственно, поменять, что ищет find.