Автоматическое переключение на резервный канал
В каждом офисе рано или поздно задумываются об использовании резервного канала интернет. Многие делают это по разному, кто то тянет второй провод, кто то использует беспроводные технологии. Но суть в том, что резерв нужен!
В моем случае резерв построен на YOTA. Соответственно свисток подключен просто в роутер и когда пропадет проводной интернет происходит переключение на YOTA. Но все так хорошо обстоит только в “буклетах”, а на деле переключение происходит следующим образом – вытаскиваем провода из роутера и мы на YOTA. Так же происходит и обратное переподключение.
Решить проблему можно на mikrotik, но это понесет дополнительные затраты. А нам нужно что бы как обычно это было бесплатно.
Решение нашлось простое: скрипт, пинг, переключение. Для начала подключаем наше оборудования в обход роутера к проводу и настраиваем сеть. Далее переходим к настройке роутера, необходимо что бы YOTA работала и раздавала через WIFI инет (тут нам помогает роутер). И так у нас есть две сети: провод и беспороводная сеть.
На компьютере настраиваем приоритет для сетей, WIFI должен быть на втором месте! Настраивается через панель управления. Заходим в сетевые подключения (где отображаются наши адаптеры) жмем кнопку ALT, появляется меню (Дополнительно – Дополнительные настройки).
Ну а теперь дело скрипта (скрипт честно подрезал на одном форуме, решений в интернете много, но это мне понравилось больше):
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 |
@set @x=0; /* @echo off SetLocal EnableDelayedExpansion ver |>NUL find "6." && if "%1" neq "Admin" ( cscript.exe //nologo //e:jscript "%~f0" Exit ) :begin set Try=0 :Counter ping -n 1 8.8.8.8 |>nul find /i "TTL=" && ( >NUL ping -n 31 127.1 goto begin ) || ( set /A Try+=1 if !Try!==4 ( call :reconnect goto begin ) >NUL ping -n 4 127.1 goto Counter ) :reconnect netsh interface set interface name="Подключение по локальной сети" admin=DISABLED netsh interface set interface name="Беспроводное сетевое подключение" admin=ENABLED exit /B */new ActiveXObject('Shell.Application').ShellExecute (WScript.ScriptFullName,'Admin','','runas',1); |
В скрипте только необходимо правильно указать название сетевых адаптеров и главное не забыть, что кодировка OEM 866 должна быть в файлике. Ставим скрипт в планировщик и запускаем на выполнение, скрипт будет постоянно пинговать 8.8.8.8 в случае отсутствия пинга (4 пинга) будет отключен проводной адаптер и будет активен WIFI. К сожалению обратно придется переподключаться только руками.