LINUX.ORG.RU
ФорумAdmin

Несколько провайдеров, 1 роутер

 


0

2

Суп, ЛОР. Возникла такая задача - есть небольшой офис, около 30 человек, сейчас все сидят через одного провайдера.Появились еще 2 канала другого провайдера с разными ip-адресами. Нужно сделать так, чтобы часть пользователей выходила в интернет с этих новых каналов. Из имеющегося оборудования - микротик на 5 портов. Как правильнее всего это сделать? Пока что есть такие идеи:

1) Настроить оба провайдера на разных портах, подключить 2 порта в локальную сеть с разными адресами. На пк зависимости от выбранного как шлюз айпишника выводить трафик на соответствующего провайдера

2) Подключить оба провайдера на разные интерфейсы, на каждом настроить openvpn. На компьютерах настроить подключение к этим впнам, можно будет менять провайдера по желанию.

Сильно не пинайте, лучше подскажите как лучше и логически правильнее сделать, укажите на косяки %)

★★★★★

man policy based routing

А дальше либо раскидываешь часть на один канал, часть на второй, часть на третий, либо просто раскидываешь соединения по провайдерам через stateful nat как-нибудь.

Dark_SavanT ★★★★★ ()

Обе схемы неудачные. Оптимальный вариант тут - policy based routing. Создаете таблицы маршрутизации по числу каналов. Добавляете в них локальную сеть. И далее добавляете двойной или тройной (по числу каналов) шлюз по умолчанию с указанием веса каждого из каналов (вес пропорционален пропускной способности канала). Подробнее это в LARTC описано, да и здесь чуть ли не каждые несколько дней обсуждается, попробуйте поиском по policy based routing пройтись...

Serge10 ★★★★★ ()
Ответ на: комментарий от Dark_SavanT

Погуглил pbr - нашел только как распределить на разных провайдеров в зависимости от локального ip пк. Но тогда все равно придется на всех этих компьютерах ставить локальный ip. Может есть еще какой-нибудь способ?

bsdfun ★★★★★ ()
Ответ на: комментарий от bsdfun

Но тогда все равно придется на всех этих компьютерах ставить локальный ip

А с реальными никак, если без BGP и своего независимого диапазона адресов. Хотя, наверное, можно и чужой, там был механизм описания дырок и анонса блока от другой автономки. Но автономку точно надо брать.

AS ★★★★★ ()
Последнее исправление: AS (всего исправлений: 1)
Ответ на: комментарий от bsdfun

тут кучу раз обсуждали эти несколько каналов.

но я бы предпочёл железку, которая так умеет сама.
иначе можно получить свои ошибки в скрипте или отвал чавой-та после обновления шлюза.

шо железка, шо самописательство варианты - так себе, ИМХО.

Deleted ()
Ответ на: комментарий от Deleted

но я бы предпочёл железку, которая так умеет сама.

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

bsdfun ★★★★★ ()
Ответ на: комментарий от bsdfun

Ну... вообще проконсультируйся с хотелками коллектива.
Оно им сильно так надо?

Deleted ()
Ответ на: комментарий от bsdfun

Статичный ip*

И что? На каком основании трафик на него пойдёт через другого оператора без соответствующего анонса по BGP? Вот с тем одним, от кого два канала, можно что-то порешать, с IP, который он предоставит. Но через третий, от другого, трафик на этот IP не пойдёт.

AS ★★★★★ ()

Привяжи каждого клиента по маску к ip и распределяй по ip.

Jopich1 ()

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

trancefer ★★ ()

вместо дефолтного маршрута поделить глобальный интернет на 3 части и каждую маршрутизировать через своего провайдера

Harald ★★★★★ ()
Ответ на: комментарий от trancefer

Если было бы 3 роутера

Нет. Ключевая проблема тут именно в том, что я написал про доступность сети. Надо решать вопрос с анонсом используемого блока через всех операторов, а там есть соответствующие заморочки, если блок не свой, а одного из операторов.

AS ★★★★★ ()
Ответ на: комментарий от AS

Зачем ананонсировать что-либо провайдеру? Предполагается, что на каждом из роутеров подключенных к провайдеру делается нат в паблик принадлежащий провайдеру. В моей схеме трафик условно в одну половину интернетов идет через одного провайдера, а во вторую - через другого. Соответсвенно, через OSPF это анонсируется наверх, 3-му роутеру, как 2 маршрута вместо одного в 0.0.0.0/0. На «нижних» роутерах маршруты, указывающие, что половина 0.0.0.0/1 на роутере А доспуна через провайдера 1, а половина 128.0.0.0/1 через роутер Б. На роутере Б, в обратную сторону - 128.0.0.0/1 через провайдера 2, а половина 0.0.0.0/1 через роутер А. При этом на каждом из А и Б имеются маршруты в «недостающие» половины через connected-линк провайдера, с бОльшими метриками, чем аналогичный маршурт, но через соседний роутер. Т.о. получится балансировка, и в случае, если один из роутеров выйдет из строя - второй полностью возьмет функции вышедшего из строя.

trancefer ★★ ()
Ответ на: комментарий от trancefer

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

ТС это (NAT) не устраивает: Несколько провайдеров, 1 роутер (комментарий)

AS ★★★★★ ()
Последнее исправление: AS (всего исправлений: 1)

Микротик 5 портов это маршрутизатор или свич?

Обе ваши схемы подразумеваю pbr, иначе вам не разрулить пакеты.

Я правильно понял, что вам нужно, чтобы пользователь сам определял через какой канал пойдёт? Я когда-то делал подобное, но мне было проще написать cgi-скрипт (да у меня шлюзом был комп и там был http-сервер), пользователю проще тыкать в браузере, чем помнить где и как менять шлюз по умолчанию.

mky ★★★★★ ()

Выше mky привел направление хорошей реализации. Тоже нечто подобное для «себя любимого» писал.

anc ★★★★★ ()
Последнее исправление: anc (всего исправлений: 2)
Ответ на: комментарий от anc

Дома переключать каналы инета без использования ssh, быстро и легко.

anc ★★★★★ ()
Ответ на: комментарий от mky

Микротик 5 портов это маршрутизатор или свич?

Маршрутизатор.

Я правильно понял, что вам нужно, чтобы пользователь сам определял через какой канал пойдёт? Я когда-то делал подобное, но мне было проще написать cgi-скрипт (да у меня шлюзом был комп и там был http-сервер), пользователю проще тыкать в браузере, чем помнить где и как менять шлюз по умолчанию.

Нужно чтобы я мог определенных пользователей настроить на выход в инет через определенный канал.

Пока что на 4х интерфейсах микротика настроил разных провайдеров, 5 смотрит в локальную сеть. В зависимости от ip-адреса клиента трафик уходит на нужный канал.

bsdfun ★★★★★ ()
Ответ на: комментарий от bsdfun

Нужно чтобы я мог определенных пользователей настроить на выход в инет через определенный канал.

Пока что на 4х интерфейсах микротика настроил разных провайдеров, 5 смотрит в локальную сеть. В зависимости от ip-адреса клиента трафик уходит на нужный канал.

И чем отличается желаемый вариант от реализованного?

Serge10 ★★★★★ ()
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.