Скрипт переключения порта для PPPoE-клиента
Добавлено: 11 дек 2014, 15:01
Вобщем занялся резервированием интернета двумя линками от одного провайдера (правда в таком случае и резервированием это сложно назвать) с разных зданий.
В здании, где у нас "основное" подключение (по договору) частенько выключают свет. Провайдер допускает только одну работающую PPPoE-сессию, поэтому поставил себе задачу, чтобы при пропадании основного линка (имменно линка, так как провод идет напрямую) изменить порт для PPPoE-клиента и запустить сессию через резервный линк с другого здания.
Скрипты проверял - рабочие)
Тайм-аут поднятия PPPoE-клиента такой из-за того, что примерно 4 минуты провайдер считает сессию зависшей и не дает снова авторизоваться.
Два задания в планировщике - запуск скриптов с интервалом в 1 и 10 минут
Скрипты писал вообще впервые, прошу откомментировать и указать на ошибки/недочеты.
В здании, где у нас "основное" подключение (по договору) частенько выключают свет. Провайдер допускает только одну работающую PPPoE-сессию, поэтому поставил себе задачу, чтобы при пропадании основного линка (имменно линка, так как провод идет напрямую) изменить порт для PPPoE-клиента и запустить сессию через резервный линк с другого здания.
Скрипты проверял - рабочие)
Код: Выделить всё
:if ([/interface get sfp1 running]=true) do={:log info "Optic is running..."} else={
/interface pppoe-client disable pppoe-100mb
:delay 1
/interface pppoe-client set [find name=pppoe-100mb] interface=ether9
:delay 1
:log info "Optic is down..."
:delay 1
/system scheduler disable optic-to-copper
:delay 240
/interface pppoe-client enable pppoe-100mb
:delay 10
/tool e-mail send to="d****@mail.ru" subject="Optic is down!!!" body=" optic is down!!!"
:delay 1
/system scheduler enable copper-to-optic
}
Код: Выделить всё
:if ([/interface get sfp1 running]=true) do={
/system scheduler disable copper-to-optic
:delay 1
:log info "Optic is up!!!"
:delay 300
/interface pppoe-client disable pppoe-100mb
:delay 1
/interface pppoe-client set [find name=pppoe-100mb] interface=sfp1
:delay 1
/interface pppoe-client enable pppoe-100mb
:delay 10
/tool e-mail send to="d***@mail.ru" subject="Optic is up!!!" body=" optic is up!!!"
:delay 1
/system scheduler enable optic-to-copper
}
Тайм-аут поднятия PPPoE-клиента такой из-за того, что примерно 4 минуты провайдер считает сессию зависшей и не дает снова авторизоваться.
Два задания в планировщике - запуск скриптов с интервалом в 1 и 10 минут
Скрипты писал вообще впервые, прошу откомментировать и указать на ошибки/недочеты.