Mój newsletter

Dołącz do LifeLog

Technologia, książki i świadome życie. Notatki, do których chce się wracać — prosto do Twojej skrzynki.

Bezpłatny newsletter. Built with Kit

Dowiedz się więcej o LifeLog →
Ilustracja tuszem i akwarelą na podstawie oryginalnej okładki: Podstawy korzystania z IOSIlustracja tuszem i akwarelą na podstawie oryginalnej okładki: Podstawy korzystania z IOS
Sieci i chmura

Podstawy korzystania z IOS

Pierwsze kroki w Cisco IOS. Budowa systemu, tryby pracy i nawigacja w wierszu poleceń.

W tym artykule

Czarne okienko wiersza poleceń IOS może przy pierwszym kontakcie budzić niemałe obawy. Większość użytkowników komputerów przecież jest przyzwyczajona do interfejsów graficznych i raczej z niechęcią podchodzi do „wklepywania” poleceń na klawiaturze. Jednak przy bliższym poznaniu systemu okazuje się, że command line wcale nie jest taki straszny. Dlatego też dzisiaj przyjrzymy się budowie systemu IOS i omówimy podstawy związane z poruszaniem się po nim.

Budowa IOS

System IOS (Internetwork Operating System) odpowiada za kontrolę hardware’u, czyli switchy lub routerów Cisco. Administrator musi natomiast zarządzać infrastrukturą sieciową. Rolą administratora jest więc takie skonfigurowanie urządzeń sieciowych, by realizowały one swoje funkcje zgodnie z naszymi potrzebami. Komunikacja między użytkownikiem, a sprzętem jest możliwa dzięki tzw. interfejsowi. Działanie IOS oparte jest o interfejs wiersza poleceń, czyli Command Line Interface (w skrócie CLI). Oznacza to, że konfigurowanie urządzeń sieciowych Cisco odbywa się poprzez polecenia i komendy tekstowe. 

System IOS podzielony jest na tzw. tryby (ang. modes). Każdy tryb charakteryzuje się tym, że pozwala na sterowanie określonym obszarem urządzenia lub konfigurowanie podobnych funkcji.

W Cisco IOS możemy wyróżnić pięć podstawowych trybów:

  • User EXEC mode,
  • Privileged EXEC mode,
  • Global Configuration mode,
  • Setup mode,
  • ROMMON mode.

Dzisiaj skupimy się ma pierwszych trzech trybach, ponieważ to one służą do zasadniczej konfiguracji urządzeń sieciowych Cisco i z nimi będziesz mieć najczęściej do czynienia. Warto jednak wiedzieć do czego służą dwa pozostałe tryby.

Setup mode służy do wstępnej konfiguracji urządzenia. Jeśli system IOS po uruchomieniu nie znajdzie prawidłowego pliku konfiguracyjnego to automatycznie przejdzie do tego trybu. Spotkasz się z nim jedynie w przypadku, gdy masz nowe urządzenie lub gdy został z niego usunięty plik konfiguracji początkowej. Setup mode to typowy konfigurator typu wizard, gdzie urządzenie prowadzi użytkownika „za rękę” i zadaje pytania dotyczące pierwszej konfiguracji. Następnie na podstawie udzielonych odpowiedzi system buduje odpowiednią konfigurację. Tryb ten nie umożliwia przeprowadzenia szczegółowej konfiguracji, dlatego sprawdzi się jedynie w przypadku osób niezaznajomionych z IOS.

ROMMON mode, czyli tryb monitorowania pamięci stałej (ang. Read Only Memory Monitor), to specjalny tryb wykorzystywany najczęściej w sytuacjach awaryjnych, gdy mamy jakieś problemy z systemem operacyjnym IOS. Szczegóły na temat działania tego trybu przeczytasz w artykule „ROMMON – wszystko co musisz wiedzieć”.

Zasadnicze tryby IOS

Zasadnicze tryby w IOS mają ściśle określoną hierarchię. W zależności od pozycji w hierarchii poszczególne tryby dają dostęp do różnych poleceń, a tym samym innych możliwości w zakresie konfiguracji urządzenia. Samo poruszanie się między trybami również ma swój określony porządek. Przykładowo, by znaleźć się w Global Configuration mode musisz „przedostać się” przez User EXEC i Privileged EXEC mode. Dokładnie wyjaśnię to w dalszej części artykułu.

