Konfiguracja MikroTik – Część 42: Zaawansowana konfiguracja BGP z wykorzystaniem filtrowania, rozgłaszania i redundancji
Konfiguracja MikroTik – Część 42: Zaawansowana konfiguracja BGP z wykorzystaniem filtrowania, rozgłaszania i redundancji
Seria poświęcona konfiguracji MikroTik dociera do kolejnego etapu – tym razem zajmiemy się zaawansowaną konfiguracją protokołu BGP (Border Gateway Protocol). BGP, będący filarem Internetu, coraz częściej znajduje zastosowanie również w sieciach enterprise, sieciach ISP oraz środowiskach typu multi-homing i w scenariuszach z redundancją. W tym artykule przeprowadzimy konfigurację BGP od podstaw po elementy zaawansowane, w tym filtrowanie prefiksów, routowanie warunkowe i ochronę przed złośliwymi trasami.
1. Wprowadzenie do BGP w MikroTik
MikroTik obsługuje BGP od wersji 3.x RouterOS i od tego czasu zyskał wiele funkcji znanych z rozwiązań klasy operatorskiej. W środowiskach korporacyjnych oraz sieciach ISP, BGP pozwala:
- wymieniać trasy między niezależnymi systemami autonomicznymi (AS),
- wdrażać polityki routingu oparte o filtrację, AS-PATH, MED, communities,
- obsługiwać multi-homing i redundantne łącza,
- kontrolować ogłaszane i akceptowane prefiksy.

2. Konfiguracja podstawowa BGP na MikroTik
Aby uruchomić BGP między dwoma MikroTikami (lub MikroTik i dostawcą), potrzebujemy:
- przypisać numer AS (Autonomous System Number),
- skonfigurować sąsiada (peer),
- zdecydować, które prefiksy rozgłaszać.
Przykład podstawowej konfiguracji:
/routing bgp instance
add name=default as=64500 router-id=10.0.0.1
/routing bgp peer
add name=peer1 remote-address=192.0.2.1 remote-as=64501 ttl=default update-source=loopback
/ip route
add dst-address=10.100.0.0/24 type=unicast
/routing bgp network
add network=10.100.0.0/24 synchronize=no
3. Filtrowanie przychodzących i wychodzących tras
Filtrowanie to kluczowy element każdej implementacji BGP. Zapobiega rozgłaszaniu nieautoryzowanych prefiksów i pozwala selektywnie akceptować trasy od sąsiadów.
Przykład filtrowania tras wychodzących (out-filter):
/routing filter
add chain=out-filter prefix=10.100.0.0/24 action=accept
add chain=out-filter action=discard
/routing bgp peer
set peer1 out-filter=out-filter
Przykład filtrowania tras przychodzących (in-filter):
/routing filter
add chain=in-filter prefix=192.168.100.0/24 action=accept
add chain=in-filter action=discard
/routing bgp peer
set peer1 in-filter=in-filter
4. Wykorzystanie AS-PATH i communities
Zaawansowane polityki routingu opierają się na manipulacji atrybutami BGP:
- AS-PATH – można użyć do unikania pętli lub preferowania tras krótszych,
- BGP communities – pozwalają tagować trasy do dalszej obróbki.
Filtrowanie na podstawie AS-PATH:
/routing filter
add chain=in-filter bgp-as-path="64502" action=discard
Przykład przypisania community do prefiksu:
/routing filter
add chain=out-filter prefix=10.200.0.0/24 set-bgp-communities=64500:100
5. Redundancja z BGP – konfiguracja ECMP i failover
Dzięki BGP możliwe jest wykorzystanie wielu łączy do Internetu z dynamiczną selekcją najlepszego. MikroTik wspiera ECMP (Equal Cost Multi Path) oraz failover oparty o route reflectorów i odległość trasy (distance, preference).
Dodanie tras o różnych priorytetach:
/ip route
add dst-address=0.0.0.0/0 gateway=192.0.2.1 distance=1
add dst-address=0.0.0.0/0 gateway=198.51.100.1 distance=2
Aktywacja równoważenia ruchu:
/routing bgp instance
set default redistribute-connected=yes redistribute-static=yes
6. Ochrona BGP – TTL, password, prefix validation
BGP jako protokół zewnętrzny musi być chroniony:
- TTL security – ochrona przed spoofingiem,
- BGP MD5 password – szyfrowane sesje między peerami,
- ROA/RPKI validation – walidacja prefiksów z systemu RPKI.
Przykład z hasłem BGP:
/routing bgp peer
set peer1 password=StrongPassword123
TTL:
/routing bgp peer
set peer1 ttl=1
7. Wizualizacja i monitoring tras BGP
Aby monitorować trasy BGP, MikroTik oferuje:
/routing bgp advertisements– podgląd tras wysyłanych do peerów,/routing bgp received– podgląd tras odebranych,/tool graphinglub SNMP – wykresy tras i sesji.
Dodatkowo, integracja z Prometheus + Grafana (omówiona wcześniej) pozwala na monitorowanie sesji BGP, up/down state, liczby prefiksów i tras.
8. Podsumowanie
Implementacja BGP na MikroTikach daje pełną kontrolę nad routingiem zarówno w środowiskach lokalnych, jak i w dostępie do Internetu. Możliwość definiowania polityk routingu, filtrowania prefiksów i wprowadzenia redundancji sprawia, że MikroTik nie ustępuje wielu rozwiązaniom klasy operatorskiej. Przy odpowiednim zaplanowaniu – z filtrami, hasłami i kontrolą AS-PATH – BGP staje się bezpieczne, skalowalne i niezawodne.






