Wersjonowanie IOS oraz IOS XE

Jakub Krawczyk
Jakub Krawczyk Skomentuj

System Cisco IOS stale ewoluuje. Przez wiele lat przeszedł transformację od pojedynczej platformy do zaawansowanego oprogramowania obsługującego szeroki wachlarz funkcji i technologii. Wraz z nowymi platformami urządzeń wprowadzane są kolejne wersje systemu. Odnalezienie się w strukturze oprogramowania Cisco może stanowić problem dla niejednego administratora sieci. Sprawdźmy w jaki sposób wdrażane są aktualizacje oraz jak wygląda wersjonowanie klasycznego IOS oraz IOS-XE.

Cykl życia IOS

W artykule będą pojawiać się takie pojęcia jak rodziny IOS i linie. Jeśli nie znasz ich znaczenia, to zapraszam Cię w pierwszej kolejności do zapoznania się z wpisem „Rodziny systemu Cisco IOS”.

Wersjonowanie Cisco IOS wygląda inaczej niż ma to miejsce np. w systemach operacyjnych Windows czy Linux. Nie ma jednej właściwej i „najbardziej aktualnej” wersji systemu IOS.

Po pierwsze różne rodziny IOS funkcjonują na różnych platformach lub segmentach rynku. Po drugie w ramach rodziny w jednym czasie może być aktualnych kilka linii, na przykład IOS 15M&T współistnieje z linią 15S. Po trzecie dla poszczególnych platform wydawane są odpowiednie aktualizacje i poprawki. Przykładowo dla switcha Catalyst 2960L najbardziej aktualnym wydaniem może być IOS 15.2(8)E2, a dla Catalyst 2960X wersja 15.2(7)E3.

Co dokładnie oznaczają poszczególne cyfry i litery w nazwie oprogramowania przedstawię w dalszej części artykułu. Teraz odpowiedzmy sobie jeszcze na pytanie, dlaczego wydawane są nowe wersje systemu oraz w jaki sposób jest to zorganizowane?

Poprawki dla IOS mogą dotyczyć trzech obszarów:

  1. nowych funkcji,
  2. naprawy błędów powodujących problemy w funkcjonowaniu oprogramowania,
  3. naprawy błędów związanych z bezpieczeństwem urządzenia, czyli zwiększających podatność urządzenia na ataki.

To w jaki sposób wydawane są kolejne wersje jest bezpośrednio związane z tzw. cyklem życia oprogramowania (ang. Software Lifecycle).

Cykl życia Cisco IOS – źródło

Cykl życia to ustrukturyzowany plan obejmujący zasady wydawania oprogramowania Cisco IOS, który podzielony jest na kilka etapów:

  • Customer availability – okres, w którym wydanie jest dostępne dla klientów,
  • Software maintenance – w tym etapie Cisco może wydawać wersje typu maintenance lub poprawki błędów (ang. bug fixes). Po zakończeniu tego okresu Cisco przestaje rozwijać, naprawiać i testować wydanie,
  • Software releases and support for security vulnerabilities and issues: w ramach tego etapu mogą być wydane poprawki usuwające luki w zabezpieczeniach,
  • Customer service and support, Cisco TAC access: ten okres obejmuje jedynie wsparcie techniczne udzielane przez Cisco Technical Assistance Center (TAC).

Podejście producenta do cyklu życia IOS zmieniało się na przestrzeni lat, co na pewno nie ułatwia poruszania się w wydaniach systemu. Polityka firmy nieustannie zmienia się i Cisco stara się uprościć wersjonowanie.

Cykl artykułów o podstawach korzystania z IOS

Artykuły publikowane w ramach cyklu o IOS można czytać niezależnie, ale najlepsze efekty osiągniesz, jeśli zapoznasz się z nimi po kolei. Cały cykl składa się z następujących artykułów:

  1. 1. Rodziny systemu Cisco IOS
  2. 2. Wersjonowanie IOS oraz IOS XE
  3. 3. Podstawy korzystania z IOS
  4. 4. ROMMON – wszystko co musisz wiedzieć NSS+
  5. 5. Jak sprawnie poruszać się po IOS
  6. 6. Podstawowa konfiguracja RADIUS w IOS NSS+
  7. 7. Konfiguracja banerów w IOS

Wersjonowanie IOS

IOS

