Implementacja STP Cisco
Transkrypt
Implementacja STP Cisco
Implementacja STP Cisco Nadmiarowość jest bardzo ważną i pożądaną cechą sieci. Dzięki niej sieci uzyskują odporność na awarie. Nadmiarowość topologii zapobiega przestojom lub utracie dostępu do zasobów. Przestoje mogą być spowodowane awarią pojedynczego łącza, portu lub urządzenia sieciowego. Inżynierowie sieci komputerowych często muszą szukać kompromisu pomiędzy kosztem wprowadzenia nadmiarowości a potrzebą utrzymania dostępności sieci. Topologie nadmiarowe oparte na przełącznikach i mostach są narażone na burze rozgłoszeń, wielokrotną transmisję ramek i niestabilność baz danych adresów MAC. Problemy te mogą sprawić, że sieć nie będzie się nadawała do użytku. Z tego powodu nadmiarowość powinna być dokładnie zaplanowana i monitorowana. Zaletami sieci przełączanych są mniejsze rozmiary domen kolizyjnych, mikrosegmentacja i działanie w trybie pełnego dupleksu. Sieci przełączane zapewniają większą wydajność. Nadmiarowość jest wymagana w celu ochrony przed utratą łączności w sieci w przypadku awarii pojedynczego podzespołu. Jednak spełnienie tego warunku może oznaczać powstanie topologii fizycznej zawierającej pętle. Istnienie pętli w warstwie fizycznej sieci przełączanych może być przyczyną poważnych problemów. Protokół STP (ang. Spanning-Tree Protocol) jest używany w sieciach przełączanych w celu utworzenia topologii logicznej bez pętli na bazie topologii fizycznej z pętlami. Łącza, porty i przełączniki, które nie staną się częścią aktywnej topologii, nie mogą przekazywać ramek. Protokół STP stanowi potężne narzędzie, dzięki któremu administrator może zapewnić poziom bezpieczeństwa topologii nadmiarowej, unikając jednocześnie problemów z pętlami w sieci przełączanej. Wynik działania protokołu STP w sieci z rys. 6.2 przedstawia rys. 6.3. Interfejs fa0/2 przełącznika S2 został zablokowany. Jednak w razie rozłączenia działającego łącza, zostanie on odblokowany, udostępniając alternatywną trasę. W większości urządzeń obsługujących protokół STP (w tym w przełącznikach Cisco) jest on domyślnie włączony. Protokół ten jest niezwykle skomplikowany. W implementacjach poszczególnych producentów sprzętu występują także dodatkowe funkcje wykraczające poza standard. Wiele problemów występujących w sieciach lokalnych wynika z błędów w konfiguracji lub niezrozumienia niuansów protokołu STP. Mimo to, z STP nie należy rezygnować, nawet mając pewność, że w danej sieci połączenia nadmiarowe nie występują. Połączenie takie może zostać przypadkowo zestawione przez administratora, lecz także użytkowników sieci, np. poprzez połączenie dwóch gniazd Ethernet kablem. Podstawy działania protokołu stp STP jest protokołem warstwy łącza danych. Podstawową i najpopularniejszą jego odmianę opisywał standard IEEE 802.1d (przed zastąpieniem STP protokołem RSTP), chociaż występuje wiele innych implementacji. Działanie opiera się na algorytmie drzewa rozpinającego, stworzonym przez Radię Perlman, podczas pracy dla Digital Equipment Corporation (DEC). Połączone ze sobą przełączniki traktowane są jak węzły grafu. W kontekście protokołu STP, zwykle używa się pojęcia mostu (bridge) a nie przełącznika. Celem algorytmu jest wyznaczenie wolnych od pętli tras prowadzących od poszczególnych przełączników, do jednego wybranego, stanowiącego korzeń drzewa, charakteryzujących się minimalną wartością kosztu. Połączenia, które są nadmiarowe zostają wyłączone. Każdy przełącznik obsługujący protokół STP musi posiadać swój ośmio -bajtowy identyfikator –bridge ID(BID), którym podpisywane są komunikaty BPDU (Bridge Protocol Data Unit) wymieniane między przełącz nikami. Na dwóch najbardziej znaczących bajtach zakodowany jest priorytet przełącznika (bridge priority). Zgodnie z konwencją przyjętą w STP, niższa wartość liczbowa oznacza wyższy stopień preferencji. Kolejnych sześć bajtów wypełnia podstawowy adres MAC przełącznika. Poniższa tabela przedstawia format komunikatu konfiguracyjnego BPDU (Configuration BPDU, CBPDU), wykorzystywanego przy budowie drzewa. Komunikaty BPDU wysyłane są na zarezerwowany dla STP adres multicastowy 01:80:C2:00:00:00. Budowa wolnej od pętli topologii odbywa się w trzech etapach: 1. Spośród wszystkich przełączników wybierany jest główny most (rootbridge). 2. Każdy przełącznik, oprócz mostu głównego, spośród swoich interfejsów wybiera jeden port główny (root port), poprzez który ramki będą wysyłane w kierunku mostu głównego. 3. Dla każdego segmentu sieci wybierany jest port desygnowany, poprzez który ramki z tego segmentu będą wysyłane w kierunku mostu głównego. Początkowym i kluczowym dla optymalnego działania sieci etapem działania protokołu STP jest wybór przełącznika (mostu) głównego, stanowiącego korzeń drzewa – centralny punkt sieci (STProot). Staje się nim przełącznik posiadający najniższy co do wartości identyfikator bridge ID.W przypadku identycznych wartości priorytetów, o wyborze decyduje adres MAC, czyli praktycznie wybór jest przypadkowy. Początkowo każdy prze-łącznik uważa samego siebie za korzeń i w rozsyłanych komunikatach BPDU umieszcza swój identyfikator w polu Root Identifier. Po otrzymaniu od sąsiednich przełączników informacji o istnieniu przełącznika z niższą wartością identyfikatora, jest to weryfikowane i już po chwili przełącznik główny po-winien być poprawnie rozpoznany. W kolejnych krokach poszukiwane będą optymalne trasy prowadzące od poszczególnych przełączników do głównego, a nadmiarowe zostaną zablokowane. Podstawowa konfiguracja STP Jak już wspomniano powyżej, protokół STP jest domyślnie włączony i działa w wariancie PVST+ (Cisco). W razie potrzeby wyłącza się go poleceniem: no spanning−tree vlan vlan-id wydanym w trybie konfiguracji globalnej. Powyższe polecenie oraz znaczna część prezentowanych dalej, odnosi się do konfiguracji STP dla konkretnejsieci VLAN i wymaga podania jej identyfikatora (vlan-id) jako parametru. Tryb pracy STP można zmienić poleceniem: spanning−tree mode pvst | mst | rapid−pvst Wartość priorytetu przełącznika (bridge priority, domyślnie 32768) zmienia się poleceniem: spanning−tree vlan vlan-id priority wartość Jednak, aby samodzielnie wymusić określone położenie przełącznika głównego, znacznie wygodniejsze od bezpośredniego modyfikowania priorytetów jest użycie polecenia: spanning−tree vlan vlan-id root primary na przełączniku, który ma pełnić role głównego oraz: spanning−tree vlan vlan-id root seondary na przełączniku, który miałby przejąć tę rolę w razie awarii głównego. Użycie powyższych dwóch poleceń spowoduje automatyczne dobranie odpowiednich wartości priorytetów (o ile jest to możliwe i priorytety pozostałych przełączników nie mają już zbyt niskich wartości). Wartość priorytetu portu dla danej sieci VLAN można zmienić w trybie konfiguracji interfejsu poleceniem: spanning−tree vlan vlan-id port−priority wartość Wartością domyślną jest 128. Może ona być zmieniana w zakresie od 0 do 240 co 16, tzn. 0, 16, 32, ..., 240. Funkcję PortFast włącza się w trybie konfiguracji globalnej dla wszystkich portów dostępowych poleceniem: spanning−tree portfast default Można oczywiście również użyć odpowiednich poleceń w ustawieniach konfiguracyjnych poszczególnych interfejsów, tak by funkcja ta była aktywna tylko na wybranych interfejsach przeznaczonych dla urządzeń końcowych. Domyślnie wyłączoną funkcję BPDU guard dla portów, na których uruchomiono PortFast aktywuje się poleceniem: spanning−tree port fast bpduguard default Podstawowym poleceniem diagnostycznym STP jest: show spanning−tree { vlan vlan-id} W razie niepodania opcjonalnego parametru vlan, wyświetlone zostaną informacje o konfiguracji STP we wszystkich sieciach VLAN. Ponadto, dostępne są polecenia: show spanning−tree active wyświetlające tylko informacje dotyczące aktywnych interfejsów oraz: show spanning−tree detail show spanning−tree interface interface-id show spanning−tree summary