Co to jest BGP community?
BGP community to znacznik dołączany do trasy, który niesie informację lub wyzwala akcję routingu, np. zmianę local-pref albo prepend (RFC 1997 i 8092).
Ostatnia aktualizacja:
BGP community to opcjonalny atrybut tranzytowy dołączany do ogłoszenia trasy. Działa jak etykieta, która przenosi informację lub wyzwala akcję po stronie sąsiada. Sam w sobie nie zmienia routingu, ale operatorzy uzgadniają, co dana wartość oznacza, dzięki czemu jedna trasa może nieść instrukcje typu 'nie rozgłaszaj tej trasy w danym regionie' albo 'obniż dla niej local-pref'. Communities to podstawowe narzędzie inżynierii ruchu w BGP, bo pozwalają sygnalizować politykę bez ręcznej rekonfiguracji filtrów po obu stronach sesji.
Standard, extended i large communities
Klasyczne standard community (RFC 1997) to 32-bitowa wartość zapisywana jako para asn:wartosc, na przykład 64500:100. Sprawdza się dobrze dla 16-bitowych numerów AS, ale staje się niewygodne dla 32-bitowych ASN, bo numer AS nie mieści się w 16-bitowej połowie pola. Dlatego powstały large communities (RFC 8092) o łącznej długości 96 bitów, zapisywane jako trzy 32-bitowe składowe asn:funkcja:parametr. Są też extended communities (RFC 4360), używane głównie w MPLS/VPN, takie jak Route Target i Route Origin.
- Standard community (RFC 1997): 32 bity, format asn:wartosc, np. 64500:666.
- Large community (RFC 8092): 96 bitów, format asn:funkcja:parametr, w pełni obsługuje 32-bitowe ASN.
- Extended community (RFC 4360): 64 bity, stosowane w VPN MPLS jako Route Target i Route Origin.
- Well-known communities, np. NO_EXPORT, NO_ADVERTISE i NO_EXPORT_SUBCONFED, mają znaczenie zdefiniowane globalnie.
- Trasa może nieść wiele community jednocześnie, a polityki przetwarzają każde z nich niezależnie.
Community informacyjne i akcyjne
W praktyce community mają dwie role. Community informacyjne opisują pochodzenie trasy, na przykład w którym mieście lub na którym punkcie wymiany ruchu została nauczona oraz czy przyszła od klienta, peera czy z tranzytu. Community akcyjne to instrukcje, które router odbiorcy interpretuje przez własne route-mapy i zamienia na konkretną operację, na przykład zmianę local-pref, prepend ścieżki AS w kierunku wybranych sąsiadów, blackholing prefiksu albo selektywne ogłoszenie lub wstrzymanie rozgłaszania trasy. Znaczenie wartości akcyjnych nie jest uniwersalne, więc każdy operator publikuje własną tabelę community w PeeringDB lub w swojej dokumentacji.
Jak community wpływają na wybór trasy
Community nie są atrybutem w algorytmie wyboru najlepszej trasy w BGP, ale działają jak mechanizm wyzwalający, który ten wybór modyfikuje pośrednio. Klient wysyła trasę z dołączonym znacznikiem, a polityka operatora dopasowuje ten znacznik i ustawia atrybut wpływający na decyzję, najczęściej local-pref albo liczbę prependów. Dzięki temu klient może sterować ruchem wychodzącym i przychodzącym, nie mając dostępu do konfiguracji sieci dostawcy. Community są przenoszone dalej tylko wtedy, gdy zezwala na to polityka, dlatego sąsiad zwykle odfiltrowuje obce community i zostawia jedynie te, które potrafi obsłużyć.
BGP community w sieci AS202520 SkyPass
W AS202520 SkyPass community to standardowy sposób, w jaki klienci usług IP transit i peeringu sterują swoim ruchem bez kontaktu z naszym NOC. Publikujemy zestaw community akcyjnych do zmiany local-pref, prependowania ścieżki AS w kierunku wybranych upstreamów oraz wyzwalania blackholingu w ramach ochrony DDoS, a także community informacyjne oznaczające, czy trasa przyszła z THINX, TPIX, WRIX, 1-IX, czy z tranzytu. Obsługujemy zarówno standard, jak i large community, co ułatwia integrację sieciom z 32-bitowymi numerami AS korzystającym z naszych PoP w Warszawie i we Wrocławiu.
Najczęstsze pytania
Czym różni się standard od large community?
Standard community (RFC 1997) ma 32 bity i format asn:wartosc, w którym 32-bitowy numer AS się nie mieści. Large community (RFC 8092) ma 96 bitów i format asn:funkcja:parametr, więc poprawnie obsługuje 32-bitowe ASN.
Czy community zmieniają wybór najlepszej trasy?
Nie bezpośrednio. Community nie są atrybutem w algorytmie best-path, ale wyzwalają polityki, które ustawiają local-pref, MED czy prepend, a te już wpływają na wybór trasy.
Co to jest blackhole community?
To community akcyjne, które sygnalizuje sąsiadowi, że ruch do danego prefiksu ma zostać odrzucony, zwykle przez RTBH. Stosuje się je do mitygacji ataków DDoS na konkretny adres.
Skąd wiadomo, jakie community obsługuje dostawca?
Operator publikuje listę obsługiwanych community w PeeringDB lub we własnej dokumentacji. Bez tej tabeli wartości akcyjne są nieprzewidywalne, bo ich znaczenie nie jest standaryzowane.