Dla klasycznej wersji systemu IOS do linii 12.4 można wyróżnić cztery podstawowe typy wydań:

  • Early Deployment (ED): oprócz poprawek błędów zapewnia również nowe funkcje i obsługę nowych platform,
  • Limited Deployment (LD): zawiera jedynie poprawki błędów,
  • General Deployment (GD): wydanie uważane jest za stabilne, nadaje się do wdrożenia w sieciach produkcyjnych,
  • Maintenance Deployment (MD): służy do zapewnienia dodatkowych poprawek w zakresie błędów i bieżącej aktualizacji oprogramowania.

Rodzina 12.4 stanowi główną linię (mainline train) i odpowiada wydaniu MD. Linia technologiczna T tworzy natomiast wersję 12.4T. Służy ona do wprowadzania nowych funkcjonalności i odpowiada wydaniu ED.

W systemie IOS 15 system wydań został uproszczony. Wersja LD i GD zostały wycofane. Głównej linii została przydzielona litera M, zwana również extended maintanance – odpowiada ona wydaniu MD. Wersji ED odpowiada linia T, określana jako standard maintanance.

Wersjonowanie IOS 15 – źródło

W tym modelu wersja standardowa T zawiera najnowsze funkcje i wsparcie sprzętowe oraz zapewnia aktualizacje przez 18 miesięcy od pierwszej wersji oprogramowania. Wersja rozszerzona M dziedziczy wszystkie funkcje z wersji T, ale jest zoptymalizowana pod kątem długoterminowego utrzymania, ponieważ zapewnia aktualizacje przez 44 miesiące po pierwszej wersji oprogramowania.

Kolejne zmiany zostały wprowadzone od wersji 15.6(3)M. Linia ta wykorzystuje uproszczony model wydawania, który wycofuje edycję standard maintenance (T) i konsoliduje wszystkie poprawki w wydaniu rozszerzonym (M). Zwykle wypuszczane jest nowe wydanie M każdego roku przez pierwsze 36 miesięcy od pierwszej wersji oprogramowania.

Wersjonowanie IOS od 15.6(3)M – źródło

IOS XE

W rodzinie IOS XE znów mamy dwa rodzaje wydań: standard maintenance (SM) oraz extended maintenance (EM).

Standardowa edycja, nazywana również standard-support release, ma okres wsparcia wynoszący jeden rok od momentu pierwszego wydania (FCS – ang. First Commercial Shipment), z dwiema zaplanowanymi rebuild’ami.

Rozszerzona wersja, nazywana również extended-support release, zapewnia dłuższy okres wsparcia. Wynosi on dwa lata od daty FCS, z czterema zaplanowanymi rebuild’ami. Od wersji IOS XE Fuji 16.9, odstęp między kolejnymi wydaniami EM został skrócony z 48 miesięcy na 36 miesięcy, z siedmioma zaplanowanymi rebuild’ami.

W przypadku IOX XE Cisco znów nieco namieszało w kwestii nazewnictwa wersji. Po pierwsze oprócz numeracji wprowadzono nazwy kodowe dla kolejnych głównych wydań. Po drugie do oznaczenia linii nie są już wykorzystywane litery jak M czy T. To czy wydanie jest w wersji standardowej czy rozszerzonej wynika bezpośrednio z harmonogramu kolejnych wydań. Przykładowo linia Denali posiada dwa wydania standard-support 16.1 i 16.2 oraz wydanie extended-support 16.3. Z kolei dla linii Everest 16.4 i 16.5 to wydanie SM, a Everest 16.6 to EM.

Składowe wersji IOS

IOS

Nazwa każdej wersji Cisco IOS zawiera różne komponenty, które wskazują na kluczowe aspekty wydania:

  • train, z którego wywodzi się dane wydanie,
  • czy zawiera ono nowe funkcje,
  • zakres zmian i poprawek w oprogramowaniu.

Jaka wersja IOS zainstalowana jest na sprzęcie sprawdzisz poprzez polecenie show version.

Router>enable
Router#show version
Cisco IOS Software, C2900 Software (C2900-UNIVERSALK9-M), <strong>Version 15.1(4)M4</strong>, RELEASE SOFTWARE (fc2)
Code language: plaintext (plaintext)

Widzimy tutaj fragment polecenia, który wskazuje, że na routerze 2911 zainstalowana jest wersja systemu 15.1(4)M4. Zobaczmy co dokładnie oznacza ten zapis.

