Пропадает интерфейс LAN приходится выкл/вкл
Windows2003server (хочу поехать в отпуск - небыл 2года, а тут такое началось)
Очень странная проблема раз в день приходится программно отключать и заново включать интерфейс LAN (так как сеть реально пропадает)
|
решил проблему скриптом, который пингует сначала один принтер, если его нет, второй принтер, если его тоже нет, вайфай точку(подлюченную по лан), и если и ее нету в сети - то выключить-включить LAN
Код:
@echo off
set ip1="192.168.6.38"
set ip2="192.168.6.30"
set ip3="192.168.6.222"
:start
ping %ip1% | find /i "TTL="
if %errorlevel% == 1 goto add
echo %ip1% + allright
goto start
exit
:add
ping %ip2% | find /i "TTL="
if %errorlevel% == 1 goto add2
echo %ip2% + allright
goto start
:add2
ping %ip3% | find /i "TTL="
if %errorlevel% == 1 goto re
echo %ip3% + allright
goto start
:re
netsh interface set interface "LAN" DISABLE
netsh interface set interface "LAN" ENABLE
echo %date% %time% >> d:\log\relan2.txt
echo "RELOAD LAN==========================================="
goto start
exit
|
как сильно идет нагрузка на сеть в таком скрипте, можно ли его модернизировать?
|
avolkov2009 |
23-08-2009 20:57 1201405 |
Я несколько модернизировал. Сделал так, чтобы при "непрохождени" пинга интерфейс отключался (netsh interface set interface "LAN" DISABLE), потом 3 секунды сна (нашел утилитку sleep, вроде портирована из UNIX), потом - включение (netsh interface set interface "LAN" ENABLE). Скриптик просто заставил "крутиться" в планировщике каждые 10 минут.
Если кому интересно, могу завтра выложить текст скрипта.
|
поясните смысл 3 секунд после разрыва LAN?
|
avolkov2009 |
24-08-2009 11:35 1201748 |
Цитата:
Цитата Djedai
поясните смысл 3 секунд после разрыва LAN? »
|
Не знаю, на всякий, как говорится, случай... Может оно и не нужно?
Вот полный текст скрипта:
Код:
@echo off
set ext_loc=www.ya.ru
set int_loc=<то_чё_пингую_во_внутренней_сети>
set ext_if=ByFly
set int_if=Local
echo Testing* %ext_if%...
ping %ext_loc% | find /i "TTL="
if %errorlevel%==1 ( echo Resetting* %ext_if%...
netsh interface set interface "%ext_if%" disable
sleep 3s
netsh interface set interface "%ext_if%" enable )
echo Done.
echo.
echo Testing* %int_if%...
ping %int_loc% | find /i "TTL="
if %errorlevel%==1 ( echo Resetting* %int_if%...
netsh interface set interface "%int_if%" disable
sleep 3s
netsh interface set interface "%int_if%" enable )
echo Done.
echo.
set ext_loc=
set int_loc=
set ext_if=
set int_if=
|
Время: 01:14.
© OSzone.net 2001-