Kategoria: Zarządzanie siecią

  • (K) Zarządzanie zdalne Telnet^

    (K) Zarządzanie zdalne Telnet^

    Konfiguracja linii zdalnej (Telnet)

    Tworzenie użytkowników lokalnych

    (config)# username login [privilege 0-15] [algorithm-type {md5 / sha256 / scrypt}] secret hasło

    Tworzy nowe konto użytkownika lokalnego, z przypisanym hasłem zabezpieczonym za pomocą wskazanego algorytmu haszującego (opcjonalna komenda “privilege” określa poziom dostępu do systemu Cisco IOS).

    (config)# username login [nopassword / noescape / autocommand komenda-CLI / one-time / nohangup]*

    Określa opcjonalne właściwości nowo stworzonego konta:
    * nopassword – Tworzy użytkownika bez hasła.
    * noescape – Blokuje wykonanie znaków „escape”.
    * autocommand – Automatycznie po zalogowaniu wykonuje wskazaną komendę, a następnie kończy sesję.
    * one-time – Tworzy konto jednorazowego użytku.
    * nohangup – Nie rozłącza sesji po wykonaniu komendy „autocommand”.

    Połączenie zdalne telnet

    (config)# line vty 0-924 4-924(Zakres konfigurowanych linii VTY)

    Przechodzi do poziomu konfiguracji linii zdalnej.

    (config-line)# login local

    Umożliwia logowanie do linii zdalnej za pomocą lokalnej bazy użytkowników.

    (config-line)# transport input telnet

    Aktywuje protokół telnet względem linii zdalnej.

    # show running-config | section line vty

    Wyświetla pełną konfigurację linii zdalnych VTY.

    Opcjonalna konfiguracja linii zdalnej (Telnet)

    Ustawienia linii VTY

    Po zalogowaniu się do systemu Cisco IOS za pomocą połączenia konsolowego, system zostanie załadowany z poziomu User Mode. Tymczasem w przypadku logowania za pomocą połączenia zdalnego SSH bądź telnet, system zostanie załadowany z poziomu uprzywilejowanego Enable Mode.

    (config)# line vty 0-924 4-924(Zakres konfigurowanych linii VTY)

    Przechodzi do poziomu konfiguracji linii zdalnej.

    (config-line)# exec-timeout 0-35791(Minuty) 0-2147483(Sekundy)

    Ustawia limit czasu, przez jaki połączenie zdalne VTY, pozostanie aktywne w przypadku bezczynności użytkownika (Wartość 0 oznacza czas nieskończony).

    (config-line)# logging synchronous

    Synchronizuje funkcję wyświetlania loginów systemowych z poziomu CLI.

    (config-line)# history size 0-256

    Określa ilość komend CLI zapisywanych w pamięci urządzenia (Komend wykorzystanych przez użytkownika).

    # terminal history size 0-256

    Określa ilość komend CLI zapisywanych w pamięci urządzenia (Komend CLI wykorzystanych przez użytkownika).

    # show history

    Wyświetla zawartość historii wykonanych komend.

    Konfiguracja dodatkowych metod zabezpieczania linii dostępowych

    Zdefiniowanie zasad bezpieczeństwa dotyczących haseł jak i metod uwierzytelniania hasłem

    (config)# security passwords min-length 0-16

    Określa minimalną długość hasła.

    (config)# login on-success [{log / trap}] [every 1-65535]

    Aktywuje funkcję monitorowania procesu logowania do systemu ISO, informując o pozytywnym jego zakończeniu. Pod-komenda „log” zapisuje w pamięci urządzenia jak i wyświetla na konsoli CLI, potwierdzenie o zalogowaniu się użytkownika, „trap” generuje wiadomość protokołu SNMP natomiast komenda „etery” określa częstotliwość w wysyłaniu powiadomień.

    (config)# login on-failure [{log / trap}] [every 1-65535]

    Aktywuje funkcję monitorowania procesu logowania do systemu ISO, informując o negatywnym jego zakończeniu. Pod-komenda „log” zapisuje w pamięci urządzenia jak i wyświetla na konsoli CLI, potwierdzenie o zalogowaniu się użytkownika, „trap” generuje wiadomość protokołu SNMP natomiast komenda „etery” określa częstotliwość w wysyłaniu powiadomień.

    (config)# login block-for 1-65535(sekundy) attempts 1-65535(Próby) within 1-65535(sekundy)

    Określa trzy wartości zabezpieczające przed próbą złamania hasła: Czas blokady, ilość prób logowania oraz Czas logowania. Przykładowa komenda wygląda następująco [login block-for 180 attempts 3 within 120] a oznacza, że jeśli w ciągu 120 sekund użytkownik poda 3 razy błędne hasło, konsola zostanie zablokowana na 180 sekund.
    W celu zablokowania dostępu do konsoli CLI, po wystąpieniu określonej w komendzie ilości błędnych logowań. System Cisco IOS stworzy nową listę ACL "sl_def_acl". Która to zawiera następujące wpisy:
    Extended IP access list sl_def_acl
        10 deny tcp any any eq telnet log
        20 deny tcp any any eq www log
        30 deny tcp any any eq 22 log
        40 permit ip any any  log

    (config)# login quiet-mode access-class ACL-ID

    Umożliwia zmianę domyślnie tworzonej listy ACL (sl_def_acl), na inną stworzoną przez administratora.

    (config)# login delay 1-10(sekundy)

    Określa czas opóźnienia pomiędzy kolejnymi próbami logowania do systemu (Niezależnie od tego czy próba logowania była udana czy nie).

    # show login

    Wyświetla konfigurację ustawień logowania do systemu Cisco IOS.
    Komendy [login block-for], [login quiet-mode] oraz [login delay] dotyczą jedynie połączeń zdalnych VTY.

    Ograniczenie dostępu do linii VTY za pomocą listy ACL

    Konfiguracja list ACL została opisana w artykule: Konfiguracja List ACL.

    (config)# ip access-list standard ACL-ID

    Tworzy nową podstawową listę ACL.

    (config-std-nacl)# remark opis

    Dodaje komentarz administratora, do konfigurowanej listy ACL (Do jednej listy ACL może zostać dodana dowolna liczbą komentarzy, będą one wyświetlane zgodnie z kolejnością wpisywania, wraz z właściwymi wpisami wpisami ACL).

    (config-std-nacl)# permit sieć maska

    Określa grupę adresów IP, jaka zostanie dopuszczona do zdalnego zarządzania systemem Cisco IOS.

    (config)# line vty 0-924 4-924(Zakres konfigurowanych linii VTY)

    Przechodzi do poziomu konfiguracji linii zdalnej VTY.

    (config-line)# access-class ACL-ID in

    Przypisuje listę ACL, do konfigurowanej linii VTY.

    (config-line)# ipv6 access-class Nazwa-ACL in

    Przypisuje listę ACL (Względem protokołu IPv6), do konfigurowanej linii VTY.

    Komendy Show, Clear

    Komendy Show

    # show users

    Wyświetla użytkowników zalogowanych do systemu Cisco IOS.

    # show terminal

    Wyświetla ustawienia konsoli [exec-timeout / terminal history size].

    # show privilege

    Wyświetla poziom dostępu, obecnie zalogowanego użytkownika.

    # show login

    Wyświetla informacje o zasadach bezpiecznego uwierzytelniania użytkowników [ACL].

    # show crypto key mypubkey rsa

    Wyświetla wygenerowane klucze RSA.

    Komendy CLEAR

    # clear line vty 0-15

    Czyści określoną linie VTY z sesji zdalnych.

    Pozostałe tematy związane z zarządzaniem systemem IOS

  • (K) Zarządzanie konsolowe^

    (K) Zarządzanie konsolowe^

    Konfiguracja linii dostępowej

    Połączenie konsolowe

    • Domyślne ustawienia konsoli:
      • 9600 bitów na sekundę [speed 0-4294967295].
      • 8-bit ASCII.
      • No parity bits.
      • No hardware flow control.
      • 1 stop bit.

    Konfiguracja prędkości transmisji danych konsoli

    (config)# line console 0

    Przechodzi do poziomu konfiguracji konsoli 0.

    (config-line)# speed 0-4294967295(Ilość bitów na sekundę)

    Określa prędkość transmisji danych w ilości bitów na sekundę.

    # show terminal

    Wyświetla szczegółowe informację dotyczące konfiguracji konsoli CLI.

    Tworzenie użytkowników lokalnych

    (config)# username login [privilege 0-15] [algorithm-type {md5 / sha256 / scrypt}] secret hasło

    Tworzy nowe konto użytkownika lokalnego, z przypisanym hasłem zabezpieczonym za pomocą wskazanego algorytmu haszującego (opcjonalna komenda “privilege” określa poziom dostępu do systemu Cisco IOS).

    (config)# username login [nopassword / noescape / autocommand komenda-CLI / one-time / nohangup]*

    Określa opcjonalne właściwości nowo stworzonego konta:
    * nopassword – Tworzy użytkownika bez hasła.
    * noescape – Blokuje wykonanie znaków „escape”.
    * autocommand – Automatycznie po zalogowaniu wykonuje wskazaną komendę, a następnie kończy sesję.
    * one-time – Tworzy konto jednorazowego użytku.
    * nohangup – Nie rozłącza sesji po wykonaniu komendy „autocommand”.

    Uwierzytelnianie za pomocą kont użytkowników

    (config)# username login [algorithm-type {md5 / sha256 / scrypt}] [privilege 0-15] secret hasło

    Tworzy nowe konto użytkownika lokalnego, z przypisanym hasłem zabezpieczonym za pomocą wskazanego algorytmu haszującego (opcjonalna komenda “privilege” określa poziom dostępu do systemu Cisco IOS).

    (config)# line console 0

    Przechodzi do poziomu konfiguracji konsoli 0.

    (config-line)# login local

    Umożliwia logowanie do konsoli za pomocą lokalnej bazy użytkowników.

    # show running-config | section username

    Wyświetla wszystkie skonfigurowane, lokalne konta użytkowników systemu IOS.

    Uwierzytelnianie za pomocą hasła lokalnego

    (config)# line console 0

    Przechodzi do poziomu konfiguracji konsoli 0.

    (config-line)# password hasło

    Tworzy hasło przypisane do konsoli.

    (config-line)# login

    Włącza funkcje logowania do systemu Cisco IOS, za pomocą lokalnego konta współdzielonego.

    (config-line)# privilege level 0-15

    Określa poziom dostępu.

    # show running-config | section line con

    Wyświetla pełną konfigurację konsoli CLI.

    Opcjonalna Konfiguracja linii dostępowej

    Ustawienia konsoli

    Po zalogowaniu się do systemu Cisco IOS za pomocą połączenia konsolowego, system zostanie załadowany z poziomu User Mode. Tymczasem w przypadku logowania za pomocą połączenia zdalnego SSH bądź telnet, system zostanie załadowany z poziomu uprzywilejowanego Enable Mode.

    (config)# line consol 0

    Przechodzi do poziomu konfiguracji konsoli.

    (config-line)# exec-timeout 0-35791(Minuty) 0-2147483(Sekundy)

    Ustawia limit czasu, przez jaki połączenie konsolowe, pozostanie aktywne w przypadku bezczynności użytkownika (Wartość 0 oznacza czas nieskończony).

    (config-line)# logging synchronous

    Synchronizuje funkcję wyświetlania loginów systemowych z poziomu CLI.

    (config-line)# history size 0-256

    Określa ilość komend zapisywanych w pamięci (Komend wykorzystanych przez użytkownika).

    # terminal history size 0-256

    Określa ilość komend zapisywanych w pamięci (Komend CLI wykorzystanych przez użytkownika).

    # show history

    Wyświetla zawartość historii wykonanych komend.

    Zdefiniowanie zasad bezpieczeństwa dotyczących haseł jak i metod uwierzytelniania hasłem

    (config)# security passwords min-length 0-16

    Określa minimalną długość hasła.

    (config)# login on-success [{log / trap}] [every 1-65535]

    Aktywuje funkcję monitorowania procesu logowania do systemu ISO, informując o pozytywnym jego zakończeniu. Pod-komenda „log” zapisuje w pamięci urządzenia jak i wyświetla na konsoli CLI, potwierdzenie o zalogowaniu się użytkownika, „trap” generuje wiadomość protokołu SNMP natomiast komenda „etery” określa częstotliwość w wysyłaniu powiadomień.

    (config)# login on-failure [{log / trap}] [every 1-65535]

    Aktywuje funkcję monitorowania procesu logowania do systemu ISO, informując o negatywnym jego zakończeniu. Pod-komenda „log” zapisuje w pamięci urządzenia jak i wyświetla na konsoli CLI, potwierdzenie o zalogowaniu się użytkownika, „trap” generuje wiadomość protokołu SNMP natomiast komenda „etery” określa częstotliwość w wysyłaniu powiadomień.

    # show login

    Wyświetla konfigurację ustawień logowania do systemu Cisco IOS.

    Komendy Show

    Komendy show zarządzania zdalnego

    # show users

    Wyświetla użytkowników zalogowanych do systemu Cisco IOS.

    # show terminal

    Wyświetla ustawienia konsoli [exec-timeout / terminal history size].

    # show privilege

    Wyświetla poziom dostępu, obecnie zalogowanego użytkownika.

    Pozostałe tematy związane z zarządzaniem systemem IOS

  • (Ts) Troubleshooting protokołu Flexible NetFlow*

    (Ts) Troubleshooting protokołu Flexible NetFlow*

    Troubleshooting protokołu Flexible NetFlow

    Problemy związane z porzucanie pakietów NetFlow

    • Lack of export packet – Zabrakło pamięci do stworzenia pakietu.
    • No Forwarding Information Base (FIB) – Tablica CEF nie była wstanie przełączyć (Switch) pakietu.
    • Adjacency issues – Zabrakło pamięci CEF do przełączenia (Switch) pakietu.
    • Fragmentation failures – Nastąpił błąd przy tworzeniu pakietu.
    • Enqueuing for the route processor (RP) – Nastąpił problem przy przenoszeniu pakietu pomiędzy procesorem (RP) a kartą (Chassi).
    • Inter-Process Communications (IPC) rate limiting – Nastąpił problem przy przenoszeniu pakietu pomiędzy procesorem (RP) a kartą (Chassi).
    • Output queue drops – Cała kolejka została zajęta.

    Pozostałe tematy związane z Flexible NetFlow

  • (K) Instalacja systemu IOS*

    (K) Instalacja systemu IOS*

    Przesyłanie obrazu IOS

    Przesyłanie obrazu IOS (FTP)

    Konfiguracja FTP server

    (config)# Xxx

    Xxx

    (config)# Xxx

    Xxx

    (config)# Xxx

    Xxx

    (config)# Xxx

    Xxx

    Konfiguracja FTP client

    (config)# Xxx

    Xxx

    (config)# Xxx

    Xxx

    (config)# Xxx

    Xxx

    (config)# Xxx

    Xxx

    Przesyłanie obrazu IOS (TFTP)

    Przesyłanie obrazu IOS (SCP)

    Instalacja obrazu IOS

    (config)# boot system switch all flash:nazwa-systemu-IOS

    Instalacja systemu IOS-XE na przełącznikach z rodziny Catalyst 3850.

    Pozostałe tematy związane z zarządzaniem systemem IOS

  • (TK) Przywracanie systemu IOS*

    (TK) Przywracanie systemu IOS*

    Przywracanie systemu IOS

    Proces uruchamiania urządzenia Cisco

    1. Urządzenie rozpoczyna proces wykrywania oraz testowania swoich komponentów POST (Power-On Self-Test).
    2. Urządzenie przegrywa program bootstrap z pamięci ROM do pamięci RAM, po czym go uruchamia.
    3. Program Bootstrap decyduję jaki obraz systemu IOS załadować do pamięci RAM, tudzież w przypadku zastosowania kombinacji klawiszy Ctrl+Break, załadować obraz systemu ROMMON.
    4. Po załadowaniu systemu IOS urządzenie pobiera konfiguracją „startup-config” z pamięci NVRAM do pliku „running-config” zlokalizowanego w pamięci RAM.

    Pierwsze uruchomienie systemu IOS

    Proces pierwszego uruchamiania systemu Cisco IOS

    Ładowanie nowego systemu IOS z poziomu poprzedniego

    Ładowanie wybranego systemu IOS

    (config)# boot system flash

    Przy następnym rozruchu zostanie załadowany pierwszy obraz IOS zapisany w pamięci Flash.

    (config)# boot system flash flash:obraz

    Przy następnym rozruchu zostanie załadowany określony w komendzie obraz systemu IOS.

    (config)# boot system tftp obraz adres-IP

    Przy następnym rozruchu zostanie załadowany obraz pobrany z sieci.

    # verified /md5 flash0:pobrany-obraz suma-kontrolna

    Weryfikuje spójność obrazu zgodnie z sumą kontrolną MD5.

    # show version

    Wyświetla szczegółowe informacje dotyczące systemu IOS, w tym informacje o obecnie działającym obrazie.

    # show running-config | section boot

    Wyświetla konfigurację systemu IOS pod kontem obrazów systemowych.

    Przygotowywanie systemu IOS

    # archive tar flash:/obraz.tar flash:/

    Dekompresuje wskazany w komendzie obraz system IOS do formatu „.bin”.

    Przywracanie systemu IOS (Router)

    Odzyskiwanie hasła do systemu IOS

    Podczas ładowania systemu IOS należy zastosować kombinację klawiszy Ctrl+Break, aby przejść do systemu ROMMON (Read Only Memory MONitor). System ten umożliwia wysyłanie jak i odbieranie pakietów IP, przez co może być wykorzystany do pobrania a następnie zboot-owania nowego systemu IOS.

    Rommon 1> confreg 0x2142

    Blokuje wczytywanie ustawień „startup-config” podczas ładowania systemu IOS.

    Rommon 2> reset

    # copy startup-config running-config

    Przywraca ustawienia systemu IOS z pliku „startup-config”.

    # configure terminal

    (config)# enable secret hasło

    Zmienia stare hasło chroniące tryb uprzywilejowany, na nowe.

    Przywracanie poprzednich ustawień & dodatkowe zabezpieczanie urządzenia

    (config)# config-register 0x2102

    Przywraca domyślne ustawienia wczytywania konfiguracji, podczas ładowania systemu.

    (config)# no service password-recovery

    Blokuje funkcje przywracania hasła.

    (config)# secure boot-config

    Zabezpiecza plik konfiguracyjny przed nieplanowanym usunięciem.

    (config)# secure boot-image

    Zabezpiecza plik z systemem IOS przed nieplanowanym usunięciem.

    Przywracanie systemu IOS (Switch)

    Podczas ładowania systemu Cisco IOS należy nacisnąć i przytrzymać guzik „MODE”.

    Przywracanie domyślnych ustawień systemu IOS

    Switch: load_helper

    Ładuje dodatkowe funkcje systemu Switch.

    Switch: flash _init

    Ładuje pamięć flash.

    Switch: dir flash:

    Wyświetla zawartość pamięci flash.

    Switch: rename flash:config.text flash:config.text.old

    Zmienia nazwę domyślnego pliku konfiguracyjnego.

    Switch: boot

    Ładuje system Cisco IOS z domyślną konfiguracją.

    Odzyskiwanie hasła do systemu IOS

    # rename flash:config.text.old flash:config.text

    Przywraca oryginalną nazwę pliku konfiguracyjnego.

    # copy flash:config.text system:running-config

    Ładuje plik konfiguracyjny do działającej konfiguracji.

    # configure terminal

    (config)# enable secret hasło

    Zmienia stare hasło chroniące tryb uprzywilejowany, na nowe.

    # show secure bootset

    Wyświetla stan zabezpieczeń plików konfiguracyjnych jak i systemowych.

    Reset systemu IOS

    # reload at [godzina:minuty] [1-31(dzień) miesiąc] [reason opis]

    Określa planowany restart systemu IOS, z określoną godziną, dniem czy miesiącem.

    # reload in godziny:minuty

    Określa planowany restart systemu IOS, za określoną ilość czasu.

    # reload cancel

    Odwołuje zaplanowany restart systemu IOS.

    # show reload

    Wyświetla informacje o planowanym restarcie systemu IOS.

    Zapisywanie i usuwanie ustawień

    Usuwanie konfiguracji

    (config)# write erase

    (config)# erase startup-config

    (config)# erase nvram:

    (config)# delete vlan.dat

    Zapisywanie konfiguracji

    (config)# write memory

    (config)# copy running-config startup-config

    Przetrzymywanie konfiguracji w systemie Cisco IOS

    Automatyczny Backup konfiguracji

    • Aby utworzyć kopię zapasową systemu należy przegrać plik konfiguracyjny „running-config” na serwer TFTP bądź FTP.
    • Aby przywrócić konfigurację systemu IOS, należy pobrać plik konfiguracyjny „running-config” z serwera TFTP bądź FTP, na miejsce pliku startowego „startup-config”. tym samym stare ustawienia zostaną nadpisane poprzez kopię zapasową. po zakończeniu kopiowania należy zresetować urządzenie Komedą [reload].
    • Przegranie kopi zapasowej do działającej konfiguracji „running-config” dopisze, a nie nadpisze obecną konfiguracje.
    Zapisywanie i przenoszenie konfiguracji systemu Cisco IOS
    Alternatywną metodą robienia kopi zapasowych są archiwa, które automatycznie wykonują kopię danych jak i nie wymagają resetowania systemu w procesie przywracania ustawień. 

    Wdrażanie automatycznego zapisu konfiguracji

    (config)# archive

    przechodzi do trybu konfiguracji archiwów.

    (config-archive)# path {ftp / tftp / http / https}://[login:hasło@adres-IP]/ścieżka

    Określa zdalną lokalizację, na którą przesyłane będą kopie zapasowe systemu IOS. Następujące zmienne wykorzystane w ścieżce określającej lokalizację urządzenia, zostaną zamienione na wskazane wartości ($h = hostname / $t = time).

    (config-archive)# time-period 1-525600(Minuty)

    Wysyła backup konfiguracji w określonych odstępach czasowych.

    (config-archive)# write-memory

    Wysyła backup konfiguracji przy zapisywaniu konfiguracji.

    (config-archive)# maximum 1-15

    Określa maksymalną liczbą backup-ów, zapisanych w pamięci urządzenia.

    (config-archive)# log config

    Przechodzi do trybu konfiguracji komunikatów systemowych (Logging-ów).

    (config-archive-log-cfg)# logging enabled(off)

    Wysyła wiadomości systemowe przy zmianie konfiguracji systemu IOS.

    (config-archive-log-cfg)# logging size 1-1000

    Określa maksymalną liczbę wpisów zachowanych w pamięci konfiguracji.

    Komendy SHOW

    # show archive

    Wyświetla wszystkie dostępne kopie zapasowe systemu IOS.

    # show archive log config 1 3

    Wyświetla zapisane w pamięci komendy konfiguracyjne CLI od pierwszej do trzeciej, wraz z informacją o użytkownik jak i miejscu (Konsoli bądź Linii VTY) z jakiego dokonał on zmian.

    # show archive log config all contenttype

    Wyświetla wszystkie zapisane w pamięci komendy konfiguracyjne CLI, wraz z informacjami o użytkownik jak i miejscu (Konsoli bądź Linii VTY) z jakiego dokonał on zmian.

    # show archive log config all provisioning

    Wyświetla wszystkie zapisane w pamięci komendy konfiguracyjne CLI.

    # show archive log config statistics

    Wyświetla statystyki na temat zmian wprowadzanych w konfiguracji.

    # show archive log config user użytkownik 1

    Wyświetla wszystkie zapisane w pamięci komendy konfiguracyjne CLI wykonane przez danego użytkownika.

    Specjalne komendy SHOW

    # show archive config differences nvram:startup-config system:running-config

    Wyświetla różnice pomiędzy konfiguracją startup-config a zapisami konfiguracji running-config.

    Manualny Backup konfiguracji

    # copy {{ftp / tftp / http / https}://[login:hasło@adres-IP]/ścieżka / startup-config} running-config

    Kopiuje konfigurację ze wskazanego folderu źródłowego, do bieżącego pliku konfiguracyjnego, nie nadpisując obecnej konfiguracji a jedynie dopisując do niej nową. Jeżeli w bieżącym pliku konfiguracyjnym interfejs miał przypisany adres IP oraz aktywną komendę [shutdown], natomiast kopiowany plik konfiguracyjny posiada jedynie inny adres IP, to adresacja zostanie zmieniona lecz port pozostanie wyłączony [shutdown].

    # configure replace {ftp / tftp / http / https}://[login:hasło@adres-IP]/ścieżka

    Zastępuje bieżącą konfigurację systemu IOS, konfiguracją pobraną z serwera (Proces ten nie wymaga resetu systemu IOS).

    Pozostałe tematy związane z zarządzaniem systemem IOS

  • (T) Teoria protokołu IP SLA*

    (T) Teoria protokołu IP SLA*

    IP Service Level Agreement

    Rodzaje testów protokołu IP SLA

    Test Type Description IP SLA Required on Target?
    Icmp-echo ICMP echo response time No
    Path-echo Hop-by-hop and end-to-end response times over path discovery from ICMP echo. No
    Path-jitter Hop-by-hop jitter over ICMP echo path. Yes
    Dns DNS query response time. No
    Dhcp DHCP IP address request response time. No
    Ftp FTP file-retrieval response time. No
    Http Web page-retrieval response time. No
    Udp-echo End-to-end response time of UDP echo. No
    Udp-jitter Round-trip delay, one-way delay, one-way jitter, one-way packet loss, and connectivity using UDP packets. Yes
    Tcp-connect Response time to build a TCP connection with a host. No

    Rodzaje testów protokołu IP SLA

    Wstęp do protokołu IP SLA

    • SLA (Service Level Agreement) – Umowa nawiązana pomiędzy klientem a usługodawcą, w celu utrzymania jak i systematycznego poprawiania jakości usługi, poprzez stały cykl obejmujący:
      • Uzgodnienie, monitorowanie, raportowanie oraz przegląd osiąganych wyników określonej w umowie usługi.
    • Protokół IP SLA – Umożliwia rzeczywistą ocenę jakości połączenia sieciowego bądź usług sieciowych, za pomocą standardowych protokołów modelu OSI. W przypadku niektórych testów zarówno urządzenie źródłowe (IP SLA Source) jak i docelowe (IP SLA Responder) muszą wspierać funkcjonalność protokołu IP SLA, w celu wykonania pomiarów.
    • Protokół IP SLA wywodzi się z protokołu RTR (Cisco Response Time Reporter) oraz SAA (Service Assurance Agent).
    • Protokół IP SLA współpracuje z protokołem NTP, w celu ujednolicenia zegarów na obydwóch urządzeniach.
    • Protokół IP SLA działa na porcie 1967 protokołu UDP.

    Podstawowe zagadnienia dotyczące protokołu IP SLA

    • MTTR (Mean Time To Repair) – Określa średni czas potrzebny do naprawy awarii (Jest obliczany na podstawie następującego wzoru: czas awaryjności / liczba zdarzeń naprawczych (podana w minutach)).
    • MTTF (Mean Time To Failure) – Określa średni czas do wystąpienia awarii  (Jest obliczany na podstawie następującego wzoru: (dostępny czas pracy – czas awaryjności) / liczba zdarzeń (podana w minutach)).
    • MTBF (Mean Time Between Failure) – Określa średni czas pomiędzy awariami  (Jest obliczany na podstawie następującego wzoru: MTTR + MTTF (podany w minutach)).

    Protokół IP SLA

    • Zapewnia gwarancję poziomu dostarczanych usług.
    • Określa zasady dotyczące łączności oraz wydajności usług sieciowych.
    • Wspiera izolację problemów jak i proces planowania sieci.
    • Zmniejsza czas potrzebny do naprawy awarii (MTTR).

    Pomiary protokołu IP SLA

    • Protokół IP SLA może współpracować z:
      • Protokołami routingu dynamicznego oraz z routingiem statycznym.
      • Protokołem SNMP, generującym wiadomości Trap oraz Inform.
      • Z funkcją śledzenia aktywności (Track), wspomagając takie protokoły jak FHRP, VRRP bądź GLBP.
      • Z protokołami głosowymi VoIP, w poszukiwaniu ścieżki z najniższym opóźnieniem.
    • Protokół IP SLA może nadawać komunikaty SNMP w przypadku:
      • Utraty połączenia z śledzonym obiektem.
      • Upływu czasu oczekiwania na odpowiedź (np. Ping).
      • Przekroczenia progu RTT (Opisany poniżej).
      • Wystąpienia jednokierunkowej utraty pakietów.
      • Wystąpienia jednostronnego opóźnienia.
    • Protokół IP SLA może być wykorzystany do:
      • Monitorowania dostępności sieci (np. oddziałów zdalnych).
      • Monitorowania wydajności sieci.
      • Monitorowania jakości połączeń VoIP, wideo bądź VPN.
      • Monitorowania stanu usług SLA.
      • Monitorowania stanu sieci IP, PPP bądź MPLS.
      • Rozwiązywania problemów z działaniem sieci.
    • Protokół IP SLA przetrzymuje zebrane informacje na temat dostępności w odpowiednich polach MIB protokołu SNMP bądź wyświetla je za pomocą konsoli czy połączenia zdalnego SSH (Poprzez komendy tekstowe CLI).
    • Protokół IP SLA posiada szereg funkcji mających na celu śledzenie usługi SLA oraz jaj aktywne monitorowanie. Poszczególne operację mogą badać sieci pod względem:
      • Statystyk utraty pakietów.
      • Opóźnień Jitter oraz oceny jakości głosu.
      • Badania kompleksowej łączność z siecią (End-to-end network connectivity).
      • Opóźnień powstających w sieci jak i czasu reakcji.

    Zastosowanie (Uses)

    Availability Network Performance Monitor VoIP Monitoring SLA Monitoring Network Monitoring MPLS Monitoring Troubleshooting

    Pomiar Metryki (Measuremetn Metrics)

    Latency Packet Loss Network Jitter Distribution of Statistics Connectivity

    Operacje (Operations)

    Jitter FTP DNS DHCP DLSW ICMP UDP TCP HTTP LDP H.323 SIP RTP

    Zastosowanie protokołu IP SLA

    Działanie protokołu IP SLA

    Nazewnictwo wykorzystywane w protokole IP SLA

    • IP SLA Source – Urządzenie Cisco wysyłające komunikaty (np. ICMP), w celu testowania jakości połączenia sieciowego czy innych usług sieciowych. Po otrzymaniu odpowiedzi dane przechowywane są w strukturze MIB protokołu SNMP.
    • Target – Urządzenie firmy Cisco lub innego dostawcy, które odpowiada na komunikaty urządzenia ”IP SLA Source”. Urządzenie te nie musi być dodatkowo konfigurowane ani nie musi wspierać protokołu IP SLA.
    • IP SLA Responder – Urządzenie Cisco odpowiadająca na komunikaty urządzenia ”IP SLA Source”. Dzięki czemu możliwe staję się tworzenie pomiarów dotyczących jakości połączenia sieciowego. Urządzenie te musi być dodatkowo skonfigurowane za pomocą komendy [ip sla responder].

    Zasady działania protokołu IP SLA

    • Urządzenie IP SLA Responder – Odpowiada na zapytania nadawcy IP SLA Source, przetwarzając nadesłane przez niego pakiety. Co umożliwia bardziej precyzyjny pomiar opóźnień jak i określenie rzeczywistej przepustowości łącza
    • Wartość RTT (Round-Trip Transit) – Określa opóźnienie czasowe wynikające z przesyłu pakietu ICMP przez sieć, nie uwzględniając przy tym opóźnień powstałych podczas przetwarzania pakietu na urządzeniu źródłowym „IP SLA Source” jak i docelowym „IP SLA Responder”. Aby uzyskać wartość opóźnienia urządzenie docelowe dodaje do pakietu ICMP wartość  Time Stamps umożliwiającą określenie czasu przez jaki ruter przetwarzał otrzymany pakiet.
    Mierzenie opóźnienia wysłanych wiadomości ICMP
    • Obliczanie wartości RTT = [Czas odpowiedzi ICMP Request] D4 D1 A (A = D3 D2).
    Skonfigurowanie aktywnego urządzenia docelowego „IP SLA Responder”, umożliwia między innymi prowadzenie pomiarów asynchronicznych (Mierzących wartości Jitter, Delay czy Packet Loss w jedną stronę komunikacji).
    Proces działania protokołu IP SLA
    1. Urządzenie ”IP SLA Source” wysyła wiadomość sterującą, zawierającą konfigurację protokołu IP SLA na port sterujący (UDP 1967) urządzenia docelowego „IP SLA Responder”. W przypadku gdy uwierzytelnianie MD5 jest włączone, suma kontrolna jest wysyłana wraz z komunikatem kontrolnym.
      • Jeżeli uwierzytelnienie algorytmem MD5 nie powiedzie się, urządzenie ”IP SLA Responder” zwróci komunikat o niepowodzeniu procesu uwierzytelnienia, przerywając tym samym prowadzenie pomiarów IP SLA.
    2. Jeżeli urządzenie ”IP SLA Source” nie otrzyma odpowiedzi od odbiorcy, spróbuje ponowić proces ponownego wysłania wiadomość sterującej, do momentu zakończenia operacji (Times Out).
    3. Po otrzymaniu jak i przetworzeniu wiadomości sterującej przez odbiorcę, urządzenie „IP SLA Responder” odsyła odpowiedź „OK” na wskazany w wiadomości sterującej port docelowy (UDP 2020).

    Pozostałe tematy związane z protokołem IP SLA

  • (Ts) Troubleshooting protokołu IP SLA*

    (Ts) Troubleshooting protokołu IP SLA*

    Monitorowanie protokołu IP SLA

    Monitorowanie odpowiedzi ICMP-ECHO

    • Komenda [show ip sla summary] – Wyświetla skonfigurowane instancję protokołu IP SLA, prezentując podstawowe informacje o ich konfiguracji. W tym rodzaj operacji IP SLA, adres IP na który wysyłane są wiadomości ICMP, czas ostatniego otrzymania odpowiedzi (Response), wartość opóźnienia (RTT) oraz status operacji danej instancji protokołu IP SLA (Wartość „Return Code” równy „ok” oznacza, że odpowiedź ICMP została otrzymana).
    • Komenda [show ip sla statistics SLA-numer-ID] – Wyświetla statystyki protokołu IP SLA, uwzględniając ostatnią wartość opóźnienia (RTT) oraz statystyki określające ilość uzyskanych odpowiedzi na wysłane zapytanie ICMP jak i ilość porażek.
    • Komenda [ip sla restart SLA-numer-ID] – Resetuje licznik otrzymanych i nieotrzymanych odpowiedzi na zapytanie ICMP.

    Monitorowanie protokołu IP SLA za pomocą historii (ICMP-ECHO)

    Funkcja zapisywania historii protokołu IP SLA, umożliwia łatwiejsze oraz bardziej wydajne przetrzymywanie informacji na temat operacji IP SLA, przy jednoczesnym zapisie większej ilości bardziej szczegółowych danych.
    • Komenda [show ip sla history SLA-numer-ID] – Wyświetla pełną historię wysłanych zapytań ICMP wraz otrzymanymi bądź nieotrzymanymi odpowiedziami. Dzięki odpowiednim ustawieniom funkcji zapisywania danych, w pamięci mogą być przetrzymywane jedynie zapytania ICMP na które odpowiedź nie została otrzymana.

    Pozostałe tematy związane z protokołem IP SLA

  • (PK) Przykładowa konfiguracja protokołu IP SLA*

    (PK) Przykładowa konfiguracja protokołu IP SLA*

    PBR – Policy-Based Routing

    Konfiguracja protokołu IP SLA z wykorzystaniem funkcji PBR

    wstępna konfiguracja protokołu IP SLA

    (config)# ip sla SLA-ID

    Xxx

    (config-ip-sla)# icmp-echo {docelowa-nazwa-hosta / docelowy-adres-IP} [{source-ip {źródłowy-adres-IP / źródłowa-nazwa-hosta} / source-interface źródłowy-interfejs}]

    Definiuje adres bądź nazwę docelowego urządzenia (IP SLA Responder) oraz opcjonalny źródłowy adres IP bądź nazwę urządzenia nadawczego (IP SLA Source).

    (config-ip-sla-echo)# frequency 1-604800(60)

    Określa częstotliwość wysyłania pakietów ICMP (W sekundach).

    (config-ip-sla-echo)# ip sla schedule SLA-ID life {czas-s(3600) / forever} start-time {now / dokładna-data}

    Określa harmonogram pracy danej instancji IP SLA, z uwzględnieniem czasu rozpoczęcia oraz zakończenia pracy.

    Konfiguracja listy ACL

    (config)# access-list >100 permit ip host adres-IP(źródłowy adres protokołu IP SLA) host adres-IP(docelowy adres protokołu IP SLA)

    Tworzy listę ACL, określającą ruch kierowany z lokalnego urządzenia do odbiorcy IP SLA.

    Konfiguracja funkcji PBR

    (config)# route-map nazwa-PBR permit

    Tworzy nowy wpis funkcji PBR.

    (config-route-map)# match ip address extended-ACL

    Określa sieć, której będzie dotyczył wpis PBR.

    (config-route-map)# set ip next-hop adres-IP(preferowany adres następnego przeskoku)

    Określa Interfejs bądź adres następnego przeskoku, dla sieci wskazanych za pomocą komendy [match].

    (config)# ip local policy route-map nazwa-PBR

    Przypisuje wpis funkcji PBR do danego interfejsu.
    Konfiguracja funkcji PBR została dokładnie opisane w rozdziale Policy-Based Routing.

    Pozostałe tematy związane z protokołem IP SLA

  • (K) Konfiguracja protokołu NTP*

    (K) Konfiguracja protokołu NTP*

    Konfiguracja protokołu NTP

    Ręczna konfiguracja czasu lokalnego

    Konfiguracja zegara

    # clock set godzina:minuta:sekunda dzień miesiąc rok

    Ustawia nową godzinę jak i nową datę urządzenia.

    # clock update-calendar

    Aktualizuję ustawienia czasu systemu IOS (software) z ustawieniami urządzenia (hardware).

    Konfiguracja strefy czasowej

    (config)# clock timezone strefa-czasowa opóźnienie-czasu

    Ustala strefą czasową w której pracuje urządzenie. W przypadku Polski komeda będzie wyglądała następująco [clock timezone +48 1 bądź clock timezone EDT 1] z czego +48 oznacza strefę PL a 1 różnice czasową do strefy 0.

    (config)# clock summer-time strefa-czasowa date dzień miesiąc rok godzina dzień miesiąc rok godzina

    Określa strefę czasową w jakiej znajduje się urządzenie wraz z dokładną datą rozpoczęcia i zakończenia czasu letniego. W przypadku Polski komeda będzie wyglądała następująco [clock summer-time UTC recurring last Sun Mar 2:00 last Sun Oct 3:00].

    Podstawowa konfiguracja protokołu NTP

    Domyślna konfiguracją protokołu NTP na ruterach jak i przełącznikach Cisco sprawia, że działają one zarówno jako klient jak i serwer protokołu NTP jednocześnie (Należy przy tym pamiętać, że prawdziwym zaufanym serwerem czasu zostaje jedynie urządzenie skonfigurowane za pomocą komendy [ntp master]).
    W przypadku konfiguracji serwera NTP na ruterze Cisco, dobrą praktyką jest stworzenie interfejsu LoopBack, na który powoływać się będą klienci usługi NTP. Dzięki czemu awaria jednego z interfejsów nie zakłuci działania protokołu.

    Konfiguracja serwera protokołu NTP

    (config)# ntp master [1-15(8)(Stratum)]

    Określa rolę danego urządzenia jako zaufany server protokołu NTP.

    (config)# ntp peer {nazwa-hosta / adres-IP}

    Określa adres IP innego serwera NTP, w celu uzyskania nadmiarowości.

    (config)# interface interfejs

    Włącza funkcję pasywną na określonym interfejsie sieciowym.

    (config-if)# ntp broadcast

    Aktywuje tryb Broadcast dla protokołu NTP na danym urządzeniu, względem określonego interfejsu bądź wielu interfejsów sieciowych.

    Konfiguracja klienta protokołu NTP

    (config)# ntp server {nazwa-hosta / adres-IP} [prefer] [version {3 / 4}(4)]

    Określa adres IP bądź nazwę domenową serwera NTP (dodatkowa opcja „prefer” definiuje dany adres jako domyślny w przypadku skonfigurowania większej liczby serwerów NTP, natomiast komenda „version” określa wykorzystywaną wersją protokołu).

    (config)# ntp broadcast client

    Urządzenie zaczyna pełnić rolę klienta protokołu NTP dla wiadomości rozgłoszeniowych.

    (config)# ntp source interfejs

    Określa źródłowy interfejs wykorzystywany w komunikacji ze serwerem NTP.

    Uwierzytelnianie protokołu NTP za pomocą klucza MD5

    Konfiguracja serwera protokołu NTP

    (config)# ntp master [1-15(8)(Wartość Stratum)]

    Określa rolę danego urządzenia jako zaufany server protokołu NTP.

    (config)# ntp authenticate

    Aktywuje uwierzytelnianie serwera NTP.

    (config)# ntp authentication-key ID-klucza md5 klucz

    Tworzy nowy klucz MD5 z przypisanym numerem ID (Komenda może być wykonana wielokrotnie tworząc większą liczbę kluczy).

    (config)# ntp trusted-key ID-klucza

    Określa zaufany klucz służący do autentykacji klientów NTP (Komenda może być wykonana wielokrotnie umożliwiając przypisanie większej ilości kluczy dla różnych klientów NTP).

    Konfiguracja klienta protokołu NTP

    (config)# ntp authenticate

    Aktywuje uwierzytelnianie klienta protokołu NTP.

    (config)# ntp authentication-key ID-klucza md5 klucz

    Tworzy nowy klucz MD5 z przypisanym numerem ID.

    (config)# ntp trusted-key ID-klucza

    Określa zaufany klucz służący do uwierzytelniania serwera NTP.

    (config)# ntp server {nazwa-hosta / adres-IP} key ID-klucza

    Przypisuje klucz do określonego serwera NTP.
    W przypadku wykorzystywania adresacji IPv6 konieczne jest użycie pod komendy „version 4” na końcu każdej komendy NTP wymagającej podania adresu IPv6. Przykładowo [ntp server 2002:ACAC:32:FR:3 version 4].

    Protokół NTP a listy ACL

    Pomimo zastosowania autentykacji serwera NTP przy pomocy klucza, nadal wszystkie hosty w sieci mogą aktualizować swój czas systemowy z konfigurowanym urządzeniem (O ile znają kluz autentykacji). Aby dodatkowo ograniczyć to zjawisko należy stworzyć listę ACL określającą jakie adresy IP mogą aktualizować zegary a jakie nie.

    (config)# access-list lista-ACL permit adres-IP maska

    Tworzy nową listę dostępu ACL.

    (config)# ntp access-group opcja lista-ACL

    Przyłącza listę ACL do konfiguracji protokołu NTP.
    * peer – Aktualizuje swój zegar jedynie z adresami zawartymi w liście ACL.
    * serve – Dopuszcza zapytania dotyczące aktualizacji czasu jedynie od adresów zawartych w liście ACL. Odpowiada na zapytania NTP Request.
    Odrzuca aktualizacje NTP updates.
    * serve-only – Umożliwia klientom, których adres IP jest zgodny z listą ACL, synchronizację czasu zegara. Zabraniając przy tym aktualizacji własnego zegara z innymi źródłami NTP. Odpowiada jedynie na zapytania NTP Request.
    Odrzuca prośbę o synchronizację czasu lokalnego.

    Blokowanie protokołu NTP

    Podstawowe blokowanie protokołu NTP

    (config)# interface interfejs

    Przechodzi do poziomu konfiguracji, określonego interfejsu sieciowego.

    (config-if)# ntp disable

    Wyłącza serwis protokołu NTP, na konfigurowanym interfejsie sieciowym.

    Blokowanie protokołu NTP na podstawie listy ACL

    (config-)# access list lista-ACL deny udp any eq 123 any eq 123

    Definiuje listę dostępową ACL, blokującą cały ruch protokołu NTP (Domyślny port 123).

    (config-)# access-list lista-ACL permit any any

    Definiuje listę dostępową ACL, przepuszczającą pozostały ruch sieciowy.

    (config)# interface interfejs

    Przechodzi do poziomu konfiguracji, określonego interfejsu sieciowego.

    (config-if)# ip access-group lista-ACL in

    Przypisuje stworzoną listę ACL, do konfigurowanego interfejsu sieciowego.

    Komendy Show

    # show clock [detail]

    Wyświetla czas oraz date lokalnego systemu (software). Dodatkowa komenda „detail” wyświetla źródło, z którego system pobierał informacje o czasie zegara.

    # show calendar

    Wyświetla czas oraz date lokalnego urządzenia (Hardware). Dodatkowa komenda „detail” wyświetla źródło, z którego system pobierał informacje o czasie zegara.

    # show ntp associations

    Wyświetla skonfigurowane serwery czasu. W przypadku klienta komunikat „unsynchronized” oznacza, że urządzenie nie pobiera jeszcze żadnych danych od serwera NTP. Natomiast w przypadku serwera „ntp master” ten komunikat będzie widoczny przez cały czas.

    # show ntp status

    Wyświetla status protokołu NTP na danym urządzeniu.

    # show ntp config

    Wyświetla konfiguracją protokołu NTP na danym urządzeniu.

    # show ntp information

    Wyświetla informacje dotyczące wersji protokołu NTP na danym urządzeniu.

    # show ntp packets

    Wyświetla ilość wysłanych / odebranych pakietów protokołu NTP na danym urządzeniu.

    Pozostałe tematy związane z protokołem NTP

  • (T) Teoria protokołu NTP*

    (T) Teoria protokołu NTP*

    Wprowadzenie do protokołu NTP

    Podstawowe pojęcia

    • Protokół NTP (Network Time Protocol) umożliwia synchronizacje czasu lokalnego urządzenia sieciowego, z zgarami innych bardziej zaufanych urządzeń. Działa on zgodnie z podziałem hierarchicznym, w którym najbardziej zaufane są źródła bazują na zegarach atomowych oraz systemie GPS, a mniej zaufane należą do dostawców usług internetowych jak i innych urządzeń znajdujących się w sieci lokalnej. Poszczególne poziomy zaufania (Stratum), są numerowane od 1 do 16 z czego niższy numer ma największy priorytet (Wartość 16 nie może być przypisana do urządzenia, ponieważ oznacza źródło nieosiągalne nie brane pod uwagę przy aktualizacji zegara).
    • Serwer protokołu NTP odpowiada na zapytania klientów, odsyłając im informację o własnych ustawieniach zegara.
    • W przypadku podstawowej konfiguracji protokołu NTP, skonfigurowane urządzenie oprócz roli serwera pełni również rolę klienta. Dzięki czemu jednocześnie może aktualizować swój czas z innymi bardziej zaufanymi źródłami (np. zegarem atomowym) jak i odpowiadać na zapytania NTP innych urządzeń sieciowych.
    • Aby uniknąć synchronizacji z urządzeniami niezaufanymi, protokół NTP odrzuca serwery, których czas nie jest synchronizowany z urządzeniami zaufanymi (Np. stratum 1). Ponadto porównywany jest pomiędzy sobą czas otrzymany z wielu serwerów NTP, dzięki czemu możliwe staje się wykrycie serwera podającego wartość czasu znacząco różniącą się od innych (Nawet jeśli mają one mniejszą wartość Stratum).
    • Klient protokołu NTP:
      • Odpytuje serwer w odstępach czasowych od 64 do 1024 sekund. Odstępy te mogą ulec zmianie w zależności od warunków sieciowych panujących w sieci pomiędzy klientem a serwerem NTP.
      • Może mieć zapisanych w pamięci wiele serwerów NTP, będzie on jednak korzystał tylko z jednego posiadającego najniższą wartości Stratum.
    NTP wykorzystuje protokół UDP na porcie 123 w celu dostarczania aktualizacji dotyczących ustawień czasu.
    Wartość Stratum 1 przypada serwerom NTP, których czas jest synchronizowany z zegarem atomowym bądź GPS-em.

    Działanie protokołu NTP

    Tryby pracy protokołu NTP

    • NTP Server – Stanowi zaufane źródło informacji związanych z ustawieniami zegara, umożliwiające synchronizację własnego czasu z innymi urządzeniami sieciowymi, za pomocą protokołu NTP.
      • Stratum 1 server Urządzenie bezpośrednio czerpiące informację o czasie zegara, z zaufanego źródła np. zegara atomowego bądź zegara wykorzystującego system GPS.
      • Stratum 2 server – Urządzenie czerpiące informację o czasie zegara od urządzenia Stratum 1.
    Domyślna konfiguracja protokołu NTP w systemie IOS nie stanowi zaufanego źródła informacji o czasie zegara.
    Domyślnie Klient protokołu NTP działa również jako serwer protokołu NTP, jeżeli aktualizuje swój czas z innym bardziej zaufanym serwerem, bądź działa w trybie Master.
    • NTP Master server (Domyślnie Stratum 8) – Stanowi zaufane źródło informacji o ustawieniach zegara, umożliwiające synchronizację własnego czasu z innymi urządzeniami sieciowymi, nawet jeżeli samo nie aktualizuje ustawień zegara z innymi bardziej zaufanymi źródłami. W komunikacji z samym sobą Master Server wykorzystuje lokalny adres IP 127.127.1.1 (W starszych wersja systemu Cisco IOS będzie to adres 127.127.7.1).
    • NTP Client – Synchronizuje czas zegara z serwerem NTP.
    • NTP Peer – Wymienia informacje na temat czasu zegara z innymi urządzeniami, zachowując nadmiarowość.
    • NTP Broadcast / Multicast – Działa na zasadzie serwera NTP, rozgłaszając informacje na temat własnego czasu zegara do wszystkich nasłuchujących urządzeń (Komunikacja ta działa jedynie w jedną stronę i nie jest zaufana).

    Przykładowe topologie z wykorzystaniem protokołu NTP

    • Zegar atomowy -> NTP Master (Stratum 8) -> Client / Serwer (Stratum 9) -> Client (Stratum 10).
    • NTP Master (Stratum 1) -> Client / Serwer (Stratum 2) -> Client (Stratum 3).

    Wersje protokołu NTP

    • Wersja 3 (NTP 3RFC 1305) oraz wersja 4 (NTP 4RFC 5905).
    • Wersja 3 (NTP 3) wysyła wiadomości broadcast, natomiast wersja 4 (NTP 4) multicast.
    • Wersja 4  (NTP 4) wspiera protokół IPv4 oraz protokół IPv6 jak i umożliwia uwierzytelnianie serwera NTP.
    • Simplified Network Time Protocol (SNTP RFC 4330).

    Pozostałe tematy związane z protokołem NTP

  • (TK) Protokół Syslog**

    (TK) Protokół Syslog**

    Wstęp teoretyczny

    • Oprócz podstawowej opcji przeglądania komunikatów systemowych za pomocą komendy [show logging], konsoli bądź połączenia zdalnego VTY, istnieje możliwość automatycznego przesyłania wszystkich wygenerowanych przez system IOS komunikatów systemowych, na zdalny serwer Syslog. Tym samym administrator sieci zyskuje możliwość przechowywania oraz wyświetlania wszystkich komunikatów systemowych dotyczących wszystkich urządzeń sieciowych, w jednym miejscu, w łatwy sposób generując na ich podstawie np. diagramy czy statystyki.
    • W celu przesyłania komunikatów systemowych protokół Syslog wykorzystuje połączenie UDP na porcie 514.

    Konfiguracja protokołu Syslog

    Podstawowa konfiguracja Synlog

    Konfiguracja komunikatów systemowych (SysLog)

    (config)# logging host {nazwa-DNS / adresy-IP} [wartość]

    Określa adres IP bądź nazwę DNS serwera Syslog (Opcjonalnie istnieje możliwość dodania większej liczby serwerów Syslog w celu uzyskania nadmiarowości).
    * brak – Określa adres serwera Syslog bez dodatkowych opcji (Jest to opcja domyślna).
    * transport {tcp port 1-65535 / udp port 1-65535}(udp port 514) – Określa protokół (TCP / UDP) oraz port warstwy czwartej wykorzystywany w komunikacji z serwerem Syslog.
    * prefer – Określa preferowany serwer Syslog (W przypadku użycia większej liczby komend [logging host]).
    * xml – Rozpoczyna wysyłanie komunikatów (logging-ów) w formacie XML.
    * discriminator – Przypisuje regułę filtracji komunikatów systemowych, przed wysłaniem ich do serwera Syslog (Filtracja wiadomości systemowych została opisana w artykule: Konfiguracja logów systemowych).
    * sequence-num-session – Dodaje numer ID sesji do wysyłanych komunikatów systemowych.
    * session-id {hostname / ipv4 / ipv6 / string text} – Dodaje identyfikator urządzenia do wysyłanych komunikatów systemowych.

    (config)# logging trap {0-7 / nazwa-poziomu}

    Określa poziom komunikatów systemowych wysyłanych na serwer Syslog.

    (config)# logging facility {local0-7 / sys10-14}(local0-7)

    Wszystkie komunikaty wysyłane na serwer Syslog, domyślnie przynależą do kategorii „local7”, tym samym wiadomości z wielu urządzeń sieciowych trafiają do jednego katalogu. Aby to zmienić należy np. ustawić jedną kategorie zarezerwowaną dla przełączników a inną dla ruterów.

    (config)# logging source-interface interfejs

    Określa interfejs źródłowy względem wysyłanych komunikatów systemowych do serwera Syslog.

    Konfiguracja komunikatów systemowych (SNMP)

    (config)# logging history {0-7(Poziom loginów) / nazwa-poziomu}

    Określa poziom komunikatów systemowych zapisywanych w pliku historii a następnie przesyłanych do serwera SNMP.

    (config)# logging history size 0-500(0)

    Określa limit wiadomości przetrzymywanych w pliku historii.

    Ograniczanie liczby komunikatów wysyłanych na serwer Syslog

    (config)# ip access-list logging interval 0-2147483647(Milisekundy)*

    Ogranicza liczbę pakietów (Logging) przetwarzanych przez procesor urządzenia, do określonej liczby pakietów na jedną milisekundę.

    (config)# logging rate-limit [wartość] 1-10000(10)(Sekundy) [except {0-7 / nazwa-poziomu}]

    Wprowadza limit wysyłanych do serwera Syslog, komunikatów systemowych. Ograniczając ich liczbę do podanej w komendzie wartości (Komunikatów na sekundę). Opcjonalna wartość (Except) określa jakich poziomów (Severity) nie będzie dotyczyło dane ograniczenie (Limit). Wartość określa dany poziom (Severity) oraz wszystkie niższe poziomy (Np. 4 oznacza zakres od 4 do 7).
    * brak – Brak dodatkowych opcji (Jest to opcja domyślna).
    * all – Dotyczy wszystkich poziomów komunikatów (po użyciu tej wartości opcja „except” jest zbędna).
    * console {non / all} – Dotyczy jedynie wiadomości wysyłanych na konsole.

    (config)# interface interfejs

    Przechodzi do poziomu konfiguracji wskazanego interfejsu sieciowego.

    (config-if)# no logging event [link-status / subif-link-status]

    Aby zapobiec wysyłaniu na serwer Syslog niepotrzebnych komunikatów związanych z stanem interfejsów sieciowych, istnieje możliwość zablokowania tych wiadomości z poziomu określonego interfejsu bądź wielu interfejsów sieciowych.

    Pozostałe tematy związane z protokołem Logging & Syslog

  • (K) Konfiguracja logów systemowych**

    (K) Konfiguracja logów systemowych**

    Konfiguracja podstawowa

    Konfiguracja Logging-ów na konsoli

    Podstawowa konfiguracja logging-ów na konsoli

    (config)# logging console {0-7 / wartość}

    Określa poziom komunikatów systemowych, jaki będzie wyświetlany na linii konsoli CLI (zarówno konsola jak i połączenia zdalne nie są zalecanymi metodami przeglądania komunikatów systemowych).
    * emergencies (0) – Urządzenie nie nadaje się do użytkowania.
    * alerts (1) – Istnieje potrzebna natychmiastowa interwencja.
    * critical (2) – Sytuacja krytyczna, wymaga interwencji.
    * errors (3) – Wykryto błędy.
    * warnings (4) – Ostrzeżenie systemowe.
    * notifications (5) – Zwykłe, ale ważne informacje.
    * informational (6) – Komunikaty informacyjne o zdarzeniach.
    * debugging (7) – Komunikaty związane z debugowaniem.

    (config)# logging buffered [4096-2147483647(bity) / {0-7(Poziom loginów) / nazwa-poziomu} / xml]

    Aktywuje funkcję zapisywania komunikatów systemowych w pamięci ulotnej urządzenia lokalnego (Opcja ta nie jest domyślnie włączona w systemie IOS).
    * 4096-2147483647 – Określa ilość pamięci zarezerwowanej względem przetrzymywanych komunikatów systemowych (domyślnie system rezerwuje w tym celu 4096 bitów co pozwala zapisać około 50 komunikatów).
    * {0-7 / nazwa-poziomu} – Określa poziom komunikatów systemowych zapisywanych w pamięci ulotnej urządzenia.
    * xml – Włącza funkcję wyświetlania komunikatów systemowych w formacie XML.

    (config)# default logging buffered

    Przywraca domyślną konfigurację komunikatów systemowych względem konsoli CLI.

    (config)# logging count

    Aktywuje automatyczny licznik zapisywanych komunikatów systemowych (Bez jednoczesnego nadpisywania ustawień związanych z wyświetlaniem czasu service timestamps”).

    # show logging

    Wyświetla informacje dotyczące konfiguracji komunikatów systemowych.

    Konfiguracja logging-ów informujących o próbie logowania do systemu IOS

    (config)# login on-success [{log / trap}] [every 1-65535]

    Umożliwia monitorowanie procesu logowania do systemu ISO, informując o pozytywnym jego zakończeniu. Pod-komenda „log” zapisuje w pamięci urządzenia oraz wyświetla na konsoli CLI potwierdzenie o zalogowaniu się użytkownika, „trap” generuje wiadomość protokołu SNMP, natomiast „etery” określa częstotliwość w wysyłaniu powiadomień.

    (config)# login on-failure [{log / trap}] [every 1-65535]

    Umożliwia monitorowanie procesu logowania do systemu ISO, informując o negatywnym jego zakończeniu. Pod-komenda „log” zapisuje w pamięci urządzenia oraz wyświetla na konsoli potwierdzenie o niezalogowaniu się użytkownika, „trap” generuje wiadomość protokołu SNMP, natomiast „etery” określa częstotliwość w wysyłaniu powiadomień.

    # show logging

    Wyświetla informacje dotyczące konfiguracji komunikatów systemowych.

    Konfiguracja logging-ów względem innych protokołów

    (config)# ntp logging

    Aktywuje generowanie komunikatów systemowych, związanych z protokołem NTP.

    (config)# ip ssh logging events

    Aktywuje generowanie komunikatów systemowych, związanych z protokołem SSH.

    (config)# router ospf ASN

    Przechodzi do poziomu konfiguracji protokołu OSPF.

    (config-router)# log-adjacency-changes

    Aktywuje generowanie komunikatów systemowych, związanych z protokołem OSPF.

    Konfiguracja nieulotnej bazy logging-ów (Persistent)

    (config)# logging persistent [wartość]

    Zapisuje komunikaty systemowe w pamięci nie ulotnej. (Opcja ta nie jest domyślnie włączona w systemie Cisco IOS). Opcjonalne pod-komendy oznaczają:
    * filesize 8192-2142715904(bajty) – Określa rozmiar pojedynczego pliku zawierającego komunikaty.
    * size 16384-2142715904(bajty) – Określa wielkość przestrzeni zarezerwowanej na potrzeby komunikatów.
    * protected – Zapobiega nieautoryzowanej manipulacji na zawartości zapisanych komunikatów systemowych.
    * immediate – Natychmiastowo zapisuje występujące komunikaty systemowe w pamięci nie ulotnej.
    * notify – Informuje o aktywacji funkcji „persistent”.
    * url – Określa lokalizację zapisywanych komunikatów systemowych.

    # show logging

    Wyświetla informacje dotyczące konfiguracji komunikatów systemowych.

    Filtrowanie logging-ów

    (config)# logging discriminator nazwa-filtra {wartość} {drops / includes} wartość(Słowo kluczowe filtracji np. numer poziomu komunikatów systemowych 1,5) [Kolejna wartość filtrująca]

    Tworzy nową regułę umożliwiającą filtrację komunikatów systemowych (Drop), tudzież regułę umożliwiającą przepuszczanie jedynie wskazanych komunikatów systemowych (Includes). Poniższe wartości określają kryterium na podstawie którego będą filtrowane komunikaty systemowe:
    * msg-body – Filtruje komunikaty systemowe po zawartości komunikatu.
    * facility – Filtruje komunikaty systemowe po unikalnym kodzie błędu.
    * severity – Filtruje komunikaty systemowe po wadze poziomu (severity).
    * mnemonics
    * rate-limit

    (config)# logging {host adres-IP / consol / monitor} discriminator nazwa-filtra

    Przypisuje stworzoną regułę filtracji komunikatów systemowych, do konsoli, połączenia zdalnego bądź serwera syslog.

    # show logging | include nazwa-filtra

    Wyświetla konfigurację funkcji “discriminator“, wraz z komunikatami przez nią zablokowanymi.

    # show logging

    Wyświetla informacje dotyczące konfiguracji komunikatów systemowych, w tym informacje dotyczące funkcji “discriminator“.

    Konfiguracja logging-ów na interfejsie Management-owym

    (config)# logging source-interface interfejs vrf Mgmt-intf

    Wartość „Mgmt-intf” zależy od lokalnej konfiguracji systemu Cisco IOS.
    Wyświetlanie komunikatów systemowych (Cisco IOS)

    Konfiguracja logging-ów na terminalu zdalnym

    (config)# terminal [no] monitor

    Wyłącza / Włącza funkcję wysyłania logging-ów systemowych na konsole zdalną (Komenda jest dostępna jedynie z poziomu konfiguracji zdalnej np. poprzez połączenie SSH bądź Telnet).

    (config)# logging monitor {0-7 / nazwa-poziomu}

    Określa poziom komunikatów systemowych wysyłanych na konsole zdalną SSH bądź połączenie Telnet.

    (config)# line vty 0-924 4-924(Zakres konfigurowanych linii VTY)

    Przechodzi do poziomu konfiguracji linii zdalnej.

    (config-line)# logging synchronous

    Blokuje wyświetlanie komunikatów systemowych podczas przeglądania wydruku komendy Show oraz w czasie wprowadzania innych komend z poziomu konsoli CLI.

    # show logging

    Wyświetla informacje dotyczące konfiguracji komunikatów systemowych.

    Konfiguracja opcjonalna

    Czas systemowy w logging-ach

    Zmiana ustawień związanych z wyświetlaniem czasu komunikatów systemowych, może nadpisać cześć wcześniejszej konfiguracji związanej z komunikatami systemowymi (W tym np. filtrowanie logging-ów).

    Konfiguracja czasu w komunikatach systemowych (Logging-ów)

    (config)# service timestamps log datetime localtime [show-timezone] [msec] [year]

    Dodaje do wyświetlanych komunikatów systemowych, aktualny czas pobrany z urządzenia lokalnego localtime, wyświetlając oprócz obecnej godziny, milisekundy msec, rok year oraz skonfigurowaną strefę czasową show-timezone.

    (config)# service timestamp log uptime

    Dodaje do wyświetlanych komunikatów systemowych informację o czasie, jaki upłynął od ostatniego zrestartowania urządzenia (Zamiast czasu pobranego z urządzenia lokalnego localtime).

    (config)# [no] service sequence-number

    Wyłącza / Włącza funkcją dodawania numeru sekwencyjnego do komunikatów systemowych (Zamiast czasu urządzenia lokalnego bądź czasu jaki upłynął od restartu systemu IOS). Numer ten wzrasta z każdym wyświetlonym komunikatem systemowym.

    (config)# logging count

    Włącza automatyczny licznik zapisywanych komunikatów systemowych (Bez nadpisywania czasu wystąpienia komunikatu systemowego).

    # show logging

    Wyświetla informacje dotyczące konfiguracji komunikatów systemowych.

    Konfiguracja komunikatów debagujących (Debug)

    (config)# service timestamps debug datetime localtime [show-timezone] [msec] [year]

    Dodaje do wyświetlanych komunikatów debagujących, aktualny czas pobrany z urządzenia lokalnego localtime, wyświetlając oprócz obecnej godziny, milisekundy msec, rok year oraz skonfigurowaną strefę czasową show-timezone.

    (config)# service timestamp debug uptime

    Dodaje do wyświetlanych komunikatów debagujących informację o czasie, jaki upłynął od ostatniego zrestartowania urządzenia (Zamiast czasu pobranego z urządzenia lokalnego localtime).

    # show logging

    Wyświetla informacje dotyczące konfiguracji komunikatów systemowych.

    Komendy Show & Clear

    Komendy SHOW

    # show running-config | include logging

    Wyświetla komendy konfiguracyjne względem funkcji logging-ów systemowych.

    # show logging

    Wyświetla wszystkie zapisane w pamięci komunikaty systemowe, wraz z ustawieniami protokołu Syslog oraz Logging.

    # show logging xml

    Wyświetla wszystkie zapisane w pamięci komunikaty systemowe, w postaci formatowania XML.

    Komendy CLEAR

    # clear logging

    Usuwa historie logging-ów z pamięci urządzenia.

    Pozostałe tematy związane z protokołem Logging & Syslog

  • (T) Teoria logów systemowych**

    (T) Teoria logów systemowych**

    Budowa wiadomości Systemowych

    • Przykładowy komunikat systemu Cisco IOS: 00:30:29 %SYS5CONFIG_I Configured from Console by Console.
    • Niezależnie od poziomu komunikatu systemowego, jego budowa jest taka sama, i zawiera następujące informacje:
      • Czas, który upłynął od ostatniego zrestartowania urządzenia bądź dokładną datę z godziną (00:30:29).
      • Kategorię błędu definiującą funkcję bądź moduł dotyczący zdarzenia (%SYS).
      • Wagę błędu (severity) z zakresu od 0 do 7 (5).
      • Rodzaj błędu określony unikalnym hasłem (CONFIG_I).
      • Zrozumiały dla człowieka opis błędu (Configured from Console by Console).
    • Poszczególne komunikaty systemu IOS posiadają przypisaną wagę (severity), określającą priorytet zdarzenia jakie zaszło na urządzeniu. Każdy poziom (priorytet) posiada swój numer ID oraz nazwę, a są one następujące:
    Poziom Nazwa poziomu Opis poziomu Definicja Syslog Przykładowe komunikaty poziomu
    0 Emergencies Urządzenie nie nadaje się do użytku LOG_EMERG System nie mógł być załadowany
    1 Alerts Potrzebna natychmiastowa interwencja LOG_ALERT Za wysoka temperatura
    2 Critical Sytuacja krytyczna LOG_CRIT Błąd alokacji pamięci
    3 Errors Błędy LOG_ERR Włączenie bądź wyłączenie interfejsu
    4 Warnings Ostrzeżenia LOG_WARNING Zapisano plik przy użyciu SNMP
    5 Notifications Zwykłe, ale ważne informacje LOG_NOTICE Interfejs został włączony
    6 Informational Komunikaty informacyjne LOG_INFO Lista ACL zablokowała pakiet
    7 Debugging Komunikaty związane z debugowaniem LOG_DEBUG Komunikaty debugowania

    Poziomy komunikatów systemowych

    Pozostałe tematy związane z protokołem Logging & Syslog

  • (K) Konfiguracja protokołu Flexible NetFlow*

    (K) Konfiguracja protokołu Flexible NetFlow*

    Konfiguracja protokołu Flexible NetFlow

    Konfiguracja Flow Record

    (config)# flow record {nazwa / type praformance-monitor nazwa}

    Xxx

    (config-flow-monitor)# collect

    Xxx

    (config-flow-monitor)# match

    Xxx

    (config-flow-monitor)# descryption opis

    Xxx

    Konfiguracja Flow Monitor

    (config)# flow monitor {nazwa / type praformance-monitor nazwa}

    Xxx

    (config-flow-monitor)# record netflow {ipv4 / ipv6} [destination-prefix / xxx]

    Xxx

    (config-flow-monitor)# exporter nazwa-exportera

    Xxx

    (config-flow-monitor)# cache timeout wartość 1-604800

    * active
    * inactive
    * update
    * synchronized

    (config-flow-monitor)# statistics packet size / protocol}

    Xxx

    (config-flow-monitor)# record

    Xxx

    (config-flow-monitor)# descryption opis

    Xxx

    Konfiguracja Flow Exporter

    (config)# flow exporter nazwa

    Xxx

    (config-flow-exporter)# destination {adres-IP / nazwa}

    Określa adres IP serwera NetFlow (Colector).

    (config-flow-exporter)# source interfejs

    Określa interfejs źródłowy (Exported).

    (config-flow-exporter)# transport udp 1-65535

    Określa numer portu UDP.

    (config-flow-exporter)# template data timeout 1-86400

    Xxx

    (config-flow-exporter)# export-protocol {ipfix / netflow-v5 / netflow-v9}

    Określa wersję (Flow) protokołu NetFlow.

    (config-flow-exporter)# descryption opis

    Xxx

    (config-flow-exporter)# ttl 1-255

    Xxx

    Przypisanie protokołu Flexible NetFlow do interfejsu

    (config)# interface interfejs

    Przechodzi do poziomu konfiguracji określonego interfejsu sieciowego.

    (config-if)# ip flow monitor nazwa {input / output}

    Rozpoczyna przechwytywanie statystyk ruchu przychodzącego / wychodzącego z danego interfejs.

    Komendy SHOW

    # show ip flow interface

    Wyświetla konfigurację funkcji NetFlow, względem interfejsów danego urządzenia.

    # show ip flow stats

    Wyświetla

    # show ip cache flow

    Wyświetla zawartość pamięci cache, dla funkcji NetFlow.

    # show ip cache verbose flow

    Wyświetla szczegółową zawartość pamięci cache, dla funkcji NetFlow.

    Komendy show Flexible NetFlow

    # show ip flow export

    Wyświetla podstawowe informacje na temat konfiguracji protokołu Flexible NetFlow.

    # show flow monitor interface interfejs

    Wyświetla

    # show flow monitor name nazwa cache format record statistics

    Wyświetla

    Pozostałe tematy związane z Flexible NetFlow

  • (T) Teoria protokołu Flexible NetFlow*

    (T) Teoria protokołu Flexible NetFlow*

    NetFlow

    Wstęp do protokołu NetFlow

    • Protokół NetFlow umożliwia monitorowanie ruchu sieciowego względem danego interfejsu oraz tworzenie statystyk na podstawie zabranych danych. Dane te mogą zawierać informacje na temat źródłowego, docelowego adresu IP, źródłowego, docelowego numeru portu, rodzaju protokołu L3 czy rodzaju serwisu (ToS).
    • Protokół NetFlow opiera swoje działanie na pływach (Flow), z których najpopularniejszy jest NetFlow w wersji 5 (Dodaje on wsparcie dla protokołu BGP) oraz NetFlow w wersji 9 (Dodający wsparcie dla protokołu IPv6). NetFlow w wersji 9 został oparty o ogólnodostępny standard IETF opisywany w referencji RFC 3954).
    • NetFlow opiera swoje działanie na dwóch kluczowych komponentach:
      • NetFlow Cache
      • NetFlow Export
    Protokół NetFlow został opracowany przez firmę Cisco (Nie dotyczy wersji 9).

    Problemy związane z protokołem NetFlow

    • W sytuacji w której protokół NetFlow nie wyświetla ruchu wychodzącego, należy sprawdzić czy funkcja CEF jest włączona

    Wersje protokołu NetFlow

    Flexible NetFlow

    Zagadnienia związane z funkcją NetFlow

    • Monitor
    • Exporter
    • Collector
    • Record
    • NMS (Network Management System) –

    Protokół FNF – Flexible NetFlow

    Pozostałe tematy związane z Flexible NetFlow

  • (TK) Zarządzanie systemem Cisco IOS**

    (TK) Zarządzanie systemem Cisco IOS**

    Zarządzanie systemem IOS

    Pamięć w systemie IOS

    Rodzaje pamięci

    • RAM (Random Access Memory) – Pamięć ulotna, przechowująca następujące elementy systemu IOS:
      • Obraz działającego systemu IOS.
      • Obecnie działającą konfiguracją systemu IOS (running-config).
      • Tablicę routingu oraz odwzorowania adresów (ARP).
      • Bufor pamięci.
    • Flash Memory – Pamięć stała, przechowująca następujące elementy systemu IOS:
      • Obrazy systemu IOS.
      • Inne pliki systemowe.
    • ROM (Read-only Memory) – Pamięć stała, przechowująca następujące elementy systemu IOS:
      • Instrukcję startowe urządzenia.
      • Systemy diagnostyczne.
      • Obraz podstawowego systemu (Ala BIOS).
    • NVRAM (Non-Volatile Random Access Memory) – Pamięć stała, przechowująca następujące elementy systemu IOS:
      • Konfigurację systemu IOS (Startup-config).

    Manipulacja plikami systemowymi

    Tworzenie usuwanie katalogów

    (config)# dir

    Wyświetla zawartość pamięci Flash.

    (config)# pwd

    Podaje bieżącą lokalizacje w systemie katalogów.

    (config)# cd katalog

    Przechodzi do wskazanego w komendzie katalogu.

    (config)# mkdir nazwa-katalogu

    Tworzy nowy katalog o podanej w komendzie nazwie.

    (config)# rmdir nazwa-katalogu

    Usuwa wskazany w komedzie katalog.

    Tworzenie usuwanie plików

    (config)# dir

    Wyświetla zawartość pamięci Flash.

    (config)# pwd

    Podaje bieżącą lokalizacje w systemie katalogów.

    (config)# more nazwa-pliku

    Wyświetla zawartość wskazanego w komendzie pliku.

    (config)# delete nazwa-pliku

    Usuwa wskazany w komendzie plik (Zaznaczając go jako usunięty bez fizycznego nadpisania danych).

    (config)# squeeze

    Trwale usuwa wszystkie pliki usunięte za pomocą komendy [delete nazwa-pliku].

    (config)# rename flash:stara-nazwa-pliku nowa-nazwa-pliku

    Zmienia starą nazwę pliku.

    (config)# undelete

    Przywraca pliki usunięte za pomocą komendy [delete nazwa-pliku].

    (config)# verify obraz

    Wylicza sumę kontrolną a następnie porównuję ją z tą zapisaną w sprawdzanym pliku.

    Komendy SHOW

    (config)# show file systems

    Wyświetla pliki / katalogi systemowe.

    System IOS zagadnienia

    Podstawowe informacje na temat systemu IOS

    • Urządzenia Cisco przetrzymują obraz systemu IOS w pamięci Flash, tworząc na niej własny system pików zwany IFS (IOS File System). Komenda [show file systems] umożliwia wyświetlenie systemu plików systemowych.
    • System Cisco IOS używa wiele systemów plików, takich jak:
      • Opaque – Reprezentuje wewnętrzny system plików, wykorzystywany przez funkcje systemowe.
      • Network – Reprezentuje zewnętrzny system plików.
      • Disk – Jest wykorzystywany w wewnętrznej pamięci flash.
      • Usbflash – Jest wykorzystywany na zewnętrznej pamięci flash (USB).
      • NVRAM – Reprezentuje system plików wykorzystywany w pamięci NVRAM. Przeznaczonej do przechowywania konfiguracji „startup-config”.

    Proces aktualizacji systemu IOS

    • Należy pobrać system IOS ze strony Cisco w postaci obrazu, kolejno przegrać go na pamięć USB lub udostępnić w sieci za pomocą serwera TFTP bądź FTP. Następnie z poziomu urządzenia przegrać obraz do wewnętrznej pamięci flash oraz zboot-ować nowy system.
    Urządzenia Cisco przeważnie nie mogą być odpalane z systemu znajdującego się na pamięci przenośnej np. pamięci Flash USB.

    Skróty klawiszowe

    Podstawowe Skróty klawiszowe

    • Ctrl+P – Wyświetla najczęściej używane komendy.
    • Ctrl+B – Przenosi kursor o jeden znak w lewo (Działa tak samo jak klawisz <-).
    • Ctrl+F – Przenosi kursor o jeden znak w prawo (Działa tak samo jak klawisz ->).
    • Tab – Kończy wpisywanie komendy.
    • Ctrl+A – Przenosi kursor na początek linii.
    • Ctrl+E – Przenosi kursor na koniec linii.
    • Ctrl+R – Klonuje komendę do nowej linii.
    • Esc+B – Przenosi kursor o jedno słowo w lewo.
    • Esc+F – Przenosi kursor o jedno słowo w prawo.

    Break Keys

    • Ctrl+C – Cofa linię do poprzedniego trybu (Configure terminal > Privileged mode).
    • Ctrl+Z – Cofa linię do poprzedniego trybu (Configure terminal > Privileged mode / Privileged mode > Logout).
    • Ctrl+Shift+6 – Przerywa operację np. wykonywanie komendy ping.

    Monitorowanie oraz konfiguracja urządzenia sieciowego

    Wydajność urządzenia sieciowego

    # show processes cpu

    Wyświetla zużycie procesora wraz z aktywnymi procesami systemu IOS.

    # show processes memory

    Wyświetla zużycie pamięci RAM wraz z aktywnymi procesami systemu IOS.

    # show processes history

    Wyświetla historię aktywnych procesów.

    # show memory [summary]

    Wyświetla zużycie pamięci RAM.

    # show stacks

    Wyświetla poziom utylizacji zasobów względem poszczególnych procesów.

    # show buffers

    Wyświetla zajętość buforów.

    Podstawowe dane zapisane w systemie IOS

    # show version

    Wyświetla informacje o systemie IOS oraz jego aktywnych funkcjach.

    # show running-config

    Wyświetla bieżącą konfigurację systemu IOS.

    # show startup-config

    Wyświetla startową konfigurację systemu IOS.

    # show flash

    Wyświetla zawartość pamięci Flash.

    Zarządzanie przełącznikiem

    (config)# ip default-gateway adres-IP

    Przypisuje adres IP bramy domyślnej do urządzenia.

    (config)# ip name-serwer adres-IP1 adres-IP2

    Przypisuje adres IP serwera DNS.

    (config)# ip domain-lookup

    Umożliwia dynamiczne rozwiązywanie nazw DNS na adresy IP.

    (config)# interface vlan vlan-ID

    Przechodzi do poziomu konfiguracji sieci VLAN.

    (config-if)# ip address sieć maska

    Przypisuje adres IP, do konfigurowanego interfejsu wirtualnego.

    (config-if)# no shutdown

    Komendy SHOW

    # show ip default-gateway

    Wyświetla adres IP bramy domyślnej.

    Przydatne komendy systemu IOS

    Podstawowe komendy umożliwiające personalizacje ustawień systemu IOS

    (config)# prompt wartość

    Zmienia domyślny znak zachęty (>) na określoną w komendzie wartość.

    (config)# prompt config hostname-length 0-80

    Określa maksymalną, wyświetlaną ilość znaków nazwy Hostname.

    (config)# no service prompt config

    Wyłącza wyświetlanie nazwy urządzenia (Hostname) oraz znaku zachęty.

    (config)# alias exec nazwa komenda-CLI

    Tworzy nowy skrót wykonujący określoną komendę CLI.

    (config)# ip finger

    Włącza funkcję odpowiadającą na zapytania Finger (Zapytanie finger można wysłać za pomocą komendy [telnet adres-IP finger] w celu uzyskania wydruku komendy [show users]).

    TFTP, FTP i HTTP

    Konfiguracja protokołu HTTP

    (config)# [no] ip http server

    Aktywuje funkcję zarządzania urządzeniem sieciowym za pomocą przeglądarki HTTP.

    (config)# ip http secure-server

    Aktywuje protokół HTTPS.

    (config)# ip http secure-port port

    Określa port (Warstwy czwartej) poprzez jaki będzie nawiązywana komunikacja HTTPS.

    (config)# ip http client username nazwa-użytkownika

    Określa nazwę użytkownika, względem łączności HTTP / HTTPS.

    (config)# ip http client password hasło

    Określa hasło użytkownika, względem łączności HTTP / HTTPS.

    Konfiguracja protokołu FTP

    (config)# ip ftp password hasło

    (config)# ip ftp username nazwa-użytkownika

    SCP – SSH Copy Protocol

    (config)# crypto key generate rsa {usage-keys modulus 360-4096 / ENTER 360-4069}

    Generuje klucz rsa, o długości od 360 do 4096 bitów (Aby aktywować protokół SSH w wersji drugiej, należy wygenerować klucz RSA o minimalnej długość 1024 bitów).

    (config)# ip ssh version 2

    Wymusza użycie drugiej wersji protokołu SSH.

    (config)# username login [algorithm-type {md5 / sha256 / scrypt}] [privilege 0-15] secret hasło

    Tworzy nowe konto użytkownika lokalnego, z przypisanym hasłem zabezpieczonym za pomocą wskazanego algorytmu haszującego (opcjonalna komenda “privilege” określa poziom dostępu do systemu Cisco IOS).

    (config)# line vty 0-924 4-924(Zakres konfigurowanych linii VTY)

    Przechodzi do poziomu konfiguracji linii zdalnej.

    (config-line)# transport input ssh

    Aktywuje protokół SSH względem linii zdalnej.

    (config-line)# login local

    Umożliwia logowanie do linii zdalnej za pomocą lokalnej bazy użytkowników.

    (config)# ip scp server enable

    Aktywujefunkcję serwera SCP, na lokalnym urządzeniu.

    # copy scp: flash:

    Kopiuje plik za pomocą protokołu SSH do pamięci Flash.

    Komendy przydatne przy zarządzaniu systemem IOS

    Zarządzanie zawartością pamięci Flash

    # show file systems

    Wyświetla system plików IFS.

    # more system-plików:plik

    Wyświetla zawartość wskazanego w komendzie pliku [more nvram:startup-config]. Komenda „more” wyświetla dane przechowywane przez plik.

    # show flash

    Wyświetla zawartość pamięci flash0.

    # dir flashn:

    Wyświetla zawartość pamięci flash n(Np. 1,2 …).

    # verified /md5 flash0:pobrany-obraz suma-kontrolna

    Weryfikuje spójność obrazu zgodnie z sumą kontrolną MD5.

    Zarządzanie interfejsami (Interface-range Macro)

    (config)# define interface-range nazwa interfejs/y

    Przypisuje wybrane interfejsy sieciowe do grupy.

    (config-if)# interface range macro nazwa

    Przechodzi do poziomu konfiguracji określonych w komendzie [define interface-range] interfejsów sieciowych.

    Tworzenie Alias-u

    (config)# alias exec skrót komenda-CLI

    Tworzy alias „skrót” z przypisaną komendą „komenda-CLI”. Przykładowe aliasy gotowe do zastosowania:

    alias exec si show ip interface brief

    alias exec sr show ip route

    alias exec sen show ip eigrp neighbor

    alias exec sei show ip eigrp interfaces

    alias exec son show ip ospf neighbor

    alias exec soi show ip ospf interfaces

    alias exec sod show ip ospf database

    alias exec sbn show ip bgp neighbor

    alias exec sbs show ip ospf summary

    alias exec sa show access-lists

    alias exec sru show running-config

    alias exec rk copy running-config startup-config

    Pozostałe tematy związane z zarządzaniem systemem IOS

  • (TK) Stary model licencjonowania systemu IOS**

    (TK) Stary model licencjonowania systemu IOS**

    Licencjonowanie systemu IOS

    Podstawowe informacje dotyczące systemu IOS

    • System IOS jest wydawany w wersjach (Np. 12, 15), z których każda posiada wiele wydań (Np. Release 12.2(55)). Ponadto każdy wydany obraz jest osobno przygotowany pod kontem danego rutera bądź przełącznika sieciowego.
    • System IOS wspiera wiele protokołów oraz rozwiązań uporządkowanych w czterech grupach głównych. Są to funkcję podstawowe (IP Bese), funkcje związane z bezpieczeństwem (Security), funkcje zaawansowanego routingu i przepływu danych (Data) oraz funkcje wspierające technologię głosowe VoIP (Voice).
      • IP Base – Zawiera podstawową funkcjonalność systemu IOS.
      • Security – Zawiera systemową zaporę ogniową, protokołu VPN, DMVPN czy IPsec.
      • Data – Zawiera funkcje Performance routing (PfR) czy protokoły WAAS oraz NBAR2.
      • Voice – Zawiera funkcję VoIP oraz IP telephony.
    • W starszych wersjach systemu IOS (Np. 12) oraz nowszych wersjach wydanych na starsze platformy sprzętowe (Np. ISR 2800 series), proces licencjonowania obrazu, polegał na dystrybucji systemu zawierającego wymagane przez klienta funkcję. Związku z tym wzbogacenie licencji musi być poprzedzone zmianą obrazu.
    Wersję obrazów systemu Cisco IOS
    • Nowszy system licencjonowania Cisco, umożliwia pobranie uniwersalnego obrazu IOS zawierającego wszystkie dostępne funkcję systemu. Jednak po uruchomieniu dostępna jest jedynie funkcja podstawowa (IP Base). Aby aktywować resztę funkcji należy posiadać odpowiedni klucz generowany przez Cisco na podstawie numeru seryjnego urządzenia. Nowe podejście firmy ukróciło proces pobierania nielegalnego oprogramowania (niestety ☹), a nazywa się ono SMARTnet.
    • Od pewnego czasu Cisco pracuje nad wprowadzeniem nowego systemu licencjonowania, w którym system IOS nie byłby aktywowany z poziomu poszczególnego urządzenia, a globalnie poprzez aplikację CLM (Cisco License Manager).
      • Funkcja CLM poprzez Internet łączy się z Sewerami Cisco, sprawdzając jakie licencje posiada użytkownik oraz do jakich urządzeń one pasują. Następnie łączy się z poszczególnymi urządzeniami sieciowymi automatycznie rewalidując a następnie aktywując zakupione funkcję systemu IOS.

    Aktywowanie licencji

    • Każde nowsze urządzenie firmy Cisco, posiada unikalny numer identyfikacyjny zwany UDI (Unique Device Identifier). Składa się on z numeru ID produktu PID (Product ID) oraz numeru seryjnego SN (Serial Number).
    • Ponad to po zakupieniu licencji, użytkownik otrzyma dodatkowy klucz PAK (Produkt Authorization Key).
    • Proces aktywowania nowych funkcji systemu IOS rozpoczyna się na stronie Cisco, gdzie oprócz unikalnego numeru UDI urządzenia, użytkownik musi podać zakupiony klucz PAK.  świadczący o tym, że zapłacił on już za swoją licencje oraz nigdy wcześniej jej nie używał, do aktywacji innego urządzenia. Po przeprowadzeniu weryfikacji użytkownik może pobrać plik licencyjny (License Key), zawierający wygenerowany klucz względem określonego urządzenia.
    • W swojej dobroci Cisco umożliwia aktywowanie darmowej licencji testowej na okres 60 dni (proces jej aktywacji nie wymaga klucza PAK). Po upływie terminu, funkcję nadal pozostają aktywne (Jednak Cisco prosi, aby ich nie używać).

    Aktywowanie licencji

    # license install {url / usbflash1:plik}

    Instaluje klucz licencji na konfigurowanym urządzeniu (Wymaga restartu).

    (config)# license boot module c2900 technology-pckage securityk9

    Instaluje próbną wersje licencji IOS.

    Komendy SHOW

    # show license udi

    Wyświetla numer UDI konfigurowanego urządzenia.

    # show licence

    Wyświetla główne funkcję systemu IOS, wraz z ich stanem (Life Time / Not Activated).

    # show licence feature

    Wyświetla informacje dotyczące dostępnych funkcji systemu IOS.

    # show version

    Wyświetla informacje o systemie IOS oraz jego aktywnych funkcjach.

    Pozostałe tematy związane z zarządzaniem systemem IOS

  • (TK) Podstawowe zabezpieczenie dostępu**

    (TK) Podstawowe zabezpieczenie dostępu**

    Podstawowe zasady zabezpieczania systemu IOS

    Poziomy dostępu w systemie IOS

    • User Mode – Podstawowy poziom systemu IOS, zawierający ograniczony podgląd na bieżącą konfigurację.
    • Enabled Mode (Privilege Mode) – Tryb uprzywilejowany, uprawniający do podglądu całej konfiguracji systemu IOS.
    • Configuration Mode – Tryb edycji, konfiguracji systemu Cisco IOS.

    Metody przechowywania haseł w systemie IOS

    • Typ 0 – Hasło zapisane zwykłym tekstem [enable password hasło].
    • Typ 5 – Hasło zahaszowane algorytmem MD5 [enable secret hasło].
    • Typ 7 – Hasło zahaszowane funkcją [service password-encryption].
    • Typ 8 – Hasło zahaszowane algorytmem SHA-256 [enable algorithm-type sha-256 secret hasło].
    • Typ 9 – Hasło zahaszowane algorytmem SHA-256 [enable algorithm-type scrypt secret hasło].

    Konfiguracja hasła dla trybu uprzywilejowanego

    Na urządzeniach firmy Cisco może być skonfigurowane jedynie jedno hasło zabezpieczające trybu uprzywilejowany.

    Niebezpieczna metoda konfiguracji hasła

    (config)# enable password hasło

    Tworzy hasło blokujące dostęp do trybu uprzywilejowanego.

    (config)# service password-encryption

    Haszuje wszystkie hasła skonfigurowane w systemie Cisco IOS.

    Bezpieczna metoda konfiguracji hasła

    (config)# enable [algorithm-type {sha-256 / scrypt}] secret hasło

    Tworzy bezpieczne hasło blokujące dostęp do trybu uprzywilejowanego (Opcjonalnie komenda umożliwia wybranie algorytmu szyfrowania).

    Banery powitalne

    Rodzaje banerów powitalnych

    • MOTD (Message Of The Day) – Okresowa wiadomość informująca o przejściowych zdarzeniach np. o restarcie systemu.
    • LOGIN – Stała wiadomość wyświetlana przed prometem proszącym o podanie loginu i hasła użytkownika. W większości przypadków informuje osoby logujące się do systemu IOS o wymaganej autentykacji czy monitorowaniu sesji.
    • EXEC – Stała wiadomość wyświetlana po zalogowaniu do sytemu IOS. W większości przypadków informuje osoby logujące się do systemu IOS, o wersji systemu czy adresacji urządzenia.
    Rodzaje banerów powitalnych w systemie Cisco IOS

    Konfiguracja banerów powitalnych

    Konfiguracja podstawowego banneru powitalnego w systemie Cisco IOS

    (config)# banner {brak / login / exec} # treść na wiele wierzy #

    Tworzy baner, którego treść następuje pomiędzy powtarzającymi się znakami (#). Znak ten można zamienić na dowolny inny znak ASCII, mogący pojawić się jedynie początku oraz na końcu wpisywanej frazy.
    * brak – Tworzy okresowy banner informujący o przejściowych zdarzeniach.
    * login – Tworzy stały banner wyświetlany przed prometem proszącym o podanie loginu i hasła użytkownika.
    * exec – Tworzy stały banner wyświetlany po zalogowaniu do sytemu IOS.

    Zmienne wykorzystywane w banerach powitalnych

    $(hostname)

    Wyświetla nazwę urządzenia (Hostname).

    $(domain)

    Wyświetla nazwę domeny, do której należy dane urządzenie (Domain name).

    $(line)

    Wyświetla rodzaj bieżącego połączenia (Console, VTY).

    $(line-desc)

    Wyświetla opcjonalny opis połączenia (Description).

    Pozostałe tematy związane z zarządzaniem systemem IOS