Страница 1 из 1

Как объеденить каналы двух провайдеров в один

Добавлено: 2016-08-17 18:09:12
ShadowAGT
Добрый день всем.

Удается только найти варианты по балансировке, но хотелось бы не того.

У меня в офис заходит два канала от разных провайдеров, один 100мбит, другой 150мбит. Есть у меня сервак в интернете с двумя портами по 1Гбит. Оба на Фре 10й.

Хотелось бы реализовать каким-то образом механизм, чтоб к этому серваку подрубиться как-то офисным серваком, обоими каналами сразу, эти два подключения на офисном объеденить в одно (типа бриджа), и так же как-то эти два подключения на сервере в нете тожк свести в одно. Таким образом как бы создать поверх двух физических впн соединений, одно логическое, получив суммарную скорость линка с сервером в интернет, 150 мбит. Ну а дальше соответственно по логике использовать второй интерфейс на сервере как выходной канал... Ну а юзеров из офиса запустить соответственно на выход в инет через логический интерфейс 150мбит.

В принципе по логике, должна работать схема типа балансировки на офисном шлюзе, один фиг они потом получат выходной айпишник сервера из инета и проблем никаких возникнуть не должно. Но вот гоняю мысли как (с помощью какого софта) настроить это все и сделать это наиболее красивым и наименее 'грузящим' шлюзы способом (в плане нагрузки на проц)...

Кто что посоветует?

Как объеденить каналы двух провайдеров в один

Добавлено: 2016-08-18 21:48:27
Amadeus
Если совсем в простом варианте, то вот
http://www.ignix.ru/public/agregatsiya- ... ing#step-2

С учётом современных реалий OC

Как объеденить каналы двух провайдеров в один

Добавлено: 2016-08-19 17:53:56
lap
Amadeus писал(а): Если совсем в простом варианте, то вот
http://www.ignix.ru/public/agregatsiya- ... ing#step-2
я так понял там стояла задача сделать из двух сетевух по 100мег один канал на 200. такая агрегация каналов предполагает что с той стороны стоит устройство которе в теме происходящего и адекватно это воспринимает. А у ТС стоит задача загрузить два канала от разных провайдеров. Можно попробовать отроутить половину интернета в один канал, половину в другой (возможно придется дробить на более мелкие части и распихивать их в разные каналы) . также потребуется проверка работоспособности канала и перекидывание в случае чего трафика в оставшийся живой

Как объеденить каналы двух провайдеров в один

Добавлено: 2016-08-22 10:47:25
Гост
При наличии внешнего сервера - MPD (net/mpd5).
Source routing в любом случае потребуется.

Как объеденить каналы двух провайдеров в один

Добавлено: 2016-08-25 16:05:18
ShadowAGT
lap писал(а):
Amadeus писал(а): Если совсем в простом варианте, то вот
http://www.ignix.ru/public/agregatsiya- ... ing#step-2
я так понял там стояла задача сделать из двух сетевух по 100мег один канал на 200. такая агрегация каналов предполагает что с той стороны стоит устройство которе в теме происходящего и адекватно это воспринимает. А у ТС стоит задача загрузить два канала от разных провайдеров. Можно попробовать отроутить половину интернета в один канал, половину в другой (возможно придется дробить на более мелкие части и распихивать их в разные каналы) . также потребуется проверка работоспособности канала и перекидывание в случае чего трафика в оставшийся живой
Гост писал(а):При наличии внешнего сервера - MPD (net/mpd5).
Source routing в любом случае потребуется.
Ребят, спасибо за советы. Вы правильно поняли мою мысль. Сейчас задумался о проверке работоспособности каналов до сервака в интернете по обоим каналам... Надо покумекать как это сделать...

Пока ознакомившись с найденным в тырнете, пришел к такой схеме... Беру openVPN (или все же лучше mpd? Если да, то чем?), поднимаю его на сервере в инете и на офисном шлюзе. Поднимаю интерфейсы tap0 и tap1 по разным каналам. Ip адресов на серве несколько, поэтому проблем кинуть каждый tap через отдельный канал нет. На офисном шлюзе с помошью фаера делаю source routing (думаю использовать ipfw + kernel nat 2 таблицы, дополнить правилом probe 0,3 например, по которому 30 процентов трафа отфутболится на меньший канал, ну соответственно я так понимаю setfib понадобится так же) через эти tap интерфейсы, а серв в инете выступает так же в качестве шлюза, берет приходящее на tap-ы и через ipfw kernel nat выпускает в интернет из-под своего адреса... Как-то так. Сначала думал использовать pf nat с параметром round robin, но он похоже только равномерно 50/50 раскидывать умеет, а у меня каналы не равной пропускной способности...

Имхо должно получиться...

Спасибо всем кто подсказывает...!

Как объеденить каналы двух провайдеров в один

Добавлено: 2016-08-26 10:32:36
Гост
Пока ознакомившись с найденным в тырнете, пришел к такой схеме... Беру openVPN (или все же лучше mpd? Если да, то чем?), поднимаю его на сервере в инете и на офисном шлюзе. Поднимаю интерфейсы tap0 и tap1 по разным каналам.
Спасибо всем кто подсказывает...!
Только по mpd могу рассказать.
MPD поднимает несколько соединений (ppp link), объединяет их в один канал (bundle) видимый на клиенте и на сервере как один интерфейс ng. Предполагается что, на клиентском mpd в офисе настроен один bundle с двумя линками через разных провайдеров. Т.к. линки будут устанавливаться в рамках одного процесса mpd, setfib не поможет для разделения по каналам. Помогут правила в ipfw на вроде
fwd gateway_isp1 src-ip ip_isp1 out not via if_isp1
fwd gateway_isp2 src-ip ip_isp2 out not via if_isp2

mpd на сервере в интернете должен отличать входящие ppp соединения из офиса для присоединения их к одному bundle. Состояние каналов проверяется протоколом PPP через LCP, ни чего городить не надо.

Как объеденить каналы двух провайдеров в один

Добавлено: 2016-08-29 19:24:15
ShadowAGT
Гост писал(а):
Пока ознакомившись с найденным в тырнете, пришел к такой схеме... Беру openVPN (или все же лучше mpd? Если да, то чем?), поднимаю его на сервере в инете и на офисном шлюзе. Поднимаю интерфейсы tap0 и tap1 по разным каналам.
Спасибо всем кто подсказывает...!
Только по mpd могу рассказать.
MPD поднимает несколько соединений (ppp link), объединяет их в один канал (bundle) видимый на клиенте и на сервере как один интерфейс ng. Предполагается что, на клиентском mpd в офисе настроен один bundle с двумя линками через разных провайдеров. Т.к. линки будут устанавливаться в рамках одного процесса mpd, setfib не поможет для разделения по каналам. Помогут правила в ipfw на вроде
fwd gateway_isp1 src-ip ip_isp1 out not via if_isp1
fwd gateway_isp2 src-ip ip_isp2 out not via if_isp2

mpd на сервере в интернете должен отличать входящие ppp соединения из офиса для присоединения их к одному bundle. Состояние каналов проверяется протоколом PPP через LCP, ни чего городить не надо.
Понял! Все предельно четко и понятно! Спасибо!