Zależności między poszczególnymi trybami można zobrazować w formie schematu:

Podstawowe tryby IOS.
Podstawowe tryby IOS.

User EXEC Mode

Podstawowym trybem w CLI IOS jest User EXEC, czyli tzw. tryb użytkownika. To tu trafisz po zalogowaniu się do urządzenia (nie licząc wspomnianej wcześniej sytuacji, gdy switch lub router nie ma konfiguracji i uruchamia się w trybie Setup). Ma on bardzo ograniczoną funkcjonalność. Przede wszystkim pozwala na sprawdzenie podstawowej konfiguracji urządzenia poprzez polecenia z grupy show, czy weryfikację komunikacji np. za pomocą komendy ping. Co istotne User EXEC nie daje użytkownikowi możliwości przeprowadzenia żadnych zmian w konfiguracji urządzenia. Ten tryb jest swego rodzaju punktem początkowym IOS, ponieważ umożliwia on dostęp do dalszych trybów, dających już nieco szersze możliwości.

Privileged EXEC Mode

Kolejnym trybem, dającym już pewne możliwości konfiguracyjne, jest Privileged EXEC mode, czyli tryb uprzywilejowany. Jego głównym zadaniem nie jest stricte konfiguracja, a raczej zarządzanie urządzeniem. Oprócz poleceń dostępnych w User mode tryb uprzywilejowany pozwala między innymi na:

  • przeglądanie konfiguracji urządzenia,
  • zapisywanie i usuwanie konfiguracji urządzenia,
  • ponowne uruchomienie urządzenia,
  • bardziej zaawansowany troubleshooting.

Global Configuration Mode

Idąc głębiej w hierarchii trybów trafimy na Global Configuration mode. Jak sama nazwa wskazuje głównym zadaniem tego trybu jest już konfiguracja urządzenia. W trybie konfiguracji użytkownik może nie tylko wprowadzać nowe ustawienia, ale także zmieniać lub usuwać już istniejące.

Tryb globalnej konfiguracji służy do konfiguracji ustawień mających bardziej ogólny, czyli globalny wpływ na działanie urządzenia. W ramach Global Configuration mode funkcjonuje jeszcze klika specjalnych trybów, tzw. sub-configuration modes.  Umożliwiają one bardziej szczegółową konfigurację w obrębie danej grupy czy obszaru poleceń, np. interfejsów fizycznych, routingu, vlanów czy linii wirtualnych do zdalnego dostępu.

Nawigacja po IOS

Command prompt

Aby ułatwić poruszanie się po CLI w IOS wszystkie tryby posiadają odpowiedni znak zachęty (ang. command prompt) lub dodatkowy opis. Dzięki temu jesteś w stanie określić, w którym miejscu w strukturze konfiguracji właśnie się znajdujesz. Znak zachęty jest wyświetlany zawsze bezpośrednio po nazwie urządzenia. Przykładowo w trybie User EXEC znakiem zachęty jest znak większości >.  Dla ustawień domyślnych będzie to Router> lub Switch>, pamiętaj jednak, że nazwa urządzenia może zostać zmieniona. Gdy zmienimy nazwę switcha np. na S1, to w trybie użytkownika będzie się wyświetlać jako S1>.

Command prompt dla poszczególnych trybów przedstawia się następująco:

Command prompt w poszczególnych trybach IOS.
Command prompt w poszczególnych trybach IOS.

Komendy

Do poruszania się między poszczególnymi trybami służą dedykowane komendy. Pozwalają one na przejście do kolejnego trybu lub opuszczenie go.

Aby wejść z User EXEC mode do Privileged EXEC mode należy użyć polecenia enable. Z tego też powodu tryb uprzywilejowany jest często nazywany właśnie „trybem enable„. Do opuszczenia trybu uprzywilejowanego można użyć polecenia disable.

Switch>
Switch>enable
Switch#
Switch#disable
Switch>

