Jump to content
Калькуляторы

Распределение клиентов в разные аплинки

Всем привет!
 
Коллеги, имеется jun mx 240 и абстрактная задача распределять трафик в зависимости от дешевизны по разным аплинкам(bgp). Такого еще не реализовывал, но вот что приходит в голову: 
  1. PBR. Плохой вариант, потому что надо как-то мониторить next-hop, это какие-то костыли. И кстати по нагрузке наверно будет жестко при большом колве трафика? 
  2. VRF. Создать под каждого аплинка свою таблицу, ISP1 и ISP2, для клиентов отдельно две таблицы, под каждого ISP. Но что если у меня добавляется еще один ISP и несколько пирингов? Появляется уже мясорубка из таблиц. Но пока этот вариант видится самым рабочим. 
 
Может кто еще подскажет как делают взрослые люди. 
Спасибо большое!

Share this post


Link to post
Share on other sites
9 минут назад, erka сказал:

jun mx 240 и абстрактная задача распределять трафик в зависимости от дешевизны по разным аплинкам

jun конечно крутая железка, но про деньги ничего не знает :)

Share this post


Link to post
Share on other sites
2 minutes ago, Andrei said:

jun конечно крутая железка, но про деньги ничего не знает :)

Ну я написал про чжун, вдруг у них есть проприетарные какие то фичи для такого)

Ну а может совет какой?) куда копать. Мне конфиг не нужен, нужна логика решения. 

Share this post


Link to post
Share on other sites

У меня не джун, а кошка. Я сделал на PBR.

Share this post


Link to post
Share on other sites
10 minutes ago, Andrei said:

У меня не джун, а кошка. Я сделал на PBR.

Ну т.е.  вы задаёте next-hop по сорсу. А как мониторите доступность next-hop? Ip sla? Ну и если не жалко скажите что за модель и что с нагрузкой(rate/cpu), очень интересно. 

Edited by erka

Share this post


Link to post
Share on other sites
20 минут назад, erka сказал:

задаёте next-hop по сорсу

да

20 минут назад, erka сказал:

как мониторите доступность next-hop

никак

20 минут назад, erka сказал:

если не жалко скажите что за модель и что с нагрузкой(rate/cpu)

7204VXR + NPE-1G

Но у нас и трафика чуть больше 200 Мбит/сек, и клиентов онлайн в пределах 400. Загрузка cpu в пиках 60%, т.к. на этой же кошке еще NAT и rate-limit для клиентов (знаю, что надо вынести эти фичи с кошки, но пока так).

Share this post


Link to post
Share on other sites
1 minute ago, Andrei said:

да

никак

7204VXR + NPE-1G

Но у нас и трафика чуть больше 200 Мбит/сек, и клиентов онлайн в пределах 400. Загрузка cpu в пиках 60%, т.к. на этой же кошке еще NAT и rate-limit для клиентов (знаю, что надо вынести эти фичи с кошки, но пока так).

Спасибо за ответ!

Share this post


Link to post
Share on other sites
1 hour ago, erka said:

для клиентов отдельно две таблицы, под каждого ISP. Но что если у меня добавляется еще один ISP и несколько пирингов?

для клиентов отдельные таблицы не надо они же уникальные -) сколько пиров столько и таблиц.

Share this post


Link to post
Share on other sites
5 minutes ago, user71 said:

для клиентов отдельные таблицы не надо они же уникальные -) сколько пиров столько и таблиц.

Не правильно написал, клиенты = транзитные ас 

Share this post


Link to post
Share on other sites

У меня микротик сам все распределяет как раз по BGP таблицам. И настраивать ничего не требуется.

Share this post


Link to post
Share on other sites
3 часа назад, Saab95 сказал:

микротик сам

Перечитайте задачу топик-стартера.

Share this post


Link to post
Share on other sites
18 hours ago, erka said:

клиенты = транзитные ас 

и? они же все равно уникальные.

Share this post


Link to post
Share on other sites

@Andrei 

у Saab95'а один микротик на один bgp-пир, второй - на второй, и т.д.  Так как микротик не умеет в нормальный vrf

@erka 

у джуна pbr всё равно через vrf делается..

Share this post


Link to post
Share on other sites

может сааб не умеет vrf. у меня 3 бгп пира и все отлично с врф.

Share this post


Link to post
Share on other sites

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

ну и всегда есть не просто next-hop а qualified-next-hop где можно по списку перечислить

но вообще костылинг дикий, да

как по мне легче препендами и локалпрефами это всё решать

Share this post


Link to post
Share on other sites
On 7/4/2019 at 11:34 AM, Saab95 said:

