Перейти к содержимому
Калькуляторы

mikrotik резервирование канала connection reset

делал резервирование по вот этой статье

немножко отредачил скрипт, в основном ошибки форматирования

вот что у меня получилось:

:local MainIf isp1
:local RsrvIf isp2
:local PingCount 1
:local PingTargets {8.8.8.8; 8.8.4.4}

:local MainIfInetOk false

:local RsrvIfInetOk false

:local MainPings 0

:local RsrvPings 0

foreach host in=$PingTargets do={

: local res [/ping $host count=$PingCount interface=$MainIf]

: set MainPings ($MainPings + $res)

: local res [/ping $host count=$PingCount interface=$RsrvIf]

: set RsrvPings ($RsrvPings + $res)

}

:set MainIfInetOk ($MainPings >= 1)

:set RsrvIfInetOk ($RsrvPings >= 1)

:local MainGWDistance [/ip route get [find comment=MainGW] distance]

:local RsrvGWDistance [/ip route get [find comment=RsrvGW] distance]

if ($MainIfInetOk && ($MainGWDistance >= $RsrvGWDistance)) do={

/ip route set [find comment=MainGW] distance=1

/ip route set [find comment=RsrvGW] distance=2

foreach i in=[/ip firewall connection find] do={/ip firewall connection remove $i}

/log info "switched to main internet connection"
}

if (!$MainIfInetOk && $RsrvIfInetOk && ($MainGWDistance = $RsrvGWDistance)) do={

/ip route set [find comment=MainGW] distance=2

/ip route set [find comment=RsrvGW] distance=1

foreach i in=[/ip firewall connection find] do={/ip firewall connection remove $i}
/log info "switched to reserve internet connection"
}

при отключении шнурка, инет переключается на резерв и обратно, как бы все работает. но есть один подводный камень, есть sip телефоны, 20 шт. так вот они не перерегистрируются на серваке sad.gif

опытным путем понял что телефоны не закрывают коннекты и ждут ответные пакеты со старого интерфейса (тот который я выдернул)

к примеру:

Screenshot_1.jpg

тоесть видно что телефон ждет ответ по не рабочему интерфейсу.

если же этот коннект принудительно грохнуть через winbox телефон мигом делает перерегистрацию на серваке.

вопрос, как через скрипт сбросить соединение?

P.S в скрипте ведь есть строка по сбросу

foreach i in=[/ip firewall connection find] do={/ip firewall connection remove $i}

или это что то не то?

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Гость
Ответить в тему...

×   Вставлено в виде отформатированного текста.   Вставить в виде обычного текста

  Разрешено не более 75 смайлов.

×   Ваша ссылка была автоматически встроена.   Отобразить как ссылку

×   Ваш предыдущий контент был восстановлен.   Очистить редактор

×   Вы не можете вставить изображения напрямую. Загрузите или вставьте изображения по ссылке.