EIGRP potrafi „sprzątać" tablice routingu, aby nie były przeładowane tysiącami szczegółowych wpisów. Służy do tego sumaryzacja. Stary mechanizm auto-summary działał samoczynnie, ale często psuł routing w nowoczesnych sieciach, dlatego zawsze go wyłączamy (no auto-summary).
Zamiast tego stosujemy sumaryzację ręczną. Pozwala ona administratorowi powiedzieć: „Dla całego biura w Gdańsku wysyłaj tylko jedną informację: 10.1.0.0/16". Dzięki temu pozostałe routery w firmie mają mniej danych do przetworzenia, co sprawia, że cała sieć działa szybciej i jest znacznie bardziej odporna na drobne zmiany topologiczne w pojedynczych pokojach.
Najczęstszy problem inżyniera to brak sąsiedztwa w EIGRP. Pierwsza rzecz do sprawdzenia? Numer Systemu Autonomicznego (AS). Jeśli na jednym routerze wpiszesz 100, a na drugim 200 — nigdy się nie „zobaczą". To tak, jakby dwaj ludzie próbowali rozmawiać na innych częstotliwościach radiowych.
Kolejnym „podejrzanym" są parametry metryki (K-values). Muszą być identyczne na obu końcach kabla. Zawsze sprawdzaj też, czy porty mają adresy z tej samej sieci i czy Twoje listy ACL nie blokują przypadkiem ruchu multicastowego (adres 224.0.0.10). Polecenie show ip eigrp neighbors to Twój najlepszy przyjaciel w takich sytuacjach.
BGP (Border Gateway Protocol) to absolutny król globalnej sieci. To on decyduje, którędy Twoje maile płyną z Polski do Japonii. Nie jest to zwykły protokół — to narzędzie polityczne i biznesowe, które łączy ze sobą całe Systemy Autonomiczne (AS) operatorów internetowych.
W BGP nie szukamy najkrótszej drogi w sensie technicznym (liczba skoków), ale drogi „najbardziej optymalnej" zgodnie z umowami między firmami. To protokół o gigantycznej skali, zdolny do obsługi tablicy routingu zawierającej blisko milion wpisów, co czyni go najbardziej złożonym i najważniejszym elementem nowoczesnej telekomunikacji.
Internet nie jest jedną siecią — to zbiór tysięcy niezależnych sieci zwanych Systemami Autonomicznymi (AS). Każdy AS ma swojego właściciela (np. Orange, Google, uczelnia) i własną politykę zarządzania. Aby taki „kraj" mógł rozmawiać z innym, potrzebuje unikalnego paszportu: numeru ASN.
Numery te (np. AS 1234) są przydzielane przez globalne organizacje. BGP używa tych numerów, aby wiedzieć, przez czyje „terytorium" przepływają dane. Jeśli Twoja firma staje się na tyle duża, że ma kilku dostawców internetu, prawdopodobnie sama będzie musiała wystąpić o własny numer AS i zacząć „rozmawiać" w języku BGP.
BGP nie patrzy na dystans (metrykę). On patrzy na ścieżkę (Path Vector). Każda informacja o trasie niesie ze sobą listę Systemów Autonomicznych, przez które przeszła. To jak zbieranie pieczątek w paszporcie na każdej granicy.
Ten mechanizm (atrybut AS_PATH) to genialny sposób na unikanie pętli. Jeśli router BGP zobaczy na liście swój własny numer AS, od razu wie: „Oho, ten pakiet już tu był i zaczął krążyć w kółko!". Wtedy natychmiast odrzuca taką informację, dbając o to, aby internet nigdy się nie zapętlił na poziomie globalnym.
Siła BGP leży w jego elastyczności. Wewnątrz firmy (IGP) chcemy po prostu „najszybciej". W BGP chcemy „zgodnie z planem". Administrator może kazać routerowi: „Wysyłaj ruch do Google przez łącze A, bo jest tam darmowy peering, a ruch do Netflixa przez łącze B, bo mamy tam lepszą umowę".
Dzięki atrybutom możemy omijać konkretne kraje lub faworyzować partnerów biznesowych. BGP to protokół, w którym decyduje człowiek i jego strategie ekonomiczne, a nie tylko suchy algorytm matematyczny. To narzędzie do zarządzania ruchem w skali całej planety.
W BGP nie ma automatyki przy szukaniu sąsiadów. To zbyt niebezpieczne na poziomie globalnym. Każdego sąsiada (peera) musisz wpisać w konfigurację ręcznie, podając jego adres IP i numer AS. To świadome działanie dwóch administratorów, którzy zgadzają się na wymianę danych.
Do rozmowy BGP używa solidnego protokołu TCP (port 179). Dzięki temu routery nie muszą stać obok siebie — sesja BGP może być zestawiona między Warszawą a Nowym Jorkiem, o ile tylko istnieje między nimi łączność IP. TCP gwarantuje, że żadna informacja o trasach nie zginie i dotrze w całości do celu.
BGP ma dwie twarze w zależności od tego, z kim rozmawiamy. Gdy łączymy się ze światem zewnętrznym (innym numerem AS), mówimy o eBGP (External). To tutaj dzieje się cała magia internetowego routingu.
Wewnątrz naszej firmy stosujemy iBGP (Internal). Służy ono do tego, aby wszystkie nasze routery dowiedziały się o trasach, które poznaliśmy od świata zewnętrznego. iBGP jest jak system wewnętrznej poczty w firmie, który rozsyła ważne wiadomości od klientów do właściwych działów wewnątrz budynku.
iBGP ma jedną rygorystyczną zasadę: unikanie „plotkowania". Router, który dostał informację o trasie od kolegi z iBGP, nie może jej podać dalej innemu koledze z iBGP (zasada split-horizon). Chroni to przed zapętleniem wewnątrz firmy.
Skutkiem tego jest wymóg full mesh — każdy router iBGP musi być połączony z każdym innym routerem iBGP bezpośrednią sesją. W wielkich sieciach bywa to uciążliwe, dlatego inżynierowie stosują „wzmacniacze sygnału", czyli route reflector, które pozwalają na obejście tej zasady i zachowanie porządku w konfiguracji.
Routery BGP rozmawiają spokojnie i oszczędnie. Zaczynają od pakietu OPEN (uścisk dłoni i ustalenie zasad). Najważniejsze są pakiety UPDATE — to w nich przesyłane są nowe trasy lub wycofywane te, które przestały działać.
Jeśli wszystko jest w porządku, co chwilę wysyłane są krótkie KEEPALIVE („Jestem, żyję"). Ale jeśli pojawi się jakikolwiek błąd, router wysyła pakiet NOTIFICATION i natychmiast zrywa kontakt. To bardzo bezpieczne podejście: w BGP lepiej nie rozmawiać wcale, niż przesyłać błędne lub zmanipulowane informacje o światowych trasach.
Router BGP to wytrawny analityk. Wszystkie informacje od sąsiadów zbiera najpierw w tablicy Adj-RIB-In (to nasze „surowe dane"). Dopiero po przejściu przez filtry bezpieczeństwa i polityki firmy, najlepsze kąski trafiają do tablicy głównej Loc-RIB.
Tylko to, co uznamy za absolutnie najlepsze, trafia do głównej tablicy routingu urządzenia (IP Routing Table). Z kolei to, czym chcemy pochwalić się światu, ląduje w Adj-RIB-Out. To wieloetapowe sitowanie gwarantuje, że do internetu nie wypuścimy błędu, a sami nie damy się nabrać na „fake newsy" o topologii od innych operatorów.
Atrybuty BGP to dodatkowe parametry doklejone do każdej trasy. To one czynią ten protokół tak potężnym. Można je porównać do filtrów w sklepie internetowym: cena (koszt), czas dostawy (opóźnienie), opinie (AS_PATH).
Dzięki zmianie atrybutów administrator może dowolnie sterować ruchem. Chcesz, by paczki szły dłuższą drogą, bo jest bezpieczniejsza? Zmień atrybut. Chcesz preferować łącze od konkretnego dostawcy? Zmień atrybut. To w tych niewielkich polach danych kryje się cała władza nad przepływem informacji w globalnej sieci.
Niektóre atrybuty są tak ważne, że muszą być w każdym pakiecie BGP (Well-Known Mandatory). Najważniejsze to: AS_PATH (lista krajów po drodze), NEXT_HOP (do kogo wysłać) oraz ORIGIN (skąd router o tej trasie wie).
Są też atrybuty „uznaniowe" (Discretionary), jak np. LOCAL_PREF. Choć nie są obowiązkowe w każdym pakiecie, to każdy router BGP na świecie musi wiedzieć, co one znaczą. To wspólny język wszystkich inżynierów sieciowych, gwarantujący, że router z Chin zrozumie intencję routera z Argentyny.
Istnieją atrybuty, które nie każdy router musi znać (Optional). Dzielimy je na „przechodnie" (Transitive) — jeśli router ich nie zna, to po prostu podaje je dalej nienaruszone, oraz „nieprzechodnie" (Non-Transitive) — jeśli router ich nie rozumie, to wyrzuca je do kosza przed wysłaniem informacji dalej.
Przykładem jest MED — parametr, którym sugerujemy sąsiadowi, którędy ma wchodzić do naszej sieci. To delikatna podpowiedź: „Jeśli masz dwa kable do mnie, ten numer 1 jest moim ulubionym". To od sąsiada zależy, czy posłucha tej prośby, czy ją zignoruje.
Atrybut AS_PATH to historia podróży pakietu. Wyobraź sobie drogę: AS 200 -> AS 100 -> Moja Sieć. Przy wyborze trasy BGP zazwyczaj kieruje się zasadą: im krótsza lista numerów AS, tym lepsza trasa. To logiczne — mniej pośredników oznacza zazwyczaj mniejszą szansę na awarię i szybszą transmisję.
Ale AS_PATH to nie tylko wybór drogi. To przede wszystkim system anty-kolizyjny. Gdy router widzi swój numer na liście, wie, że wiadomość zrobiła pełne koło i musi zostać odrzucona. To prosty, a zarazem genialny sposób na utrzymanie stabilności całego internetu od kilkudziesięciu lat.
Adres NEXT_HOP w BGP wskazuje, kto jest „następny w kolejce" do dostarczenia pakietu. Ciekawostka: w BGP to nie zawsze musi być sąsiad bezpośrednio za ścianą. W sesjach iBGP adres NEXT_HOP wyuczony od świata zewnętrznego zazwyczaj zostaje niezmieniony.
Dla inżyniera oznacza to konieczność zapewnienia, aby każdy router w firmie wiedział, jak fizycznie dojść do tego adresu NEXT_HOP (zwykle używamy do tego OSPF lub EIGRP). Jeśli router nie wie, jak dotrzeć do „następnego skoku", trasa BGP mimo że poprawna, będzie bezużyteczna i nie pojawi się w tablicy routingu.
Atrybut ORIGIN informuje nas, skąd dana trasa wzięła się w systemie BGP. Mamy trzy stopnie zaufania. Najwyższy to 'i' (IGP) — oznacza trasę wpisaną świadomie przez administratora (komenda network). Drugi, rzadki już dziś, to 'e' (EGP — stary protokół).
Najniższy stopień to '?' (Incomplete). Oznacza on, że trasa została zaimportowana z innego źródła bez podania szczegółów (redystrybucja). Przy wyborze drogi router zawsze woli pewne źródło ('i') od niepewnego ('?'), co chroni nas przed przypadkowym kierowaniem ruchu przez śmieciowe lub błędne trasy.
Jeśli Twoja firma ma dwóch dostawców internetu (ISP A i ISP B), atrybut LOCAL_PREF pozwoli Ci zdecydować, którego wolisz. To parametr o zasięgu lokalnym — ustawiasz go na swoich routerach i rozsyłasz po całej firmie przez iBGP.
Działa tu zasada: im wyższa liczba, tym lepsza trasa. Jeśli dla ISP A ustawisz 200, a dla ISP B zostawisz domyślne 100 — cały ruch z Twojego biura wypłynie przez łącze A. To najpotężniejsze i najczęściej używane narzędzie do sterowania ruchem wychodzącym u abonentów biznesowych.
MED (Multi-Exit Discriminator) to atrybut, którym próbujemy zasugerować sąsiedniemu operatorowi, którędy ma do nas „wchodzić". W przeciwieństwie do LOCAL_PREF (liczba wyższa = lepsza), w MED stosujemy zasadę: liczba NIŻSZA = lepsza. To jak cena za bilet: im taniej, tym chętniej tam pójdziesz.
Pamiętaj jednak o złotej zasadzie BGP: MED to tylko prośba. Sąsiedni operator może ją zignorować i wymusić inną drogę do Twojej firmy stosując własne polityki. MED jest przydatny przy symetrycznym łączeniu dwóch operatorów wieloma połączeniami.
BGP nie wybiera trasy jednym wzorem — to wielostopniowy proces eliminacji. Router bierze wszystkie dostępne drogi do celu i po kolei porównuje atrybuty. Jeśli na pierwszym etapie jedna trasa wygrywa, reszta odpada, a my mamy zwycięzcę.
Zrozumienie tej hierarchii to „święty graal" inżyniera BGP. Znając kolejność (Weight -> Local_Pref -> AS_Path -> Origin -> MED...), wiemy dokładnie, który parametr zmienić, aby pakiety przestały płynąć drogą A i zaczęły płynąć drogą B. To precyzyjne sterowanie krwiobiegiem globalnej sieci.
Gdy router ma wiele tras, najpierw patrzy na atrybut Weight (specyfika Cisco), potem na Local Preference. Jeśli tu jest remis, decyduje długość AS_PATH (krócej = lepiej). Jeśli i tu mamy remis, patrzymy na Origin i MED. Na samym końcu, jeśli nic nie pomogło, decydują parametry techniczne jak wiek trasy lub numer IP sąsiada.
Dla administratora najważniejsze są pierwsze trzy punkty. To nimi realizujemy 95% wszystkich zadań związanych z inżynierią ruchu. Pozostałe parametry służą BGP tylko do tego, aby w każdej sytuacji udało się wyłonić JEDNĄ najlepszą ścieżkę do umieszczenia w tablicy routingu.
BGP jest starym protokołem i bazuje na zaufaniu, co wykorzystują hakerzy. Przez „BGP Hijacking" mogą oni ogłosić, że są właścicielem sieci banku i przejąć cały ruch. Aby temu zapobiec, wprowadzono RPKI (cyfrowe certyfikaty dla tras).
Dzięki RPKI Twój router może sprawdzić: „Czy ten facet, który mówi, ��e jest z AS 100 i ma tę sieć, ma na to ważny papier?". To rewolucja w bezpieczeństwie internetu — system zaufania kryptograficznego, który powoli eliminuje największą bolączkę globalnej sieci, czyniąc ją odporną na kradzieże tożsamości sieciowej.
Uruchomienie BGP zaczynamy od router bgp [ASN]. Potem definiujemy sąsiada: neighbor [IP] remote-as [ASN_sąsiada]. Dopiero gdy sesja „wstanie" (stan Established), możemy zacząć ogłaszać własne podsieci za pomocą komendy network (pamiętając o masce!).
Weryfikacja to podstawa. Polecenie show ip bgp summary pokaże Ci, czy Twój sąsiad z nami rozmawia i ile tras nam przesłał. Pamiętaj: w BGP zmiany nie zachodzą natychmiastowo jak w OSPF — tablice są gigantyczne, więc proces synchronizacji po zmianie konfiguracji może potrwać od kilku sekund do nawet minuty.
Zakończyliśmy wielką podróż po protokołach routingu. Wiemy już, jak działa szybkie EIGRP wewnątrz firmy i jak gigantyczne BGP zarządza ruchem między kontynentami. Rozumiemy znaczenie atrybutów, wpływ Systemów Autonomicznych i wagę bezpieczeństwa cyfrowego.
Ta wiedza pozwala nam spojrzeć na sieć nie jako na kable, ale jako na globalny, polityczno-ekonomiczny ekosystem. Czas na ostatni temat: jak poradzić sobie z redundancją na poziomie switchy, aby nasze kable nie tworzyły morderczych pętli rozgłoszeniowych. Przed nami świat STP.
Chcemy mieć dwa kable między przełącznikami na wypadek awarii — to świetny pomysł! Ale bez odpowiedniego protokołu, to recepta na katastrofę. W warstwie 2 pakiety nie mają licznika TTL (czasu życia), więc jeśli wpadną w pętlę, będą krążyć wiecznie, powielając się miliony razy na sekundę.
Zjawisko to nazywamy „burzą broadcastową". Przełącznik zostaje zalany milionami tych samych ramek, jego procesor skacze do 100%, a cała sieć w biurze po prostu zamiera. Żaden komputer nie może wysłać ani odebrać danych. To najgorszy rodzaj awarii lokalnej, jaki może spotkać administratora.
Abyśmy mogli bezpiecznie łączyć switche wieloma kablami, powstał STP (Spanning Tree Protocol). Jego rola jest prosta: ma tak zarządzać portami, aby w sieci istniała tylko jedna aktywna droga do celu, mimo że fizycznie kabli jest więcej.
STP to taki „inteligentny automatyczny bezpiecznik". Wykrywa on pętle i logicznie blokuje zbędne porty (wyłącza je). Ale najpiękniejsze jest to, że gdy główny kabel zostanie przecięty, STP natychmiast to poczuje i odblokuje zapasową drogę. Dzięki niemu mamy redundancję bez ryzyka paraliżu sieci.
Proces STP przypomina wybory. Najpierw switche wybierają swojego szefa — Root Bridge (Most Główny). To on będzie centrum całego „drzewa" bez pętli. Potem każdy switch szuka najtańszej (najszybszej) drogi do tego szefa.
Wszystkie porty, które są na drodze do szefa, zostają włączone. Te, które tworzą niebezpieczne skróty (pętle), zostają zaklejone (zablokowane). Wynikiem jest logiczna struktura drzewa: jeden pień (Root Bridge) i gałęzie prowadzące do każdego urządzenia, bez żadnych zamkniętych obwodów.
Wybór szefa (Root Bridge) opiera się na parametrze Bridge ID (BID). To kombinacja Priorytetu i adresu MAC. Wygrywa ten, kto ma najniższy numer. To bardzo ważne: domyślnie wszystkie przełączniki mają ten sam priorytet, więc szefem zostaje... ten najstarszy (z najniższym adresem MAC).
To błąd! Administrator powinien ręcznie obniżyć priorytet na najmocniejszym, głównym przełączniku w serwerowni. Chcemy, aby serce sieci biło w najszybszym urządzeniu, a nie w jakimś starym switchu zapomnianym w szafie na korytarzu. To fundament stabilności sieci lokalnej.
Switche nie liczą liczby kabli, ale ich prędkość. Każdy standard ma swój koszt: kabel 10 Gb/s ma koszt 2, 1 Gb/s ma koszt 4, a stary 100 Mb/s aż 19. STP zawsze wybierze drogę o najniższej sumie kosztów.
To bardzo logiczne — przełącznik woli wysłać dane dłuższą drogą przez dwa szybkie światłowody (koszt 4+4=8) niż krótką drogą przez jeden stary kabel miedziany (koszt 19). Dzięki temu system automatycznie dba o to, aby Twoje pliki firmowe zawsze leciały najszybszą możliwą magistralą.
Root Port to „najważniejsze gniazdko" na każdym switchu (poza szefem). To jedyne wyjście, przez które ten switch może rozmawiać z resztą świata w kierunku korzenia sieci. Przełącznik wybiera ten port na podstawie najniższego kosztu dotarcia do Root Bridge.
Root Port jest zawsze aktywny i święty — jeśli on padnie, cała gałąź sieci zostaje odcięta, dopóki STP nie wyliczy nowej drogi przez inny, dotychczas zablokowany kabel. To fundament nawigacji wewnątrz sieci lokalnej.
Na każdym kablu łączącym dwa switche musi być jeden pan i władca — Designated Port (Port Wyznaczony). To port, któremu STP pozwoliło przesyłać dane na ten konkretny odcinek sieci. Wszystkie porty na samym szefie (Root Bridge) są automatycznie portami wyznaczonymi.
Wybór jest prosty: wygrywa ten switch, który ma bliżej (taniej) do szefa. Dzięki temu unikamy sytuacji, w której dwa porty na jednym kablu próbują naraz przesyłać te same dane, co mogłoby doprowadzić do niepotrzebnego zamieszania i spadku wydajności sieci.
Port Blokowany (Blocking) to bohater drugiego planu. Nie przesyła on żadnych Twoich danych, nie świeci na zielono, wydaje się bezużyteczny. Ale to on ratuje sieć przed pętlą. Cały czas „nasłuchuje", czy reszta sieci żyje.
To jak koło zapasowe w bagażniku. Nie używasz go na co dzień, ale gdy główne koło (Root Port) pęknie, Port Blokowany w kilka sekund zmienia się w port aktywny i przywraca łączność w całym biurze. Bez tych „uśpionych" połączeń nasze sieci byłyby niezwykle delikatne i podatne na każdą, nawet najmniejszą awarię sprzętową.
Port w STP nie włącza się od razu. Zanim zacznie przesyłać Twoje dane (Forwarding), przechodzi długą drogę: od blokady, przez nasłuchiwanie (Listening), aż po naukę adresów MAC (Learning). Cały ten proces trwa aż 30-50 sekund.
To dlatego po wpięciu kabla do switcha musisz chwilę poczekać, aż kontrolka zmieni się z pomarańczowej na zieloną. Przełącznik w tym czasie upewnia się: „Czy jeśli się teraz włączę, to czy nie spali to całej sieci przez pętlę?". To rygorystyczny protokół bezpieczeństwa, który chroni firmę przed pochopnymi zmianami w topologii.
Switche nieustannie do siebie szepczą za pomocą ramek BPDU. Co 2 sekundy wysyłają do sąsiadów informację: „Cześć, ja wciąż żyję, szefem jest ten switch, a koszt do niego to tyle i tyle". To bicie serca sieci Spanning Tree.
Jeśli jakiś switch przestanie odbierać BPDU od sąsiada, od razu wszczyna alarm i zaczyna wielkie przeliczanie nowej trasy. Dzięki tym krótkim, regularnym komunikatom sieć lokalna jest „żywa" i potrafi samodzielnie reagować na awarie bez interwencji człowieka.
Cierpliwość administratorów ma swoje granice — 50 sekund czekania w starym STP to w dzisiejszych czasach wieczność. Dlatego powstał RSTP (Rapid STP). Działa on niemal identycznie, ale... błyskawicznie. Czas naprawy sieci skrócił się z minuty do zaledwie kilku milisekund.
RSTP zamiast czekać na przestarzałe liczniki czasowe, używa aktywnej negocjacji („Szybki uścisk dłoni"). Jeśli masz nowoczesne przełączniki, zawsze wybieraj RSTP. To standard, który sprawia, że redundancja jest całkowicie niezauważalna dla użytkownika — nawet przy wielkiej awarii port ładowania przełączy się tak szybko, że strona w Twojej przeglądarce załaduje się bez błędu.