Как сбрасывать подвисшие connections?

Раздел для тех, кто начинает знакомиться с MikroTik
Правила форума
Как правильно оформить вопрос.
Прежде чем начать настройку роутера, представьте, как это работает. Попробуйте почитать статьи об устройстве интернет-сетей. Убедитесь, что всё, что Вы задумали выполнимо вообще и на данном оборудовании в частности.
Не нужно изначально строить Наполеоновских планов. Попробуйте настроить простейшую конфигурацию, а усложнения добавлять в случае успеха постепенно.
Пожалуйста, не игнорируйте правила русского языка. Отсутствие знаков препинания и неграмотность автора топика для многих гуру достаточный повод проигнорировать топик вообще.

1. Назовите технологию подключения (динамический DHCP, L2TP, PPTP или что-то иное)
2. Изучите темку "Действия до настройки роутера".
viewtopic.php?f=15&t=2083
3. Настройте согласно выбранного Вами мануала
4. Дочитайте мануал до конца и без пропусков, в 70% случаев люди просто не до конца читают статью и пропускают важные моменты.
5. Если не получается, в Winbox открываем терминал и вбиваем там /export hide-sensitive. Результат в топик под кат, интимные подробности типа личных IP изменить на другие, пароль забить звездочками.
6. Нарисуйте Вашу сеть, рисунок (схему) сюда. На словах может быть одно, в действительности другое.
Uttar
Сообщения: 0
Зарегистрирован: 25 июн 2013, 06:10

15 июл 2013, 14:46

Добрый день.
Есть микротик, 2 провайдера, за микротиком астериск.
По умолчанию работает через первого провайдера. Проблема в следующем - первый провайдер отваливается, весь трафик должен идти через второго. Всё бы хорошо, новые соединения устанавливаются через второй провайдер, но в firewall-connections висят старые коннекты через первого провайдера с таймаутом до 15 минут. И соответственно пока таймаут не закончится, либо пока их не убить ручками, через второго провайдера соединение не устанавливается и телефония не работает. Пробовал отключать\включать интерфейс, к которому подключен сервер с астериском - не помогает, всё равно соединения висят.
И команд, которые бы сбрасывали коннекты не нашёл. Так бы можно было скрипт сделать.


iSupport
Сообщения: 2360
Зарегистрирован: 06 фев 2011, 20:44

15 июл 2013, 16:56

ip firewall connection tracking set enabled=no
ip firewall connection tracking set enabled=yes

то есть выключить и включить коннтрак


Граждане, сколько раз просил =) чем понятнее и точнее сформулирован вопрос - тем понятнее и точнее будет на него ответ.
Я просматриваю ВСЕ темы форума и стараюсь помочь в каждой из них
Поэтому, НА ЛС отвечаю в последнюю очередь
chek_
Сообщения: 12
Зарегистрирован: 18 июн 2013, 13:06

20 авг 2013, 18:34

всем привет. у меня точно такая же проблема с телефонией. подскажите, что данные команды делают и как может выглядеть скрипт по сбросу соединений??


seven
Сообщения: 14
Зарегистрирован: 13 авг 2013, 22:56

20 авг 2013, 18:52

Код: Выделить всё

:foreach i in=[/ip firewall connection find dst-address~":5060" protocol~"udp"] do={ /ip firewall connection remove $i }


viewtopic.php?f=15&t=4075


chek_
Сообщения: 12
Зарегистрирован: 18 июн 2013, 13:06

20 авг 2013, 18:57

да, я видел это сообщение, но автор через планировщик каждые 5 мин разрывает соединение, мне же не особо хочется, что б каждые 300 секунд телефоны по новой регистрировались на сервере. хотелось бы скрипт, который проверял инет на первом провайдере и делал дроп, после чего. если провайдер снова заработал, делал еще один дроп. либо научить как-нибудь микротик разрывать соединения, если канал по которому он их поднимал, не работает.


seven
Сообщения: 14
Зарегистрирован: 13 авг 2013, 22:56

20 авг 2013, 19:02

Тогда я тоже присоединюсь к поиску такого скрипта, т.к. 2 дня назад сделал именно так, как там написано. Тоже не нравится, но пока работает...


Аватара пользователя
podarok66
Модератор
Сообщения: 4020
Зарегистрирован: 11 фев 2012, 18:49
Откуда: МО

20 авг 2013, 22:39

Что там искать? Сели, вечерок почитали Вики и написали скриптик. А разыскивать можно достаточно долго, особенно если искать в одной теме на форуме. В готовых скриптах на форуме есть код, пингующий заданные адреса. Адаптируйте его под свои нужды, условия выполнения итоговых команд пропишите свои и пользуйтесь


Мануалы изучил и нигде не ошибся? Фаервол отключил? Очереди погасил? Витая пара проверена? ... Тогда Netinstal'ом железку прошей и настрой ее заново. Что, все равно не фурычит? Тогда к нам. Если не подскажем, хоть посочувствуем...
Илья Никаноров
Сообщения: 4
Зарегистрирован: 15 авг 2013, 18:26

21 авг 2013, 15:46

Так если у вас 2 провайдера, то просто в скрипт переключающий ISP добавить строчку и все. Соединения будут сброшены.


seven
Сообщения: 14
Зарегистрирован: 13 авг 2013, 22:56

21 авг 2013, 16:51

Это хорошо, но проблема в том, что скрипта нет)
Переключение реализовано через Distance в роутах.
Как мне видится ее решение: нужно все таки писать скрипт, который будет пинговать шлюз первого провайдера и если пинга нет - выполнять эту строку.
Или же все таки придется переключение на другого провайдера переложить на этот скрипт.


Илья Никаноров
Сообщения: 4
Зарегистрирован: 15 авг 2013, 18:26

21 авг 2013, 17:24

seven писал(а):Это хорошо, но проблема в том, что скрипта нет)
Переключение реализовано через Distance в роутах.
Как мне видится ее решение: нужно все таки писать скрипт, который будет пинговать шлюз первого провайдера и если пинга нет - выполнять эту строку.
Или же все таки придется переключение на другого провайдера переложить на этот скрипт.


Что то типа такого может быть, не уверен, что будет работать. Не знаю как реализовано через distance. Вместо ya.ru какой нибудь шлюз пинговать. Надо попробовать.

:local pingcount 5;
:local hostping ya.ru;
:local pingresultA [/ping $hostping count=$pingcount];
:if ($pingresultA > 0) do={:put "connect"} else= { :foreach i in=[/ip firewall connection find dst-address~":5060" protocol~"udp"] do={ /ip firewall connection remove $i } }


Ответить