Składniki wersji IOS
  • Major release: numer główny wskazuje odpowiednią rodzinę wersji oprogramowania,
  • Minor release: numer dodatkowy wersji, w nazewnictwie Cisco możesz spotkać się również z nazwą throttle. Wprowadza ona istotne zmiany w oprogramowaniu, obsługę nowych platform sprzętowych oraz ulepszenia i poprawki błędów dla istniejących funkcji. Numeracja zaczyna się od 0 i zwiększa się o 1 dla każdej kolejnej wersji,
  • Feature release: wprowadza nowe cechy lub funkcje. Numeracja zaczyna się od 1 i zwiększa się o 1. Liczba ta jest resetowana dla każdej nowej wersji minor release,
  • Release type: wskazuje w jakiej wersji jest wydanie. Pamiętaj, że oprócz podstawowych linii M i T istnieją dodatkowe linie jak np. E (Enterprise) czy S (Service Provider),
  • Maintenance rebuild: integruje poprawki, które mają na celu załatanie podatności i które należy rozwiązać w przyspieszonym harmonogramie. Jeśli dana wersja nie posiada żadnego rebuild’a wartość ta jest pomijana. Dla kolejnych aktualizacji zwiększa się o 1.

Dodatkowo niektóre wersje mogą wykorzystywać jeszcze małą literę po feature release lub maintenance rebuild. Na przykład Cisco IOS w wersji 15.2(2)E otrzymało poprawki kilku usterek, a rebuild został nazwany 15.2(2a)E. Podobnie wydanie 15.2(2)E5 otrzymało krytyczną poprawkę, a wynikający z tego rebuild otrzymał numer 15.2(2)E5a.

Taka konwencja nazewnicza ma w zasadzie zastosowanie do wszystkich wersji klasycznego IOS i pozwala na śledzenie zmian jakie są wprowadzane w systemie. Znając te zasady powinieneś bez większego trudu rozpoznać, które wydanie jest bardziej aktualne dla danej platformy.

IOS XE

Sprawdzenie wersji oprogramowania w IOS XE wygląda analogicznie jak w IOS:

Switch>enable
Switch#show version
Cisco IOS Software [<strong>Denali</strong>], Catalyst L3 Switch Software (CAT3K_CAA-UNIVERSALK9-M), <strong>Version 16.3.2</strong>, RELEASE SOFTWARE (fc4)
Code language: plaintext (plaintext)

Jak widzimy na Switchu z serii Catalyst 3650 zainstalowany jest IOS Denali-16.3.2

Składniki wersji IOS XE

Poszczególne składniki oznaczają:

  • Train identifier: Identyfikator linii określany również jako brand name, to nazwa kodowa danej linii,
  • Major release: numer główny wskazuje odpowiednią rodzinę wersji oprogramowania,
  • Release version: numer wydania wprowadza istotne zmiany w oprogramowaniu, obsługę nowych platform sprzętowych oraz ulepszenia i poprawki. Numeracja zaczyna się od 1 i zwiększa się o 1. Wskazuje czy wydanie jest w wersji standardowej czy rozszerzonej,
  • Rebuild: integruje poprawki, które mają na celu załatanie podatności i które należy rozwiązać w przyspieszonym harmonogramie. Numeracja zaczyna się od 1 i zwiększa się o 1. 

Podobnie jak w klasycznym IOS po oznaczeniu rebuild może być dodana mała litera. Oznacza ona, że zostało zapewnione wsparcie dla platformy sprzętowej niedostępnej w momencie wydania wersji głównej lub wprowadzono poprawki krytyczne.

Feature Sets

Oprogramowanie Cisco IOS korzysta z architektury pakietów oprogramowania (ang. Software Packaging). Najczęściej spotkasz się z nimi pod nazwą Feature Sets. Mają one na celu dostarczenie klientom określonych kategorii usług, które są niezbędne dla danej organizacji. Pakiety zapewniają podobną funkcjonalność i zgodność funkcji na różnych platformach, jednocześnie spełniając unikalne wymagania dla każdej platformy.

IOS

Dla wersji 12.4 system pakietów był mocno rozbudowany i obejmował aż 8 wersji:

Pakiety oprogramowania dla IOS 12.4 – źródło

Od wersji IOS 15 wraz z premierą routerów serii ISR drugiej generacji zmieniono podejście do tworzenia pakietów. Uproszczono system licencjonowania poprzez dostarczanie na każdym urządzeniu uniwersalnego obrazu IP Base. Jako domyślny obraz dla większości switchy i routerów zapewnia on obsługę podstawowego zestawu usług i technologii. Pozostałe funkcje dostępne w wyższych pakietach aktywowane są za pomocą kluczy licencyjnych Cisco Software Activation.