У меня микротик сам все распределяет как раз по BGP таблицам. И настраивать ничего не требуется.

Это как? Может быть вы не поняли задачу. Есть под рукой mikrotik 1072, потестирую если объясните, что имеете ввиду. 

 

20 hours ago, user71 said:

может сааб не умеет vrf. у меня 3 бгп пира и все отлично с врф.

Я думаю тут имеется ввиду вот это https://net-labs.in/2014/07/19/vrf-l3vpn-в-mikrotik-routeros-defective-by-design/ 

 

11 hours ago, GrandPr1de said:

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

ну и всегда есть не просто next-hop а qualified-next-hop где можно по списку перечислить

но вообще костылинг дикий, да

как по мне легче препендами и локалпрефами это всё решать

Так как я могу решить эту задачу препендами и локапрефом? Если мне нужен source based routing. Я каких то клиентов хочу засовывать в один аплинк, других в другой, не зависимо от дестенейшена. Понятно что я дополнительно буду навешивать препенды на их префиксы через другого аплинка, но локалпреф тут вообще не используется. 

Share this post


Link to post
Share on other sites
7 часов назад, erka сказал:

Если мне нужен source based routing

 

19 часов назад, GrandPr1de сказал:

qualified-next-hop

https://www.juniper.net/documentation/en_US/junos/topics/concept/routing-protocol-static-security-route-preference-and-qualified-next-hop-understanding.html

Share this post


Link to post
Share on other sites
14 hours ago, erka said:

Понятно что я дополнительно буду навешивать препенды на их префиксы через другого аплинка

Думаю, клиент не будет счастлив. Если у него есть еще аплинк, кроме вас, то можете сломать ему балансировку. Транзитник не должен вмешиваться в атрибуты BGP.

Исходящий трафик - PBR. Входящий - анонсируйте клиентские префиксы в нужные аплинки.

Share this post


Link to post
Share on other sites
On 7/5/2019 at 12:38 PM, erka said:

Я думаю тут имеется ввиду вот это https://net-labs.in/2014/07/19/vrf-l3vpn-в-mikrotik-routeros-defective-by-design/ 

Ага хоть кто то смог почему врф микротика неполноценый. Но это старая история 14 год. Уже пофиксили.

Share this post


Link to post
Share on other sites

@erka как я понял

1000 клиентов 300 нужно отправить через А линк, 700 через Б линк верно? Переключения должны быть? Т.е. если отвалился А то переключение на Б и наоборот.

 

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

 

з.ы. бгп у меня нет если чё ;)

Share this post


Link to post
Share on other sites
1 час назад, pingz сказал:

могу кинуть пример

Пример лучше сюда, особенно если без bgp.

Share this post


Link to post
Share on other sites

@Andrei обычный фильтр в нем роутинг инстанс в врф 

Share this post


Link to post
Share on other sites
20 минут назад, pingz сказал:

обычный фильтр в нем роутинг инстанс в врф

Типа так, как показано ниже?

 

создаешь врф
ip vrf BLA
rd номер_твоей_ас:1
route-target bo номер_твоей_ас:1

добавяешь интерфейс в врф 
int gig 0/1.1
ip vrf forw BLA

маршрут дефольный в врф тоже просто добавляется
ip route vrf BLA 0.0.0.0 0.0.0.0 next_hop
 

 

Share this post


Link to post
Share on other sites
14 часов назад, pingz сказал:

1000 клиентов 300 нужно отправить через А линк, 700 через Б линк верн

Нет. Неправильно.

У него транзитная АС, клиенты по БГП. Штуки 3-4 наверное, судя по хотелкам, ибо нормальный оператор такой херней страдать не будет.

Share this post


Link to post
Share on other sites

@vurd Все понял, ТС у нас магистрал, я думал ШПД. Тога мой вариант не подойдет. 

 

 

Мой MX занимается натом и транзитным трафиком клиентов. 

 

Использую вот такую схему 

 

set firewall family inet filter nat interface-specific
set firewall family inet filter nat term 1 from source-address 172.16.0.0/19
set firewall family inet filter nat term 1 then routing-instance nat
set routing-instances nat instance-type virtual-router
set routing-instances nat routing-options static route 0.0.0.0/0 next-hop ms-0/2/0.10
set routing-instances nat routing-options instance-import nat
set policy-options policy-statement nat term 10 from instance master
set policy-options policy-statement nat term 10 from protocol access-internal
set policy-options policy-statement nat term 10 from protocol access
set policy-options policy-statement nat term 10 then accept
set policy-options policy-statement nat term 20 then reject
 

 

Если делать тупую балансировку то возможно поможет. 

 

 

 

Share this post


Link to post
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now