@Raain

Агрегация каналов wan на mikrotik, не суммируется скорость?

Доброго времени суток!

Несколько дней пытаюсь настроить следующую схему:

Есть 2 провайдера, с шириной канала по 100 мб/с, за роутером одна локальная сеть.
Пытаюсь решить задачу по суммированию/объединению скорости двух провайдеров, т.е. на выходе хочу получить скорость +\- 200 мб/с =)

Если я правильно понял, для этого подходит технология PCC, прочитал кучу мануалов + посты на различных форумах, однако, больше 100 мб/с никак не могу выжить =(

Настроено так:

/ip firewall mangle

add action=mark-connection chain=input comment=x-ISP1 in-interface=ether4 new-connection-mark=in-ISP1 passthrough=yes
add action=mark-routing chain=prerouting connection-mark=in-ISP1 new-routing-mark=ISP1 passthrough=yes
add action=mark-routing chain=output connection-mark=in-ISP1 new-routing-mark=ISP1 passthrough=yes
add action=mark-routing chain=output new-routing-mark=ISP1 passthrough=yes src-address=195.160.x.x
add action=mark-connection chain=input comment=x-ISP2 in-interface=ether7 new-connection-mark=in-ISP2 passthrough=yes
add action=mark-routing chain=prerouting connection-mark=in-ISP2 new-routing-mark=ISP2 passthrough=yes
add action=mark-routing chain=output connection-mark=in-ISP2 new-routing-mark=ISP2 passthrough=yes
add action=mark-routing chain=output new-routing-mark=ISP2 passthrough=yes src-address=89.109.x.x
add action=mark-connection chain=prerouting comment=PCC connection-state=new dst-address-type=!local new-connection-mark=ISP1-conn passthrough=yes \
per-connection-classifier=both-addresses-and-ports:3/0
add action=mark-connection chain=prerouting connection-state=new dst-address-type=!local new-connection-mark=ISP2-conn passthrough=yes \
per-connection-classifier=both-addresses-and-ports:3/1
add action=mark-connection chain=prerouting connection-state=new dst-address-type=!local new-connection-mark=ISP2-conn passthrough=yes \
per-connection-classifier=both-addresses-and-ports:3/2
add action=mark-routing chain=prerouting connection-mark=ISP1-conn in-interface=ether2 new-routing-mark=ISP1 passthrough=yes
add action=mark-routing chain=prerouting connection-mark=ISP2-conn in-interface=ether2 new-routing-mark=ISP2 passthrough=yes

/ip route
add comment=x distance=1 gateway=89.109.x.x routing-mark=ISP2
add comment=x distance=1 gateway=195.160.x.x routing-mark=ISP1
add check-gateway=ping distance=1 gateway=195.160.x.x
add check-gateway=ping distance=2 gateway=89.109.x.x

/ip route rule
add src-address=89.109.x.x/32 table=to-ISP2
add src-address=195.160.x.x/32 table=to-ISP1
add comment=Lan dst-address=192.168.0.0/24 table=main
add comment=x routing-mark=ISP1 table=to-ISP1
add comment=x routing-mark=ISP2 table=to-ISP2

Роутер доступен и откликается по 2-м внешним ip, запустить отдельный хост через нужного провайдера могу без проблем, например:

/ip firewall mangle
add action=mark-routing chain=prerouting comment=Test new-routing-mark=ISP1 passthrough=yes src-address=192.168.0.252

/ip firewall filter

на время тестирования все правила отключены

Поэтому у меня несколько вопросов к знающим людям:

1. В принципе такая тема по суммированию скорости каналов возможна? =) И правильно ли я выбрал вариант реализации?
2. Если да, то в какую сторону копать?
  • Вопрос задан
  • 247 просмотров
Пригласить эксперта
Ответы на вопрос 5
@Drno
Это невозможно впринципе. Провайдеры разные, маршруты у них до конечной точки(сайта) разные.

Можно или сделать резерв или балансировку принудительно. Метить пакеты с определенных ип адресов локалки, и далее отправлять их в нужный шлюз. Вторые ип адреса локалки - направить на шлюз другого провайдера
Ответ написан
@dagababaev
Такое было возможно до момента повсеместного перехода на https. Я настраивал двух провайдеров с 4G и прирост скорости был (не х2 конечно, но был), но это было давно и https сайты не работали при такой технологии, потому что у вас запрос прилетает все время с разного ip. Также точно не работал гугл – совсем и постоянная капча

PS овчинка выделки не стоит
Ответ написан
@nApoBo3
С nat без использования внешнего сервера с удвоенным каналом это невозможно.
Агрегация каналов в данном случае корректно будет работать для нескольких клиентов, т.е. суммарный канал у вас агрегированный, но для каждого клиента максимальная скорость в общем случае это один канал. Для отдельных случаев скорость можно и увеличить, но это не тривиальная задача применимая не для всех протоколов.
Ответ написан
@dronmaxman
VoIP Administrator
> прочитал кучу мануалов + посты на различных форумах, однако, больше 100 мб/с никак не могу выжить

Точно прочитал? Судя по конфигу, ты просто скопировал без понимания как это работает.


add action=mark-connection chain=prerouting comment=PCC connection-state=new dst-address-type=!local new-connection-mark=ISP1-conn passthrough=yes \
per-connection-classifier=both-addresses-and-ports:3/0
add action=mark-connection chain=prerouting connection-state=new dst-address-type=!local new-connection-mark=ISP2-conn passthrough=yes \
per-connection-classifier=both-addresses-and-ports:3/1
add action=mark-connection chain=prerouting connection-state=new dst-address-type=!local new-connection-mark=ISP2-conn passthrough=yes \
per-connection-classifier=both-addresses-and-ports:3/2

Объясни мне почему у тебя три правила, когда провайдеров 2? В результате данной настройки микрот загружает одного из провайдеров в 2 раза больше.

На видео спикер четко говорит, одно соединение через одного провайдера.
В классификаторе, ты указываешь, на основании чего балансировать трафик.
В данном примере sourceIP:PORT - destIP:PORT, если при передачи данных у тебя не меняется ничего из этих параметров, то соединение будет проходить только через одного провайдера.

Для балансировки трафика и утилизации двух каналов и сервер и клиент должны поддерживать многопоточность с использование разных портов.
Ответ написан
Maxlinus
@Maxlinus
PCC - это балансировка между каналами. в видео выше на 23:32 и 29:25, он это и объясняет
Ответ написан
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы