URL: https://www.opennet.me/cgi-bin/openforum/vsluhboard.cgi
Форум: vsluhforumID1
Нить номер: 88036
[ Назад ]

Исходное сообщение
"Занимательная маршрутизация"

Отправлено xwrs , 02-Фев-10 13:09 
Добрый день.
Я уже несколько дней долбусь с проблемой балансировки нагрузки на каналы.
Linux advanced routing & traffic control, google.com и много людей на форумах говорит что это возможно, но будут проблемы с ICQ, онлайн играми и т.п. Так и есть. Страницы нужно обновлять по два раза, пинги пропадают...Черт с ним уже; пусть хотя-бы пользователи локалки будут равномерно на разных каналах. Я уже не говорю о их траффике.

Как завернуть одного пользователя на один канал, другого на другой, .... n-ного на n-ный и так далее и в цикле?:) Или это тоже не метод?

Помогите пожалуйста


Содержание

Сообщения в этом обсуждении
"Занимательная маршрутизация"
Отправлено Andrey Mitrofanov , 02-Фев-10 13:59 
>Я уже несколько дней долбусь с проблемой балансировки нагрузки на каналы.
>Linux advanced routing & traffic control, google.com и много людей на форумах

Ещё. Много. Тут. http:/cgi-bin/opennet/ks.cgi?mask=balance


"Занимательная маршрутизация"
Отправлено reader , 02-Фев-10 14:02 
>[оверквотинг удален]
>говорит что это возможно, но будут проблемы с ICQ, онлайн играми
>и т.п. Так и есть. Страницы нужно обновлять по два раза,
>пинги пропадают...Черт с ним уже; пусть хотя-бы пользователи локалки будут равномерно
>на разных каналах. Я уже не говорю о их траффике.
>
>Как завернуть одного пользователя на один канал, другого на другой, .... n-ного
>на n-ный и так далее и в цикле?:) Или это тоже
>не метод?
>
>Помогите пожалуйста

ну так и пихайте одного пользователя в первую таблицу, другого в другую, ...


"Занимательная маршрутизация"
Отправлено xwrs , 02-Фев-10 14:27 
>[оверквотинг удален]
>>на разных каналах. Я уже не говорю о их траффике.
>>
>>Как завернуть одного пользователя на один канал, другого на другой, .... n-ного
>>на n-ный и так далее и в цикле?:) Или это тоже
>>не метод?
>>
>>Помогите пожалуйста
>
>ну так и пихайте одного пользователя в первую таблицу, другого в другую,
>...

каким образом?


"Занимательная маршрутизация"
Отправлено reader , 02-Фев-10 14:29 
>[оверквотинг удален]
>>>Как завернуть одного пользователя на один канал, другого на другой, .... n-ного
>>>на n-ный и так далее и в цикле?:) Или это тоже
>>>не метод?
>>>
>>>Помогите пожалуйста
>>
>>ну так и пихайте одного пользователя в первую таблицу, другого в другую,
>>...
>
>каким образом?

http://www.opennet.me/tips/info/2009.shtml


"Занимательная маршрутизация"
Отправлено xwrs , 02-Фев-10 14:45 
Спасибо. Я читал, но проглядел. Но не будет ли скорость жутко падать?

"Занимательная маршрутизация"
Отправлено McLeod095 , 02-Фев-10 14:42 
>[оверквотинг удален]
>говорит что это возможно, но будут проблемы с ICQ, онлайн играми
>и т.п. Так и есть. Страницы нужно обновлять по два раза,
>пинги пропадают...Черт с ним уже; пусть хотя-бы пользователи локалки будут равномерно
>на разных каналах. Я уже не говорю о их траффике.
>
>Как завернуть одного пользователя на один канал, другого на другой, .... n-ного
>на n-ный и так далее и в цикле?:) Или это тоже
>не метод?
>
>Помогите пожалуйста

Если вы используете проксю то может поможет вот эта статься
http://www.opennet.me/base/net/squid_ipvs_keepalived.txt.html
Во всяком случае стоит прочитать.


"Занимательная маршрутизация"
Отправлено xwrs , 02-Фев-10 15:57 
Спасибо за высказанные предложения, но это не совсем то.
Я настроил балансировку по lartc.Написал скрипты для отслеживания живости коннекта на разных шлюзах. Данный метод имеет следующие недостатки (!!проверено!!):
Необходимо по 2 раза нажимать "обновить" в браузере для нормальной загрузки сайта.
Суммарная скорость падает хоть каналы и  не забиты.
Что работает отлично, так это торренты, там просто создается куча соединений и они идут через разные маршруты. Тогда вообще красота.
Мне интересно как каждое соединение (или юзера) поочередно пустить на разные каналы, чтобы не было разрывов SYN/ACK, в ICQ и т.п.
Я пробую бондинг, но просто не понимаю как тогда настроить маршрутизацию. Если будет один интерфейс (допустим bond0) который обьединит мои ppp0,1,2,..,n(кстати одного провайдера), то что будет шлюзом?

