Jump to content

Recommended Posts

Posted (edited)

Всем привет!

 

Хотелось бы обсудить здесь BGP Flow Spec также известный как RFC 5575.

 

Чтобы не уходить в сущности реализации, приведу пример что это такое и зачем сразу станет ясно.

 

Вот пример BGP Flow Spec анонса из пакета ExaBGP:

       flow {
           route block_traffic_to_proxy {
               match {
                   source 10.0.0.1/32;
                   destination 10.0.0.2/32;
                   destination-port =3128;
                   protocol tcp;
               }   
               then {
                   discard;
              }   
           }   
       } 

 

Иными словами, это такой мощный распределенный фаерволл с поддержкой со стороны Juniper/Cisco и поведением ну очень похожим на BGP (пиры, анонсы, propagation).

 

Кроме использования для iBGP в своей сети (что уже крайне полезно в ряде случае) также поддерживается (пока крайне редко) магистралами на eBGP! Что открывает огромный простор для творчества!

Edited by pavel.odintsov
  • Replies 61
  • Created
  • Last Reply

Top Posters In This Topic

Posted

А чё тут обсуждать-то? Всё понятно с этим механизмом. Реализация этой штуки - pbr, а с точки зрения "клиента" это просто bgp анонс. Есть конкретный предмет для обсуждения?

Posted

Есть конкретный предмет для обсуждения?

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

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

Posted (edited)

Вопросов на деле много.

 

1) Кто из аплинков держит такое дело? Я пока не нашел толком никого

2) Как фильтровать/генерировать/контролировать флоу? Не руками же на каждый чих забивать в роутеры, это не анонсы, которые меняются часть в тыщу лет, а постоянно меняющаяся инфа

3) Как делегировать посылку флоу клиентами (актуально для ДЦ), своего рода фаерволл ДЦ уровня

4) Как оно конкретно работает на конкретном железе и какая деградация производительности в зав-ти от числа правил

5) Что делать если бордер не умеет flow spec, а только BGP v4? Вот Quagga не умеет, а анонсировать хочется.

 

Пока многие вещи могут быть сделаны выше означенным ExaBGP: https://github.com/Exa-Networks/exabgp, но это лишь либа, а инструменты уже надо строить самим :)

 

Похоже на рекламу)

 

Она самая! В самой наглой форме=) Но на Светлакова и котиков (с) бюджет не одобрили :(

Edited by pavel.odintsov
Posted

Используем flowspec совместно с виртуалкой от arbor.

Arbor определяет атаку и подготавливает flowspec-фильтры, потом спускает их на бордеры.

Eсли есть flow-сессия с uplink-ами, то трафик еще до попадания в нашу AS дропается.

Если нет то дропается на наших бордерах.

Posted

А бордеры Juniper? Я вот думаю, может ли бордер без его поддержки пропустить его аплинку не вдаваясь в подробности, чего он там передает наружу. Фантастика, конечно поидее он при коннекте должен анонсировать свои фичи =(

 

Кстати, очень скоро будет аналогичная штука для анализа атак, тоже в виртулке и тоже с flow spec, но опенсорцная =)

Posted

А бордеры Juniper? Я вот думаю, может ли бордер без его поддержки пропустить его аплинку не вдаваясь в подробности, чего он там передает наружу. Фантастика, конечно поидее он при коннекте должен анонсировать свои фичи =(

 

Кстати, очень скоро будет аналогичная штука для анализа атак, тоже в виртулке и тоже с flow spec, но опенсорцная =)

 

Да, MXы.

Вы хотите не с бордера поднимать flow-сессию с аплинком, а откуда-то внутри сети?

Вопрос только уговорить его так сделать :)

Posted

Аплинка-то уговорить можно, но очень не хочется так делать. У аплинка Juniper сетка и роутинг в одном флаконе с флоу спеком. С моей же стороны солянка - Quagga/фул вью и флоу спек на ExaBGP. Вопрос как это влить аплинку. Понятно, что можно попросить спец сессию для flow spec, но не уверен, что они на это пойдут....

 

Я хочу, чтобы моя квагга не имея полной поддержки flow spec приняла анонс flow spec изнутри сети и пихнула его в аплинка, опять же не вдаваясь в содержимое пакета :)

Posted

Я хочу, чтобы моя квагга не имея полной поддержки flow spec приняла анонс flow spec изнутри сети и пихнула его в аплинка, опять же не вдаваясь в содержимое пакета :)

 

А как без поддержки этого NLRI он его пропустит?:)

Posted

Я хочу, чтобы моя квагга не имея полной поддержки flow spec приняла анонс flow spec изнутри сети и пихнула его в аплинка, опять же не вдаваясь в содержимое пакета :)

 

А как без поддержки этого NLRI он его пропустит?:)

 