Każdą z paczek można dodać razem lub łączyć w celu uzyskania wymaganej funkcjonalności, np. Security + Unified Communications + Data.

Pakiety oprogramowania od IOS 15 – źródło

Ten system licencjonowania oprócz routerów ISR drugiej generacji trafił jeszcze do wybranych switchy, jak Cisco Catalyst 3560-E i 3560-X, 3750-E i 3750-X czy serii 4500E Supervisor Engine 7-E.

Dla pozostałych modeli przewidziano system składający się z siedmiu pakietów:

  • Layer 2 Base: Zapewnia podstawowy zestaw usług i technologii, które są wymagane dla środowisk warstwy 2 Ethernet, takich jak IEEE 802.1D, uwierzytelnianie 802.1X, 802.3ad EtherChannel, 802.1s/w Rapid Spanning Tree, Port Security, SmartPorts, oraz SSHv2,
  • LAN Base: zawiera wszystkie funkcje z pakietu Layer 2 Base oraz dodatkowo wspiera zaawansowany 802.1X, zaawansowany quality of service (QoS), oraz zaawansowane ACL (filtrowanie od warstwy 2 do 4, time-based ACLs, port-based ACLs),
  • IP Base: zawiera wszystkie funkcje z pakietu LAN Base oraz dodatkowo wspiera edge IP routing (static, RIP, EIGRP oraz podstawowy PIM), HSRP, VRRP, oraz tunelowanie GRE,
  • IP Services: zawiera wszystkie funkcje z pakietu IP Base oraz dodatkowo wspiera pełen IP routing (EIGRP, OSPF, PIM), BGP, policy-based routing, GLBP, high availability, Multi-VRF, protokoły WAN, dodatkowe funkcje QoS (NBAR) oraz Cisco Catalyst 6500 Virtual Switching,
  • Advanced IP Services: zawiera wszystkie funkcje z pakietu IP Services oraz dodatkowo wspiera IPv6, IS-IS, MPLS, VPN warstwy 2 i 3,
  • Enterprise Services: zawiera wszystkie funkcje z pakietu IP Services oraz dodatkowo wspiera IPv6 i dodaje funkcje dla warstwy 3 jak AppleTalk Routing, IPX Routing i IBM Networking Services (kto to pamięta?),
  • Advanced Enterprise Services: zawiera wszystkie funkcje zawarte w pakietach IP Services i Enterprise Services.

IOS XE

IOS XE składa się z tzw. consolidated package oraz z optional packages (paczki software’owe). Rdzeń systemu stanowi zbiór sub-packages, które razem tworzą consolidated package. Natomiast optional packages, jak sama nazwa wskazuje, oferują wzbogacenie systemu o dodatkowe, opcjonalne funkcje. Consolidated package może być aktualizowany jako całość, ale można też aktualizować sub-packages indywidualnie.

Wyróżniamy siedem rodzajów sub-packages wchodzących w skład consolidated package:

  • RPBase – route processor base – wyposaża Route Processor w wyspecjalizowany software do jego obsługi,
  • RPControl – wyposaża system w control plane będący interfejsem między OS’em a resztą platformy,
  • RPAccess – umożliwia między innymi używanie SSH do ruchu managementowego,
  • RPIOS – paczka z IOS 15, który może być używany w IOS XE jako jeden z modułów,
  • ESPBase – ta paczka odpowiada za całą funkcjonalność związaną z przekazywaniem pakietów,
  • SIPBase – shared interface processor base – paczka odpowiedzialna za obsługę interfejsów w modułach,
  • SIPSPA – zawiera sterownik kart SPA (Shared Port Adaptor – moduły z interfejsami).

Nazewnictwo obrazów IOS

Nazwa pliku obrazu systemu Cisco IOS składa się z kilku elementów, a każdy ma określone znaczenie. Podobnie jak w przypadku samej wersji IOS ważne jest, abyś rozumiał zastosowaną konwencję nazewnictwa obrazu. Przeczytasz o tym w naszym darmowym NSSletterze – mailingu dla sieciowców głodnych wiedzy.

Dołączając uzyskasz dostęp również do archiwum – tematykę tego artykułu rozszerzymy w jednym z najbliższych wydań. Rozwiń swoją wiedzę już teraz i zapisz się używając formularza poniżej.

Zostaw komentarz
Otrzymuj powiadomienia z tej dyskusji
Powiadom mnie o
guest

0 - Ilość komentarzy
Inline Feedbacks
View all comments