pavel.odintsov Posted May 14, 2015 Posted May 14, 2015 (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 May 14, 2015 by pavel.odintsov Вставить ник Quote
s.lobanov Posted May 14, 2015 Posted May 14, 2015 А чё тут обсуждать-то? Всё понятно с этим механизмом. Реализация этой штуки - pbr, а с точки зрения "клиента" это просто bgp анонс. Есть конкретный предмет для обсуждения? Вставить ник Quote
zi_rus Posted May 15, 2015 Posted May 15, 2015 Есть конкретный предмет для обсуждения? он всегда есть. то хорошая штука для борьбы с ддос силами клиента на стороне провайдера. А предмет состоит в том, какие проблемы может поиметь провайдер, если клиент начнет использовать фичу не по назначению, или по назначению, но с какими-то особенностями. Где-то, в какой-то презентации читал что пролемы таки возможны, поэтому провайдеры не сильно спешат эту штуку внедрять, но уже не помню в чем была суть Вставить ник Quote
pavel.odintsov Posted May 15, 2015 Author Posted May 15, 2015 (edited) Вопросов на деле много. 1) Кто из аплинков держит такое дело? Я пока не нашел толком никого 2) Как фильтровать/генерировать/контролировать флоу? Не руками же на каждый чих забивать в роутеры, это не анонсы, которые меняются часть в тыщу лет, а постоянно меняющаяся инфа 3) Как делегировать посылку флоу клиентами (актуально для ДЦ), своего рода фаерволл ДЦ уровня 4) Как оно конкретно работает на конкретном железе и какая деградация производительности в зав-ти от числа правил 5) Что делать если бордер не умеет flow spec, а только BGP v4? Вот Quagga не умеет, а анонсировать хочется. Пока многие вещи могут быть сделаны выше означенным ExaBGP: https://github.com/Exa-Networks/exabgp, но это лишь либа, а инструменты уже надо строить самим :) Похоже на рекламу) Она самая! В самой наглой форме=) Но на Светлакова и котиков (с) бюджет не одобрили :( Edited May 15, 2015 by pavel.odintsov Вставить ник Quote
rdntw Posted May 15, 2015 Posted May 15, 2015 Используем flowspec совместно с виртуалкой от arbor. Arbor определяет атаку и подготавливает flowspec-фильтры, потом спускает их на бордеры. Eсли есть flow-сессия с uplink-ами, то трафик еще до попадания в нашу AS дропается. Если нет то дропается на наших бордерах. Вставить ник Quote
pavel.odintsov Posted May 15, 2015 Author Posted May 15, 2015 А бордеры Juniper? Я вот думаю, может ли бордер без его поддержки пропустить его аплинку не вдаваясь в подробности, чего он там передает наружу. Фантастика, конечно поидее он при коннекте должен анонсировать свои фичи =( Кстати, очень скоро будет аналогичная штука для анализа атак, тоже в виртулке и тоже с flow spec, но опенсорцная =) Вставить ник Quote
rdntw Posted May 15, 2015 Posted May 15, 2015 А бордеры Juniper? Я вот думаю, может ли бордер без его поддержки пропустить его аплинку не вдаваясь в подробности, чего он там передает наружу. Фантастика, конечно поидее он при коннекте должен анонсировать свои фичи =( Кстати, очень скоро будет аналогичная штука для анализа атак, тоже в виртулке и тоже с flow spec, но опенсорцная =) Да, MXы. Вы хотите не с бордера поднимать flow-сессию с аплинком, а откуда-то внутри сети? Вопрос только уговорить его так сделать :) Вставить ник Quote
pavel.odintsov Posted May 15, 2015 Author Posted May 15, 2015 Аплинка-то уговорить можно, но очень не хочется так делать. У аплинка Juniper сетка и роутинг в одном флаконе с флоу спеком. С моей же стороны солянка - Quagga/фул вью и флоу спек на ExaBGP. Вопрос как это влить аплинку. Понятно, что можно попросить спец сессию для flow spec, но не уверен, что они на это пойдут.... Я хочу, чтобы моя квагга не имея полной поддержки flow spec приняла анонс flow spec изнутри сети и пихнула его в аплинка, опять же не вдаваясь в содержимое пакета :) Вставить ник Quote
rdntw Posted May 15, 2015 Posted May 15, 2015 Я хочу, чтобы моя квагга не имея полной поддержки flow spec приняла анонс flow spec изнутри сети и пихнула его в аплинка, опять же не вдаваясь в содержимое пакета :) А как без поддержки этого NLRI он его пропустит?:) Вставить ник Quote
pavel.odintsov Posted May 15, 2015 Author Posted May 15, 2015 Я хочу, чтобы моя квагга не имея полной поддержки flow spec приняла анонс flow spec изнутри сети и пихнула его в аплинка, опять же не вдаваясь в содержимое пакета :) А как без поддержки этого NLRI он его пропустит?:) Вот в том и вопрос, что не пропустит нифиг :( Поидее, добавить тупой форвард flow spec в Quagga решительно проще, чем делать полную имплементацию flow spec для Quagga. Вставить ник Quote
darkagent Posted May 15, 2015 Posted May 15, 2015 на bird еще года 3-4 назад был одобренный фичреквест на flow spec, надо посмотреть, может уже сделали чего. Вставить ник Quote
s.lobanov Posted May 15, 2015 Posted May 15, 2015 Я хочу, чтобы моя квагга не имея полной поддержки flow spec приняла анонс flow spec изнутри сети и пихнула его в аплинка, опять же не вдаваясь в содержимое пакета :) А как без поддержки этого NLRI он его пропустит?:) pavel.odintsov Вот это уже вполне конретный и интересный вопрос. rdntw Quagga не поддерживает vrf, но при этом может быть рефлектором для vpnv4. Точно также ASR1k не умеет eVPN, но может быть рефлектором для этого пространства(весьма странный кейс, честно говоря, но видимо кому-то это надо). Принципиальных сложностей отрефлектить flowspec-анонсы нет, просто нужно немного допилить кваггу для этого Вставить ник Quote
zi_rus Posted May 15, 2015 Posted May 15, 2015 (весьма странный кейс, честно говоря, но видимо кому-то это надо) ничего странного, просто копировали код bgp и все. проще было скопипастить как есть, чем специально выпиливать какую-то AFI только потому что на этой платформе оно может быть ненужно Вставить ник Quote
pavel.odintsov Posted May 15, 2015 Author Posted May 15, 2015 rdntwQuagga не поддерживает vrf, но при этом может быть рефлектором для vpnv4. Точно также ASR1k не умеет eVPN, но может быть рефлектором для этого пространства(весьма странный кейс, честно говоря, но видимо кому-то это надо). Принципиальных сложностей отрефлектить flowspec-анонсы нет, просто нужно немного допилить кваггу для этого Вот именно такая фича и нужна :) Как оно называется там по умному, чтобы попросить "вот такое же хочу, но для flow spec"? Вставить ник Quote
MonaxGT Posted May 15, 2015 Posted May 15, 2015 Используем flowspec совместно с виртуалкой от arbor. Arbor определяет атаку и подготавливает flowspec-фильтры, потом спускает их на бордеры. Eсли есть flow-сессия с uplink-ами, то трафик еще до попадания в нашу AS дропается. Если нет то дропается на наших бордерах. А есть виртуалка в доступе для обычного люда или контракт нужен? rdntwQuagga не поддерживает vrf, но при этом может быть рефлектором для vpnv4. Точно также ASR1k не умеет eVPN, но может быть рефлектором для этого пространства(весьма странный кейс, честно говоря, но видимо кому-то это надо). Принципиальных сложностей отрефлектить flowspec-анонсы нет, просто нужно немного допилить кваггу для этого Вот именно такая фича и нужна :) Как оно называется там по умному, чтобы попросить "вот такое же хочу, но для flow spec"? Ну попросить возможность работы в качестве RR для такого NLRI Вставить ник Quote
s.lobanov Posted May 15, 2015 Posted May 15, 2015 (весьма странный кейс, честно говоря, но видимо кому-то это надо) ничего странного, просто копировали код 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 Вставить ник Quote
MonaxGT Posted May 15, 2015 Posted May 15, 2015 (edited) (весьма странный кейс, честно говоря, но видимо кому-то это надо) ничего странного, просто копировали код bgp и все. проще было скопипастить как есть, чем специально выпиливать какую-то AFI только потому что на этой платформе оно может быть ненужно ну хз, я не уверен, что xr и ios/ios-xe имеют общую кодовую базу. или же есть железки с ios/ios-xe умеющие eVPN? Уже выдали ссылку выше) Edited May 15, 2015 by MonaxGT Вставить ник Quote
pavel.odintsov Posted May 15, 2015 Author Posted May 15, 2015 вот что вам нужно сделать в квагге 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 Шикарно! Отправил в mail list Quagga! Вставить ник Quote
s.lobanov Posted May 15, 2015 Posted May 15, 2015 Уже выдали ссылку выше) ты про мою ссылку или ещё про какую-то? Вставить ник Quote
MonaxGT Posted May 15, 2015 Posted May 15, 2015 Уже выдали ссылку выше) ты про мою ссылку или ещё про какую-то? Да, я пока писал пост, ты ее выложил) удалить сообщение не смог Вставить ник Quote
pavel.odintsov Posted May 15, 2015 Author Posted May 15, 2015 Так, забил в мейллисты Bird/Quagga посты с кличем о поддержке Flow Spec: http://bird.network.cz/pipermail/bird-users/2015-May/009675.html https://lists.quagga.net/pipermail/quagga-users/2015-May/014027.html Вставить ник Quote
ollsanek Posted May 15, 2015 Posted May 15, 2015 .... Я хочу, чтобы моя квагга не имея полной поддержки flow spec приняла анонс flow spec изнутри сети и пихнула его в аплинка, опять же не вдаваясь в содержимое пакета :) Сделайте наоборот, пусть к аплинкеру цепляется ЕХА, объединяя "нормальные" анаонсы от квагги и flow spec изнутри сети :) Вставить ник Quote
pavel.odintsov Posted May 15, 2015 Author Posted May 15, 2015 Была такая мысль, это самое лобовое решение. Но ExaBGP - это точка отказа и узкое место в производительности (потенциально, не тестировал тщательно), а у меня мотается вполне себе жирный full view, который крайне не хочется гонять через ExaBGP, он и напрямую-то еле проворачивается :( Вставить ник Quote
rdntw Posted May 15, 2015 Posted May 15, 2015 (edited) А есть виртуалка в доступе для обычного люда или контракт нужен? через посредников. http://www.servicepipe.ru/ Edited May 15, 2015 by rdntw Вставить ник Quote
Recommended Posts
Join the conversation
You can post now and register later. If you have an account, sign in now to post with your account.