Вот в том и вопрос, что не пропустит нифиг :( Поидее, добавить тупой форвард flow spec в Quagga решительно проще, чем делать полную имплементацию flow spec для Quagga.

Posted

Я хочу, чтобы моя квагга не имея полной поддержки flow spec приняла анонс flow spec изнутри сети и пихнула его в аплинка, опять же не вдаваясь в содержимое пакета :)

 

А как без поддержки этого NLRI он его пропустит?:)

 

pavel.odintsov

Вот это уже вполне конретный и интересный вопрос.

 

rdntw

Quagga не поддерживает vrf, но при этом может быть рефлектором для vpnv4. Точно также ASR1k не умеет eVPN, но может быть рефлектором для этого пространства(весьма странный кейс, честно говоря, но видимо кому-то это надо). Принципиальных сложностей отрефлектить flowspec-анонсы нет, просто нужно немного допилить кваггу для этого

Posted

(весьма странный кейс, честно говоря, но видимо кому-то это надо)

ничего странного, просто копировали код bgp и все. проще было скопипастить как есть, чем специально выпиливать какую-то AFI только потому что на этой платформе оно может быть ненужно

Posted
rdntw

Quagga не поддерживает vrf, но при этом может быть рефлектором для vpnv4. Точно также ASR1k не умеет eVPN, но может быть рефлектором для этого пространства(весьма странный кейс, честно говоря, но видимо кому-то это надо). Принципиальных сложностей отрефлектить flowspec-анонсы нет, просто нужно немного допилить кваггу для этого

 

Вот именно такая фича и нужна :) Как оно называется там по умному, чтобы попросить "вот такое же хочу, но для flow spec"?

Posted

Используем flowspec совместно с виртуалкой от arbor.

Arbor определяет атаку и подготавливает flowspec-фильтры, потом спускает их на бордеры.

Eсли есть flow-сессия с uplink-ами, то трафик еще до попадания в нашу AS дропается.

Если нет то дропается на наших бордерах.

 

А есть виртуалка в доступе для обычного люда или контракт нужен?

 

rdntw

Quagga не поддерживает vrf, но при этом может быть рефлектором для vpnv4. Точно также ASR1k не умеет eVPN, но может быть рефлектором для этого пространства(весьма странный кейс, честно говоря, но видимо кому-то это надо). Принципиальных сложностей отрефлектить flowspec-анонсы нет, просто нужно немного допилить кваггу для этого

 

Вот именно такая фича и нужна :) Как оно называется там по умному, чтобы попросить "вот такое же хочу, но для flow spec"?

 

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

Posted

(весьма странный кейс, честно говоря, но видимо кому-то это надо)

ничего странного, просто копировали код bgp и все. проще было скопипастить как есть, чем специально выпиливать какую-то AFI только потому что на этой платформе оно может быть ненужно

 

ну хз, я не уверен, что xr и ios/ios-xe имеют общую кодовую базу. или же есть железки с ios/ios-xe умеющие eVPN?

 

Вот именно такая фича и нужна :) Как оно называется там по умному, чтобы попросить "вот такое же хочу, но для flow spec"?

 

вот что вам нужно сделать в квагге http://www.cisco.com/c/en/us/td/docs/ios-xml/ios/iproute_bgp/configuration/xe-3s/irg-xe-3s-book/bgp_flowspec_route-reflector_support.pdf

Posted (edited)

(весьма странный кейс, честно говоря, но видимо кому-то это надо)

ничего странного, просто копировали код bgp и все. проще было скопипастить как есть, чем специально выпиливать какую-то AFI только потому что на этой платформе оно может быть ненужно

 

ну хз, я не уверен, что xr и ios/ios-xe имеют общую кодовую базу. или же есть железки с ios/ios-xe умеющие eVPN?

 

Уже выдали ссылку выше)

Edited by MonaxGT
Posted

 

 

Шикарно! Отправил в mail list Quagga!

Posted

....

Я хочу, чтобы моя квагга не имея полной поддержки flow spec приняла анонс flow spec изнутри сети и пихнула его в аплинка, опять же не вдаваясь в содержимое пакета :)

 

Сделайте наоборот, пусть к аплинкеру цепляется ЕХА, объединяя "нормальные" анаонсы от квагги и flow spec изнутри сети :)

Posted

Была такая мысль, это самое лобовое решение. Но ExaBGP - это точка отказа и узкое место в производительности (потенциально, не тестировал тщательно), а у меня мотается вполне себе жирный full view, который крайне не хочется гонять через ExaBGP, он и напрямую-то еле проворачивается :(

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Guest
Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.


×
×
  • Create New...
На сайте используются файлы cookie и сервисы аналитики для корректной работы форума и улучшения качества обслуживания. Продолжая использовать сайт, вы соглашаетесь с использованием файлов cookie и с Политикой конфиденциальности.