{"id":4767,"date":"2026-08-11T20:58:58","date_gmt":"2026-08-11T18:58:58","guid":{"rendered":"https:\/\/www.sycope.com\/?post_type=dictionary-item&#038;p=4767"},"modified":"2026-08-11T22:47:41","modified_gmt":"2026-08-11T20:47:41","slug":"flowspec","status":"publish","type":"dictionary-item","link":"https:\/\/www.sycope.com\/pl\/post\/dictionary-item\/flowspec","title":{"rendered":"FlowSpec"},"content":{"rendered":"<p><strong>FlowSpec (<a href=\"https:\/\/www.sycope.com\/pl\/post\/dictionary-item\/bgp-border-gateway-protocol\">BGP<\/a> Flow Specification)<\/strong> to rozszerzenie protoko\u0142u routingu <a href=\"https:\/\/www.sycope.com\/pl\/post\/dictionary-item\/bgp-border-gateway-protocol\">BGP<\/a>, kt\u00f3re pozwala rozes\u0142a\u0107 po sieci szczeg\u00f3\u0142owe regu\u0142y filtrowania ruchu wraz z akcj\u0105, jak\u0105 trzeba na pasuj\u0105cym ruchu wykona\u0107. Zwykle, aby zablokowa\u0107 jaki\u015b ruch, trzeba r\u0119cznie wpisa\u0107 regu\u0142y (listy ACL) na ka\u017cdym routerze z osobna. FlowSpec dzia\u0142a inaczej: operator definiuje przep\u0142yw raz, a opis ten rozsy\u0142a si\u0119 sam przez BGP do wszystkich router\u00f3w. Regu\u0142a mo\u017ce dopasowywa\u0107 ruch po adresach, protokole, portach czy d\u0142ugo\u015bci pakietu, a w akcji odrzuca\u0107 go, ogranicza\u0107 pr\u0119dko\u015b\u0107, przekierowywa\u0107 lub oznacza\u0107. FlowSpec opisuj\u0105 dokumenty standaryzacyjne <code>RFC 8955<\/code> (dla IPv4) i <code>RFC 8956<\/code> (dla IPv6), kt\u00f3re zast\u0105pi\u0142y wcze\u015bniejsze <code>RFC 5575<\/code>.<\/p>\n<h2>Czym jest FlowSpec?<\/h2>\n<p>FlowSpec wprowadza do BGP nowy rodzaj informacji. Standardowo BGP rozg\u0142asza trasy do prefiks\u00f3w (czyli grup adres\u00f3w). Tutaj zamiast trasy rozg\u0142asza si\u0119 opis przep\u0142ywu ruchu \u2014 w terminologii BGP jest to <code>NLRI<\/code> (Network Layer Reachability Information, czyli informacja o osi\u0105galno\u015bci w sieci). Regu\u0142y przenosi wieloprotoko\u0142owy BGP (MP-BGP) w rodzinie adres\u00f3w <code>AFI 1<\/code> z numerem <code>SAFI 133<\/code> dla IPv4 unicast (oraz <code>SAFI 134<\/code> dla VPNv4).<\/p>\n<p>Dzi\u0119ki temu wystarczy raz rozg\u0142osi\u0107 regu\u0142\u0119 z jednego miejsca (kontrolera), a trafia ona automatycznie do wszystkich router\u00f3w brzegowych, kt\u00f3re s\u0105 klientami FlowSpec. Ka\u017cdy z nich zapisuje j\u0105 sprz\u0119towo (zwykle w pami\u0119ci TCAM), wi\u0119c filtrowanie odbywa si\u0119 szybko, na poziomie sprz\u0119tu.<\/p>\n<p>G\u0142\u00f3wne zastosowanie FlowSpec to <strong>precyzyjne odpieranie atak\u00f3w <a href=\"https:\/\/www.sycope.com\/pl\/post\/dictionary-item\/dos-denial-of-service\">DoS<\/a> i <a href=\"https:\/\/www.sycope.com\/pl\/post\/dictionary-item\/ddos-distributed-denial-of-service\">DDoS<\/a><\/strong> (czyli pr\u00f3b zalania us\u0142ugi ruchem, by przesta\u0142a dzia\u0142a\u0107). Pozwala wskaza\u0107 i obs\u0142u\u017cy\u0107 dok\u0142adnie ten szkodliwy ruch \u2014 na przyk\u0142ad konkretny port UDP bior\u0105cy udzia\u0142 w ataku \u2014 bez odcinania ca\u0142ego atakowanego adresu.<\/p>\n<h2>Jak dzia\u0142a FlowSpec? Z czego sk\u0142ada si\u0119 regu\u0142a<\/h2>\n<p>Pojedyncza regu\u0142a w <code>RFC 8955<\/code> mo\u017ce mie\u0107 do dwunastu kryteri\u00f3w dopasowania. Pakiet pasuje do regu\u0142y dopiero wtedy, gdy spe\u0142nia <strong>wszystkie<\/strong> obecne kryteria naraz (logiczne AND). Dost\u0119pne kryteria to:<\/p>\n<ul>\n<li><strong>Typ 1 \/ 2<\/strong> \u2014 adres (prefiks) docelowy i \u017ar\u00f3d\u0142owy.<\/li>\n<li><strong>Typ 3<\/strong> \u2014 numer protoko\u0142u IP (np. TCP, UDP, <a href=\"https:\/\/www.sycope.com\/pl\/post\/dictionary-item\/icmp\">ICMP<\/a>).<\/li>\n<li><strong>Typ 4<\/strong> \u2014 port \u017ar\u00f3d\u0142owy <strong>lub<\/strong> docelowy; kryterium pasuje, je\u015bli wskazana warto\u015b\u0107 odpowiada kt\u00f3remukolwiek z nich.<\/li>\n<li><strong>Typ 5<\/strong> \u2014 wy\u0142\u0105cznie port docelowy.<\/li>\n<li><strong>Typ 6<\/strong> \u2014 wy\u0142\u0105cznie port \u017ar\u00f3d\u0142owy.<\/li>\n<li><strong>Typ 7 \/ 8<\/strong> \u2014 typ i kod <a href=\"https:\/\/www.sycope.com\/pl\/post\/dictionary-item\/icmp\">ICMP<\/a>.<\/li>\n<li><strong>Typ 9<\/strong> \u2014 flagi TCP (np. SYN, ACK).<\/li>\n<li><strong>Typ 10<\/strong> \u2014 ca\u0142kowita d\u0142ugo\u015b\u0107 pakietu.<\/li>\n<li><strong>Typ 11<\/strong> \u2014 pole DSCP (znacznik klasy ruchu).<\/li>\n<li><strong>Typ 12<\/strong> \u2014 bity fragmentacji (DF, IsF, FF, LF).<\/li>\n<\/ul>\n<p>Porty, d\u0142ugo\u015bci i numery protoko\u0142\u00f3w mo\u017cna zapisywa\u0107 z por\u00f3wnaniami (<code>=<\/code>, <code>&gt;<\/code>, <code>&lt;<\/code> i ich kombinacjami). Dzi\u0119ki temu regu\u0142a obejmie np. zakres port\u00f3w albo list\u0119 warto\u015bci, a nie tylko jedn\u0105 liczb\u0119.<\/p>\n<h2>Jakie akcje obs\u0142uguje FlowSpec?<\/h2>\n<p>Akcj\u0119, czyli to, co router ma zrobi\u0107 z pasuj\u0105cym ruchem, przenosz\u0105 tzw. rozszerzone spo\u0142eczno\u015bci BGP (Traffic Filtering Action Extended Communities). Najwa\u017cniejsze z nich:<\/p>\n<ul>\n<li><strong>traffic-rate-bytes<\/strong> (<code>0x8006<\/code>) \u2014 ogranicza pr\u0119dko\u015b\u0107 w bajtach na sekund\u0119. Warto\u015b\u0107 <code>0<\/code> oznacza <strong>odrzucenie ca\u0142ego pasuj\u0105cego ruchu<\/strong> (drop), czyli zwyk\u0142y blok.<\/li>\n<li><strong>traffic-rate-packets<\/strong> (<code>0x800c<\/code>) \u2014 ogranicza pr\u0119dko\u015b\u0107 w pakietach na sekund\u0119 (dodane w RFC 8955).<\/li>\n<li><strong>traffic-action<\/strong> (<code>0x8007<\/code>) \u2014 bity <code>T<\/code> (terminal) i <code>S<\/code> (sample), pozwalaj\u0105ce pr\u00f3bkowa\u0107 i logowa\u0107 pasuj\u0105cy ruch.<\/li>\n<li><strong>rt-redirect<\/strong> (<code>0x8008<\/code> \/ <code>0x8108<\/code> \/ <code>0x8208<\/code>) \u2014 przekierowuje ruch do osobnej instancji VRF, np. do centrum oczyszczania ruchu (scrubbing) albo do analizy.<\/li>\n<li><strong>traffic-marking<\/strong> (<code>0x8009<\/code>) \u2014 zmienia warto\u015b\u0107 pola DSCP w pasuj\u0105cych pakietach.<\/li>\n<\/ul>\n<p>W praktyce daje to trzy g\u0142\u00f3wne sposoby reakcji: <strong>drop<\/strong> (odrzu\u0107), <strong>rate-limit<\/strong> (ogranicz pr\u0119dko\u015b\u0107) oraz <strong>redirect<\/strong> (przekieruj do dalszej obr\u00f3bki). To wi\u0119cej ni\u017c prosty wyb\u00f3r \u201ewszystko albo nic\u201d.<\/p>\n<h2>Walidacja regu\u0142 FlowSpec<\/h2>\n<p>Skoro regu\u0142a rozsy\u0142a si\u0119 sama po sieci, kto\u015b m\u00f3g\u0142by spr\u00f3bowa\u0107 rozg\u0142osi\u0107 regu\u0142\u0119 blokuj\u0105c\u0105 cudzy ruch. Aby temu zapobiec, <code>RFC 8955<\/code> opisuje procedur\u0119 sprawdzania (walidacji) odebranych regu\u0142. Regu\u0142a jest uznawana za poprawn\u0105 m.in. wtedy, gdy:<\/p>\n<ol>\n<li>zawiera kryterium adresu (prefiksu) docelowego;<\/li>\n<li>nadawca regu\u0142y jest jednocze\u015bnie \u017ar\u00f3d\u0142em najlepszej trasy unicast do tego adresu;<\/li>\n<li>nie ma bardziej szczeg\u00f3\u0142owych tras unicast z innego systemu autonomicznego (AS), kt\u00f3re kolidowa\u0142yby z prefiksem regu\u0142y.<\/li>\n<\/ol>\n<p>W skr\u00f3cie: regu\u0142\u0119 dla danego celu mo\u017ce rozg\u0142osi\u0107 zasadniczo tylko ten s\u0105siad, kt\u00f3ry zna do niego najlepsz\u0105 tras\u0119. Ma to znaczenie zw\u0142aszcza przy wymianie regu\u0142 mi\u0119dzy operatorami (mi\u0119dzy r\u00f3\u017cnymi AS).<\/p>\n<h2>Czym FlowSpec r\u00f3\u017cni si\u0119 od RTBH?<\/h2>\n<p><strong><a href=\"https:\/\/www.sycope.com\/pl\/post\/dictionary-item\/blackholing-rtbh\">RTBH<\/a> (Remotely Triggered Black Hole, czyli zdalnie wyzwalana czarna dziura)<\/strong> to starsza technika. Dla atakowanego adresu rozg\u0142asza si\u0119 tras\u0119 z um\u00f3wionym znacznikiem (cz\u0119sto <code>:666<\/code>), kt\u00f3ra kieruje ca\u0142y ruch do tego adresu do <code>null<\/code> \u2014 czyli donik\u0105d. To chroni infrastruktur\u0119 przed przeci\u0105\u017ceniem, ale ma powa\u017cn\u0105 wad\u0119: <strong>odcina te\u017c ruch legalny<\/strong>. Atakowany host staje si\u0119 ca\u0142kowicie nieosi\u0105galny, wi\u0119c w praktyce robi za atakuj\u0105cego to, o co mu chodzi\u0142o.<\/p>\n<p>FlowSpec dzia\u0142a znacznie precyzyjniej:<\/p>\n<ul>\n<li>filtruje po wielu kryteriach (adres, protok\u00f3\u0142, porty, d\u0142ugo\u015b\u0107 pakietu), a nie tylko po ca\u0142ym adresie docelowym;<\/li>\n<li>pozwala ograniczy\u0107 pr\u0119dko\u015b\u0107 lub przekierowa\u0107 ruch, a nie tylko go odrzuci\u0107;<\/li>\n<li>blokuje wy\u0142\u0105cznie ruch pasuj\u0105cy do wzorca ataku, a reszta us\u0142ugi dzia\u0142a dalej.<\/li>\n<\/ul>\n<p>Istnieje te\u017c wariant <strong>Destination-based <a href=\"https:\/\/www.sycope.com\/pl\/post\/dictionary-item\/blackholing-rtbh\">RTBH<\/a> realizowany przez FlowSpec<\/strong> oraz <strong>S\/RTBH<\/strong> (filtrowanie po adresie \u017ar\u00f3d\u0142owym). FlowSpec daje jednak najwi\u0119cej kontroli \u2014 kosztem wi\u0119kszej z\u0142o\u017cono\u015bci konfiguracji.<\/p>\n<h2>Dlaczego FlowSpec jest wa\u017cny dla bezpiecze\u0144stwa i monitoringu sieci?<\/h2>\n<p>FlowSpec domyka p\u0119tl\u0119: wykryj atak, zareaguj. Systemy detekcji oparte na telemetrii przep\u0142yw\u00f3w (<a href=\"https:\/\/www.sycope.com\/pl\/post\/dictionary-item\/netflow\">NetFlow<\/a>, <a href=\"https:\/\/www.sycope.com\/pl\/post\/dictionary-item\/ipfix\">IPFIX<\/a>, <a href=\"https:\/\/www.sycope.com\/pl\/post\/dictionary-item\/sflow\">sFlow<\/a>) widz\u0105 anomali\u0119 \u2014 nietypowy wolumen ruchu, podejrzane porty albo sygnatur\u0119 znanego ataku. Wtedy kontroler (np. detektor <a href=\"https:\/\/www.sycope.com\/pl\/post\/dictionary-item\/ddos-distributed-denial-of-service\">DDoS<\/a>) rozg\u0142asza odpowiedni\u0105 regu\u0142\u0119 FlowSpec, kt\u00f3ra natychmiast trafia do router\u00f3w brzegowych i ogranicza atak ju\u017c na wej\u015bciu do sieci.<\/p>\n<p>Dla zespo\u0142\u00f3w <a href=\"https:\/\/www.sycope.com\/pl\/post\/dictionary-item\/soc-security-operations-center\">SOC<\/a>, <a href=\"https:\/\/www.sycope.com\/pl\/post\/dictionary-item\/ndr-network-detection-and-response\">NDR<\/a> i sieciowych liczy si\u0119 to, \u017ce:<\/p>\n<ul>\n<li>reakcja jest <strong>rozproszona i szybka<\/strong> \u2014 jedna regu\u0142a rozchodzi si\u0119 przez BGP na ca\u0142\u0105 flot\u0119 router\u00f3w;<\/li>\n<li>akcje <strong>sample\/log<\/strong> oraz redirect pozwalaj\u0105 nie tylko odrzuci\u0107 ruch, ale go obserwowa\u0107 i analizowa\u0107 (np. po przekierowaniu do scrubbingu);<\/li>\n<li>regu\u0142y s\u0105 <strong>precyzyjne i odwracalne<\/strong> \u2014 mo\u017cna je zaw\u0119zi\u0107, a po ataku wycofa\u0107, ograniczaj\u0105c wp\u0142yw na ruch legalny.<\/li>\n<\/ul>\n<p>Trzeba jednak pami\u0119ta\u0107 o ryzykach. \u0179le napisana regu\u0142a mo\u017ce przez pomy\u0142k\u0119 odci\u0105\u0107 ruch produkcyjny. Pami\u0119\u0107 TCAM na routerach jest ograniczona, wi\u0119c regu\u0142 nie da si\u0119 dodawa\u0107 w niesko\u0144czono\u015b\u0107. Wymiana regu\u0142 mi\u0119dzy operatorami wymaga zaufania i ustale\u0144 \u2014 cz\u0119\u015b\u0107 sieci wci\u0105\u017c nie przyjmuje regu\u0142 FlowSpec od swoich klient\u00f3w.<\/p>\n<h2>Dowiedz si\u0119 wi\u0119cej<\/h2>\n<ul>\n<li><a href=\"https:\/\/www.sycope.com\/pl\/post\/zaawansowane-metody-ochrony-przed-atakami-ddos-w-frimach\">Zaawansowane metody ochrony przed atakami DDoS w firmach<\/a> \u2014 Opisuje metody ochrony, w kt\u00f3rych FlowSpec mo\u017ce blokowa\u0107 ruch DDoS na poziomie sieci.<\/li>\n<li><a href=\"https:\/\/www.sycope.com\/pl\/post\/czym-jest-netflow-i-jak-wykorzystuje-sie-go-w-praktyce\">Czym jest NetFlow i jak ten protok\u00f3\u0142 jest wykorzystywany w praktyce?<\/a> \u2014 <a href=\"https:\/\/www.sycope.com\/pl\/post\/dictionary-item\/netflow\">NetFlow<\/a> dostarcza dane o ruchu, kt\u00f3re mog\u0105 inicjowa\u0107 regu\u0142y FlowSpec.<\/li>\n<li><a href=\"https:\/\/www.sycope.com\/pl\/post\/dictionary-item\/scrubbing-center\">Scrubbing Center<\/a> \u2014 Scrubbing Center filtruje ataki, a FlowSpec mo\u017ce wspiera\u0107 selektywne odrzucanie ruchu.<\/li>\n<\/ul>\n","protected":false},"featured_media":0,"template":"","class_list":["post-4767","dictionary-item","type-dictionary-item","status-publish","hentry"],"acf":{"tytul":"FlowSpec","ikona":"","krotki_opis":"Rozszerzenie BGP, kt\u00f3re rozsy\u0142a po sieci precyzyjne regu\u0142y filtrowania ruchu wraz z akcj\u0105 (odrzu\u0107, ogranicz pr\u0119dko\u015b\u0107 lub przekieruj); u\u017cywane do dok\u0142adnego odpierania DDoS."},"_links":{"self":[{"href":"https:\/\/www.sycope.com\/pl\/wp-json\/wp\/v2\/dictionary-item\/4767","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/www.sycope.com\/pl\/wp-json\/wp\/v2\/dictionary-item"}],"about":[{"href":"https:\/\/www.sycope.com\/pl\/wp-json\/wp\/v2\/types\/dictionary-item"}],"wp:attachment":[{"href":"https:\/\/www.sycope.com\/pl\/wp-json\/wp\/v2\/media?parent=4767"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}