"Занимательная маршрутизация"
Отправлено Koba LTD , 02-Фев-10 17:54 
>[оверквотинг удален]
>Необходимо по 2 раза нажимать "обновить" в браузере для нормальной загрузки сайта.
>
>Суммарная скорость падает хоть каналы и  не забиты.
>Что работает отлично, так это торренты, там просто создается куча соединений и
>они идут через разные маршруты. Тогда вообще красота.
>Мне интересно как каждое соединение (или юзера) поочередно пустить на разные каналы,
>чтобы не было разрывов SYN/ACK, в ICQ и т.п.
>Я пробую блондин, но просто не понимаю как тогда настроить маршрутизацию. Если
>будет один интерфейс (допустим bond0) который обьединит мои ppp0,1,2,..,n(кстати одного провайдера),
>то что будет шлюзом?

Только "бондинг" (а правельней будет ieee 802.3ad link aggregation) должен настроить и пров у себя - иначе ничего не выйдет. А ни как - линк агригатион - это технология объединения 2 и более физических/логических каналов в один, для увеличения пропускной емкости и отказоустойчивости. Вы просто с провом сольете 2 канала в один, на который повеситься одна пара ip/gw и никаких замутов с маршрутизацие. Если не сикрет, что за пров, который согласен в месте с вами настроить такой "геморой"? - просто "домушные" провы про это и слушать не хотят, а для "юр лиц" - ppp0 это на мой взглят - "извращение". И всегда есть выход (через железки) подать просто эзернет.


"Занимательная маршрутизация"
Отправлено xwrs , 02-Фев-10 18:30 
Хорошо. Тогда как, например, перенаправить траффик определенных портов на отдельные шлюзы? (Торренты сюда, ICQ туда, HTTP снова сюда)

"Занимательная маршрутизация"
Отправлено reader , 02-Фев-10 21:00 
>Хорошо. Тогда как, например, перенаправить траффик определенных портов на отдельные шлюзы? (Торренты
>сюда, ICQ туда, HTTP снова сюда)

пакетным фильтром на входе маркируете пакеты, вспоминаете про таблицы и по меткам распихиваете по ним


"Занимательная маршрутизация"
Отправлено Andrey , 02-Фев-10 21:02 
>[оверквотинг удален]
> Только "бондинг" (а правельней будет ieee 802.3ad link aggregation) должен настроить
>и пров у себя - иначе ничего не выйдет. А ни
>как - линк агригатион - это технология объединения 2 и более
>физических/логических каналов в один, для увеличения пропускной емкости и отказоустойчивости. Вы
>просто с провом сольете 2 канала в один, на который повеситься
>одна пара ip/gw и никаких замутов с маршрутизацие. Если не сикрет,
>что за пров, который согласен в месте с вами настроить такой
>"геморой"? - просто "домушные" провы про это и слушать не хотят,
>а для "юр лиц" - ppp0 это на мой взглят -
>"извращение". И всегда есть выход (через железки) подать просто эзернет.

ааа через железки это как? plz подробнее


"Занимательная маршрутизация"
Отправлено xwrs , 03-Фев-10 13:35 
Я пробую делать
iptables -t mangle -A PREROUTING -m ipp2p --ipp2p -j MARK --set-mark 111

а потом

ip rule add fwmark 111 table $TBL_2
ip route add default via $P2 dev $IF2 table $TBL_2

P2 - один из шлюзов
IF2 - внешний интерфейс, для одного из каналов

торренты либо не качаются, либо качаются на маленькой скорости и через обеих провайдеров
скрипт:

ip route add $P1_NET dev $IF1 src $IP1 table $TBL1
ip route add default via $P1 table $TBL1
ip route add $P2_NET dev $IF2 src $IP2 table $TBL2
ip route add default via $P2 table $TBL2
ip route add $P1_NET dev $IF1 src $IP1
ip route add $P2_NET dev $IF2 src $IP2
ip route add default via $P1
#<p2p>
#ip rule add fwmark 111 table $TBL_2
#ip route add default via $P2 dev $IF2 table $TBL_2
#</p2p>
ip rule add from $IP1 table $TBL1
ip rule add from $IP2 table $TBL2
ip route add $P0_NET   dev $IF0 table $TBL1
ip route add $P2_NET   dev $IF2 table $TBL1
ip route add 127.0.0.0/8 dev lo  table $TBL1
ip route add $P0_NET   dev $IF0 table $TBL2
ip route add $P1_NET   dev $IF1 table $TBL2
ip route add 127.0.0.0/8 dev lo  table $TBL2