Co to jest bogon?
Bogon to prefiks IP, którego nie powinno być w globalnym routingu: adresy prywatne, zarezerwowane i nieprzydzielone. Omawiamy martiany i fullbogony.
Ostatnia aktualizacja:
Bogon to prefiks IP, którego nie powinno być w globalnej tablicy routingu, ponieważ obejmuje adresy prywatne, zarezerwowane lub jeszcze nieprzydzielone przez IANA i rejestry regionalne. Jeśli taki prefiks pojawia się w ogłoszeniu BGP, jest to silny sygnał błędnej konfiguracji, wycieku tras lub próby nadużycia, na przykład rozsyłania spamu czy ataku ze sfałszowanym adresem źródłowym. Dlatego operatorzy filtrują bogony zarówno na wejściu sesji BGP, jak i w ruchu pakietowym.
Bogony, martiany i adresy specjalnego przeznaczenia
Pojęcia te się zazębiają, choć nie są tożsame. Martian to adres źródłowy lub docelowy, którego nie da się poprawnie routować w publicznym internecie, na przykład pętla zwrotna 127.0.0.0/8, link-local 169.254.0.0/16 czy multicast 224.0.0.0/4. Adresy specjalnego przeznaczenia są spisane w rejestrze IANA oraz w RFC 6890, które ujednolica wcześniejsze dokumenty. Bogon to pojęcie szersze. Obejmuje martiany oraz całą przestrzeń, która formalnie nie została jeszcze nikomu przydzielona.
- Adresy prywatne RFC 1918: 10.0.0.0/8, 172.16.0.0/12, 192.168.0.0/16.
- Pętla zwrotna 127.0.0.0/8 oraz link-local 169.254.0.0/16 (RFC 3927).
- CGNAT 100.64.0.0/10 (RFC 6598) oraz adresy dokumentacyjne, np. 192.0.2.0/24 (RFC 5737).
- IPv6: ULA fc00::/7 (RFC 4193), link-local fe80::/10, dokumentacyjne 2001:db8::/32.
- Przestrzeń jeszcze nieprzydzielona przez IANA danemu rejestrowi regionalnemu.
Bogony klasyczne kontra fullbogony
Listy bogonów dzieli się na dwie kategorie. Bogony klasyczne to prefiksy zdefiniowane w dokumentach RFC, które się nie zmieniają: przestrzeń prywatna, zarezerwowana i dokumentacyjna. Fullbogony to zbiór znacznie obszerniejszy, który dodatkowo obejmuje całą przestrzeń przydzieloną już rejestrom regionalnym przez IANA, ale jeszcze nierozdysponowaną końcowym operatorom. Fullbogony zmieniają się często, niekiedy codziennie, w miarę jak RIR-y przydzielają nowe bloki. Nie należy ich więc wpisywać na sztywno, lecz pobierać dynamicznie, na przykład z list Team Cymru przez BGP, DNS lub HTTP.
Jak filtrować bogony
Filtrowanie działa na dwóch poziomach. W warstwie tras stosuje się prefix-listy lub filtry RPSL na sesjach BGP, aby odrzucać ogłoszenia obejmujące przestrzeń bogon, niezależnie od ich AS_PATH. W warstwie pakietów stosuje się listy ACL oraz mechanizm uRPF, który odrzuca ruch ze sfałszowanym adresem źródłowym, zgodnie z zaleceniem BCP 38 (RFC 2827) przeciw spoofingowi. Bogony klasyczne można utrzymywać statycznie, ale fullbogony wymagają automatyzacji, bo ręczna aktualizacja jest niewykonalna. Coraz częściej, obok filtrowania samych bogonów, stosuje się też walidację pochodzenia tras RPKI, która chroni przed znacznie szerszą klasą nieprawidłowych ogłoszeń.
Bogony w sieci AS202520 SkyPass
W sieci AS202520 SkyPass filtrowanie bogonów i martianów jest standardowym elementem każdej sesji. Na portach tranzytu IP oraz na sesjach peeringowych w polskich punktach wymiany ruchu (THINX, TPIX, WRIX, 1-IX) odrzucamy ogłoszenia z przestrzeni prywatnej i zarezerwowanej, stosujemy uRPF zgodnie z BCP 38 i prowadzimy walidację RPKI. Listy fullbogonów aktualizujemy automatycznie, więc nowo przydzielone bloki nie są blokowane po wprowadzeniu ich do globalnego routingu. Klienci tranzytu i zdalnego dostępu do IXP w naszych PoP-ach w Warszawie i we Wrocławiu otrzymują dzięki temu czystą tablicę tras, a ich własne prefiksy nie są mylnie traktowane jako bogony.
Najczęstsze pytania
Czym różni się bogon od martiana?
Martian to adres, którego z definicji nie da się routować w publicznym internecie, np. 127.0.0.0/8 czy 169.254.0.0/16. Bogon jest pojęciem szerszym i obejmuje martiany oraz całą przestrzeń jeszcze nieprzydzieloną przez IANA i rejestry regionalne.
Czy listy bogonów wpisuje się na stałe?
Bogony klasyczne z dokumentów RFC są stabilne i można je trzymać statycznie. Fullbogony zmieniają się jednak często, więc trzeba je pobierać dynamicznie, np. z list Team Cymru, aby nie blokować nowo przydzielonych bloków.
Czym filtrowanie bogonów różni się od RPKI?
Filtrowanie bogonów odrzuca przestrzeń, która nigdy nie powinna być routowana. RPKI weryfikuje, czy konkretny system autonomiczny ma prawo ogłaszać dany przydzielony prefiks. Oba mechanizmy uzupełniają się i warto stosować je razem.
Co to jest BCP 38 i jak wiąże się z bogonami?
BCP 38 (RFC 2827) to zalecenie filtrowania na brzegu sieci ruchu ze sfałszowanym adresem źródłowym. W praktyce realizuje się je przez uRPF i listy ACL, które blokują m.in. pakiety pochodzące z przestrzeni bogon.