Uruchomienie trybu Global Configuration odbywa się poprzez polecenie configure terminal. By przejść do szczegółowych ustawień związanych z daną grupą, np. z interfejsami fizycznymi czy VLANami musisz po prostu wpisać komendy służące do ich konfiguracji:

Switch#configure terminal
Enter configuration commands, one per line. End with CNTL/Z.
Switch(config)#interface fastEthernet 0/1
Switch(config-if)#
Switch(config-if)#vlan 10
Switch(config-vlan)#

Jak widzisz znak zachęty zmienia się wraz z rozpoczęciem konfiguracji danej grupy. Zwróć uwagę, że przejście z konfiguracji jednej grupy do drugiej nie wiąże się z wpisywaniem żadnych dodatkowych komend. Nie musisz również wracać do Global Configuration mode.

Poleceniem, które pozwala cofnąć się do poprzedniego trybu jest exit.

Dodatkowo, by szybko wrócić do trybu uprzywilejowanego możesz użyć polecenia end lub skrótu klawiaturowego Ctrl-Z.

Switch(config)#
Switch(config)#interface fastEthernet 0/1
Switch(config-if)#
Switch(config-if)#exit
Switch(config)#
Switch(config)#vlan 1
Switch(config-vlan)#
Switch(config-vlan)#end
Switch#
%SYS-5-CONFIG_I: Configured from console by console
Switch#
Switch#configure terminal
Enter configuration commands, one per line. End with CNTL/Z.
Switch(config)#
Switch(config)#line vty 0 15
Switch(config-line)#
Switch(config-line)#^Z
Switch#
%SYS-5-CONFIG_I: Configured from console by console

By lepiej zrozumieć zasady poruszania się pomiędzy poszczególnymi trybami przyjrzyj się poniższej grafice:

Komendy służące do poruszania się między trybami IOS.
Komendy służące do poruszania się między trybami IOS.

Narzędzie pomocy kontekstowej w IOS

System IOS posiada tysiące wbudowanych komend. Całe szczęście nie musisz znać wszystkich, żeby sprawnie poruszać się po systemie. CLI posiada bardzo przydatne narzędzie jakim jest pomoc kontekstowa. Możesz ją wywołać wpisując znak zapytania „?”. Z pomocy możesz korzystać we wszystkich trybach i tak naprawdę w każdy możliwym miejscu w systemie.

Dzięki temu możesz bardzo łatwo zweryfikować jakie komendy są właśnie dostępne.

Switch(config)#interface FastEthernet 0/1
Switch(config-if)#?
authentication       Auth Manager Interface Configuration Commands
cdp                  Global CDP configuration subcommands
channel-group        Etherchannel/port bundling configuration
channel-protocol     Select the channel protocol (LACP, PAgP)
description          Interface specific description
dot1x                Interface Config Commands for IEEE 802.1X
duplex               Configure duplex operation.
exit                 Exit from interface configuration mode
ip                   Interface Internet Protocol config commands
lldp                 LLDP interface subcommands
mdix                 Set Media Dependent Interface with Crossover
mls                  mls interface commands
no                   Negate a command or set its defaults
shutdown             Shutdown the selected interface
spanning-tree        Spanning Tree Subsystem
speed                Configure speed operation.
storm-control        storm configuration
switchport           Set switching mode characteristics
tx-ring-limit        Configure PA level transmit ring limit

Z pomocy możesz również korzystać nawet, gdy wpisałeś tylko część polecenia:

Switch(config)#interface ?
Ethernet              IEEE 802.3
FastEthernet          FastEthernet IEEE 802.3
GigabitEthernet       GigabitEthernet IEEE 802.3z
Port-channel          Ethernet Channel of interfaces
Vlan                  Catalyst Vlans
range                 interface range command

Gdy zostały wpisane wszystkie dostępne argumenty i polecenie jest prawidłowe otrzymasz komunikat <cr>:

Switch#configure terminal ?
<cr>
Na Styku Sieci

ArchiwumNa Styku Sieci

Autor: Jakub Krawczyk

Ten tekst ukazał się pierwotnie w serwisie Na Styku Sieci. Dziś znajdziesz go tutaj, z zachowaniem oryginalnego autorstwa.

Oryginalnie opublikowano

100%