Переключение на второй канал интернета, при больших потерях.

Обсуждение оборудования и его настройки
alexanderx10
Сообщения: 52
Зарегистрирован: 23 дек 2013, 14:06

У меня MikroTik RB2011UAS-2HnD-IN. К которому я хочу подключить два канала интернета.

Тех задача такая:

1. Сделать автоматичекое переключение с первого провайдера на второго при обрыве связи, и автоматичекое переключение обратно.
2. Сделать автоматичекое переключение с первого провайдера на второго при появление потерь пакетов. К примеру в течении 1 минуты, при пинге на ya.ru потери составили 10 процентов от отправленых пакетов, и автоматичекое переключение обратно.
3. Сделать автоматичекое переключение с первого провайдера на второго при появление больших задержке. К примеру в течении 1 минуты, при пинге на ya.ru задержки составили 800 - 2000 мс, и автоматичекое переключение обратно.

С микротиком, я познакомился недавно. Первый пункт я загуглю и настрою, а со вторым пунктом есть сложности, так как инфы по настройке не нашел. Ну за третий пункт я вообже молчу )))). Для меня очень критичен второй пункт. За помощь буду благодарен.


vqd
Модератор
Сообщения: 3605
Зарегистрирован: 26 сен 2013, 14:20
Откуда: НСК
Контактная информация:

Скрипт нужен. Поищите тут. Были уже готовые. Коэффициент подправите и будет работать


Есть интересная задача и бюджет? http://mikrotik.site
Аватара пользователя
podarok66
Модератор
Сообщения: 4355
Зарегистрирован: 11 фев 2012, 18:49
Откуда: МО

По первому и второму вот Вам ссылочка
Там правда всё рассчитано на переключение при потерях более 1/3 пакетов. Ну да перепишете, если нужно.
По третьему, о больших таймингах не думал как-то, еще не представляю, как их отслеживать.


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

podarok66 писал(а):По первому и второму вот Вам ссылочка
Там правда всё рассчитано на переключение при потерях более 1/3 пакетов. Ну да перепишете, если нужно.
По третьему, о больших таймингах не думал как-то, еще не представляю, как их отслеживать.



И так мне кажется я нашел решение третьего вопроса

:local PingCount 3
:global MainIf SmartIntel
#google dns
:local PingTarget2 "мой сервер условно"
:local PingTarget3 8.8.8.8
:local PingResult3 [/ping $PingTarget3 count=$PingCount interface=$MainIf interval=20ms]
:local PingResult2 [/ping $PingTarget2 count=$PingCount interface=$MainIf interval=20ms]
log info "packet google $PingResult3 "
log info "packet server $PingResult2 "
log info "Switch to main internet connection"


и так я знаю, что до гугля у меня 30 мелесекунд задержка
а до сервака 17

в итоге я полуил ответ

packet google 0
packet server 2

что следует что пинги не дошли до гугля т.к задержки больше, чем положено

из этого можно выбрать interval=70ms что будет означать явно задержу..

навеяла статья http://www.mikrotik.com/testdocs/ros/2.9/root/ping.php

Example of ping command

An example of Ping command:

/pi 159.148.95.16 count=5 interval=500ms
159.148.95.16 64 byte ping: ttl=59 time=21 ms
159.148.95.16 ping timeout
159.148.95.16 ping timeout
159.148.95.16 ping timeout
159.148.95.16 64 byte ping: ttl=59 time=16 ms
5 packets transmitted, 2 packets received, 60% packet loss
round-trip min/avg/max = 16/18.5/21 ms


vqd
Модератор
Сообщения: 3605
Зарегистрирован: 26 сен 2013, 14:20
Откуда: НСК
Контактная информация:

Можно и так
/tool ping-speed 8.8.8.8 do={:if ($"current" < 200000) do= {/log info "Ahtynge!!!"} }


Есть интересная задача и бюджет? http://mikrotik.site
Аватара пользователя
podarok66
Модератор
Сообщения: 4355
Зарегистрирован: 11 фев 2012, 18:49
Откуда: МО

vqd писал(а):Можно и так
/tool ping-speed 8.8.8.8 do={:if ($"current" < 200000) do= {/log info "Ahtynge!!!"} }


В ответ получаю в терминале такую картину:

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

 /tool ping-speed 8.8.8.8 do={:if ($"current" < 
200000) do= {/log info "Ahtynge!!!"} }
  current: 13.1Mbps
  average: 8.5Mbps

Это что получается, замеры скорости на порту?


Мануалы изучил и нигде не ошибся? Фаервол отключил? Очереди погасил? Витая пара проверена? ... Тогда Netinstal'ом железку прошей и настрой ее заново. Что, все равно не фурычит? Тогда к нам. Если не подскажем, хоть посочувствуем...
Аватара пользователя
podarok66
Модератор
Сообщения: 4355
Зарегистрирован: 11 фев 2012, 18:49
Откуда: МО

To wolf_ktl:
Вообще-то всё верно получается. Мы выставляем максимальный порог, после которого железка перестаёт ждать ответа на запрос и посылает следующий. То есть и ответ на третий вопрос можно включить в тот же скрипт, просто добавив параметр interval с максимально допустимым значением пинга. Превышение времени ответа ведет в срабатыванию условия и запуску переключения на вторую линию.
Спасибо за идею, надо бы попробовать. Но у меня нет двух подключенных линий.
Поэтому предлагаю этим заняться ТС. Тема практически разжевана, осталось поправить скрипт под себя, протестировать и обнародовать результат. Желательно готовый скрипт показать народу, если не жалко :hi_hi_hi:


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

Тут готовых решений как минимум пара есть


Есть интересная задача и бюджет? http://mikrotik.site
alexanderx10
Сообщения: 52
Зарегистрирован: 23 дек 2013, 14:06

Большое спасибо что откликнулись на проблему. Эксперемент буду проводить в субботу. Я заменю свой Draytek Vigor 2920, на микротик. Менять буду потому что микротик более гибко настраиваемый ))))

Второй пункт мне много крови попил. Место подключения находится далеко, и когда начинаются проблемы с инетом (потери), работать просто не возможно. Приходится просить юзеров выдергивать один канал интернета, чтобы нормально завелся второй.


wolf_ktl
Сообщения: 417
Зарегистрирован: 25 июн 2013, 18:12

vqd писал(а):Можно и так
/tool ping-speed 8.8.8.8 do={:if ($"current" < 200000) do= {/log info "Ahtynge!!!"} }



Да он покажет реальную скорость.. но пинг может быть 8 мс а скорость 8 Мбит/с а может быть 30 мс а скорость 60Мбит/с

)))


Ответить