CCNA Exploration - Protokoły i koncepcje routingu
1 Wstęp do routingu i przekierowywania pakietów
1.0 Wprowadzenie do rozdziału
1.0.1 Wprowadzenie do rozdziału
Strona 1:
Dzisiejsze sieci komputerowe wywierają ogromny wpływ na naszą codzienność, zmieniając to, jak żyjemy, pracujemy i spędzamy wolny czas. Współczesne sieci, a także - w szerszym kontekście - Internet, pozwalają ludziom komunikować się i współpracować w nieznany wcześniej sposób. Sieci mają wiele rozmaitych zastosowań, wśród których można wymienić aplikacje internetowe, telefonię IP, wideokonferencje, interaktywne gry, handel elektroniczny i edukację.
W centrum sieci znajduje się router. Jest to urządzenie służące do łączenia wielu sieci. Router jest odpowiedzialny za dostarczanie pakietów przez różne sieci. Celem pakietu IP może być serwer WWW w innym kraju albo serwer pocztowy w sieci lokalnej. Router jest odpowiedzialny za dostarczenie tych pakietów na czas. Efektywność komunikacji pomiędzy sieciami w dużej mierze zależy od tego, czy router potrafi w możliwie najbardziej wydajny sposób przekazywać pakiety.
Routery są umieszczane nawet w satelitach wysyłanych w przestrzeń międzyplanetarną. Dzięki temu możliwe jest przesyłanie ruchu IP pomiędzy satelitami w zasadzie tak samo, jak na Ziemi, co zmniejsza opóźnienia i zwiększa elastyczność sieci.
Usługi zapewniane przez routery to znacznie więcej niż przesyłanie pakietów. W odpowiedzi na zapotrzebowania dzisiejszych sieci routery wykonują też inne zadania:
* Zapewniają dostępność przez 24 godziny każdego dnia tygodnia (24/7). Pomagają zapewnić osiągalność sieci za pomocą tras alternatywnych, gdyby trasa podstawowa zawiodła.
* Zapewniają zintegrowane usługi przesyłania danych, wideo i głosu przez sieci kablowe i bezprzewodowe. Routery używają priorytetyzacji pakietów IP metodą QoS (quality of service), w efekcie czego ruch przesyłany w czasie rzeczywistym, na przykład głos, obraz lub krytyczne dane, nie jest gubiony ani odrzucany.
* Przekazując tylko wybrane pakiety, routery zmniejszają narażenie sieci na robaki, wirusy i inne ataki.
Wszystkie te usługi obracają się wokół routerów i ich zdolności do przekazywania pakietów z jednej sieci do kolejnej. Urządzenia w różnych sieciach mogą się komunikować tylko dzięki temu, że router potrafi przekazywać pakiety pomiędzy tymi sieciami. Rozdział ten jest wprowadzeniem do routerów, ich roli w sieciach, głównych komponentów sprzętowych i programowych oraz samego procesu routingu.
1.1 Wewnątrz routera
1.1.1 Routery są komputerami
Strona 1:
Routery są komputerami
Router to taki sam komputer jak każdy inny, na przykład komputer osobisty. Pierwszym routerem, używanym w sieci ARPANET (Advanced Research Projects Agency Network), był IMP (Interface Message Processor). IMP, czyli minikomputer Honeywell 516, zapoczątkował sieć ARPANET 30 sierpnia 1969 roku.
Uwaga: Sieć ARPANET była dziełem agencji ARPA (Advanced Research Projects Agency) z Departamentu Obrony Stanów Zjednoczonych. Była to pierwsza na świecie sieć z przełączaniem pakietów i poprzednik dzisiejszego Internetu
Routery mają wiele takich samych jak inne komputery komponentów sprzętowych, w tym:
* Procesor
* RAM
* ROM
* System operacyjny
Strona 2:
Routery znajdują się w centrum sieci
Przeciętny użytkownik nie zdaje sobie sprawy z obecności wielu routerów w swojej sieci czy też w Internecie. Użytkownik oczekuje, że będzie miał dostęp do stron internetowych oraz możliwość wysyłania wiadomości pocztowych i pobierania muzyki niezależnie od tego, czy serwer, z którym się łączy, znajduje się w jego sieci, czy też w innej sieci na drugim końcu świata. Za to osoby zawodowo zajmujące się sieciami wiedzą, że to właśnie router jest odpowiedzialny za przekazywanie pakietów z sieci do sieci, od pierwotnego źródła do ostatecznego celu.
Router łączy wiele sieci. Oznacza to, że ma interfejsy należące do różnych sieci IP. Kiedy router odbierze na jednym interfejsie pakiet IP, ustala, którym interfejsem przekazać pakiet do ostatecznego celu. Interfejsem, z którego router wysyła pakiet, może być sieć z ostatecznym celem pakietu (sieć z docelowym adresem IP tego pakietu) albo też sieć połączona z innym routerem, przez który można dotrzeć do sieci docelowej.
Każda sieć, z którą łączy się router, zazwyczaj wymaga osobnego interfejsu. Interfejsy te służą do łączenia ze sobą w różnych kombinacjach sieci lokalnych (LAN) (ang. local area network) i sieci rozległych (WAN) (ang. wide area network). Sieci lokalne to najczęściej sieci Ethernet , w których znajdują się takie urządzenia, jak komputery osobiste, drukarki i serwery. Sieci rozległe łączą sieci na przestrzeni rozległych obszarów geograficznych. Połączenie WAN jest na przykład powszechnie stosowane do łączenia sieci lokalnej z siecią dostawcy usług internetowych (ISP) (ang. Internet Service Provider).
Na rysunku widzimy, że routery R1 i R2 są odpowiedzialne za odebranie pakietu z jednej sieci i przekazanie go do innej, znajdującej się na drodze do sieci docelowej.
Strona 3:
Routery wyznaczają najlepszą trasę.
Routery są odpowiedzialne przede wszystkim za przesyłanie pakietów do sieci lokalnych i zdalnych przez:
* Wyznaczenie najlepszej trasy (ang. best path) do wysyłania pakietów,
* Przekazanie pakietów w kierunku ich celu.
Router ustala najlepszą trasę do przekazania pakietu na podstawie informacji zgromadzonych w swojej tablicy routingu (ang. routing table). Kiedy router odbierze pakiet, sprawdza docelowy adres IP i szuka w tablicy routingu adresu sieciowego najbardziej zbliżonego do tego adresu docelowego. W tablicy routingu jest również informacja o interfejsie, którym należy przekazać pakiet. Po znalezieniu pasującego wpisu router enkapsuluje pakiet IP w ramkę warstwy łącza danych odpowiednią dla interfejsu wyjściowego, a następnie pakiet jest przekazywany w kierunku celu.
Najczęściej router odbiera pakiet opakowany w ramkę warstwy łącza danych jednego typu, na przykład Ethernet, a przekazując pakiet, enkapsuluje go w ramkę innego typu, na przykład Point-to-Point Protocol (PPP). Typ enkapsulacji zależy od typu interfejsu routera i typu medium, z jakim jest on połączony. Wśród technologii warstwy łącza danych, z którymi łączy się router, można wymienić sieci lokalne, na przykład Ethernet, oraz szeregowe (ang. serial) połączenia WAN, przykładowo połączenie T1 za pomocą PPP, Frame Relay i Asynchronous Transfer Mode (ATM).
Na rysunku możemy prześledzić pakiet podążający ze źródłowego komputera PC do komputera docelowego. Proszę zauważyć, że to router jest odpowiedzialny za znalezienie sieci docelowej w swojej tablicy routingu, a następnie przekazanie pakietu w kierunku celu. W tym przykładzie router R1 odbiera pakiet enkapsulowany w ramkę ethernetową. Po dekapsulacji pakietu router na podstawie docelowego adresu IP pakietu wyszukuje w tablicy routingu pasujący adres sieciowy. Po tym jak adres docelowy zostanie znaleziony w tablicy routingu, R1 enkaspsuluje pakiet w ramkę PPP i przesyła pakiet do R2. Identyczny proces jest wykonywany przez R2.
Trasy statyczne i protokoły routingu dynamicznego (ang. dynamic routing protocols) służą routerom do poznawania zdalnych sieci i budowania tablic routingu. I właśnie na tych zagadnieniach skupimy się na tym kursie. W kolejnych rozdziałach omówiono je dokładnie, podobnie jak procesy przeszukiwania tablic routingu i przekazywania pakietów.
Strona 4:
1.1.2 Procesor i pamięć routera
Strona 1:
Mimo że istnieje kilka typów i modeli routerów, ogólnie rzecz biorąc, każdy router zawiera te same komponenty sprzętowe. Zależnie od modelu komponenty te są usytuowane w różnych miejscach urządzenia. Na rysunku widzimy wnętrze routera 1841. Aby zobaczyć wewnętrzne komponenty routera, trzeba odkręcić i zdjąć metalową obudowę. Czynność tę wykonujemy rzadko, najczęściej w celu wymiany pamięci.
Strona 2:
Router - komponenty i ich funkcje
Podobnie jak komputer osobisty, router zawiera:
* procesor (Central Processing Unit, CPU),
* pamięć RAM (Random-Access Memory, RAM),
* pamięć ROM (Read-Only Memory, ROM).
Procesor wykonuje polecenia systemu operacyjnego, na przykład inicjację systemu, funkcje routingu i przełączania.
Pamięć RAM przechowuje instrukcje i dane potrzebne podczas wykonania działań przez procesor. Pamięć RAM przechowuje:
* System operacyjny: System Cisco IOS (Internetwork Operating System) jest kopiowany do pamięci RAM podczas startu systemu.
* Plik z bieżącą konfiguracją: Plik konfiguracyjny, w którym znajdują się polecenia konfiguracyjne aktualnie wykorzystywane przez system IOS routera. Nie licząc kilku wyjątków, wszystkie skonfigurowane na routerze polecenia są zapisane w pliku z bieżącą konfiguracją, który nazywa się running-config.
* Tablica routingu IP: Plik zawierający informacje o sieciach połączonych bezpośrednio oraz zdalnych. Jest wykorzystywana do określania najlepszej trasy do przekazania pakietu.
* Bufor ARP: W tym buforze, tak jak na komputerze osobistym, składowane są pary adres IP - adres MAC. Bufor ARP jest używany na routerach wyposażonych w interfejsy ethernetowe.
* Bufor pakietów: Po odebraniu pakietów na jednym interfejsie, ale przed przekazaniem ich z innego interfejsu, są one okresowo składowane w buforze.
RAM to pamięć ulotna, która traci swoją zawartość, kiedy router zostanie wyłączony albo zrestartowany. Z tego powodu w routerze znajdują się również pamięci trwałe, czyli ROM, flash i NVRAM.
ROM to odmiana pamięci stałej. Urządzenia Cisco używają pamięci ROM do składowania:
* Instrukcji rozruchowych,
* Prostego oprogramowania diagnostycznego,
* okrojonej wersji systemu IOS.
Pamięć ROM wykorzystuje firmware, czyli oprogramowania osadzone w układzie scalonym. Firmware zawiera, na przykład, instrukcje rozruchowe, z reguły nie wymaga ani modyfikacji, ani aktualizacji. Wiele z tych funkcji, w tym oprogramowanie monitorujące ROM, omówiono w dalszej części kursu. Zawartość pamięci ROM nie ginie po odłączeniu zasilania lub zrestartowaniu routera.
Flash to nieulotna pamięć komputerowa, którą można elektrycznie wymazać i przeprogramować. Jest używana jako trwała pamięć dla systemu operacyjnego, czyli Cisco IOS. W
większości modeli routerów Cisco system IOS jest trwale składowany w pamięci flash i kopiowany do pamięci RAM w trakcie procesu rozruchowego. Niektóre, starsze modele
routerów Cisco uruchamiają IOS bezpośrednio z pamięci flash. Pamięć flash składa się z kart SIMM lub PCMCIA i można ją zwiększyć.
Pamięć flash zachowuje swoją zawartość po odłączeniu zasilania i zrestartowaniu routera.
NVRAM (Nonvolatile RAM) to nieulotna pamięć o dostępie swobodnym, która zachowuje swoją zawartość po odłączeniu zasilania. Jest to istotna różnica w porównaniu z większością popularnych pamięci RAM, na przykład DRAM, które zachowują zawartość tylko przy włączonym zasilaniu. Pamięć NVRAM jest używana przez program Cisco IOS jako trwała pamięć dla pliku z konfiguracją początkową (startup-config). Wszystkie zmiany w konfiguracji są przechowywane w znajdującym się w pamięci RAM pliku running-config i - nie licząc kilku wyjątków - natychmiastowo implementowane przez system IOS. Aby zapisać te zmiany na wypadek restartu routera albo odłączenia zasilania, plik bieżącej konfiguracji (running-config) trzeba skopiować do pamięci NVRAM, gdzie jest składowany jako plik konfiguracji startowej (startup-config). Pamięć NVRAM zachowuje swoją zawartość nawet po wyłączeniu zasilania routera.
Pamięci ROM, RAM, NVRAM i flash omówiono w kolejnych podrozdziałach w ramach wprowadzenia do systemu IOS i procesu rozruchowego (bootstrap). Bardziej szczegółowe omówienie można znaleźć w dalszej części kursu, w kontekście zarządzania systemem IOS.
Osoba zawodowo zajmująca się siecią powinna dobrze rozumieć przede wszystkim funkcjonowanie głównych wewnętrznych komponentów routera, a nie ich dokładne rozmieszczenie w danym modelu routera. Modele różnią się architekturą fizyczną.
1.1.3 Internetwork Operating System
Strona 1:
Internetwork Operating System
Systemem operacyjnym używanym w routerach Cisco jest IOS (Cisco Internetwork Operating System). Podobnie jak każdy system operacyjny na innym dowolnym komputerze, Cisco IOS jest odpowiedzialny za zarządzanie sprzętowymi i programowymi komponentami routera, w tym za alokację pamięci, zarządzanie procesami i zabezpieczeniami oraz zarządzanie systemami plików. Cisco IOS to wielozadaniowy system operacyjny zintegrowany z funkcjami routingu, przełączania, łączenia sieci i telekomunikacji.
Mimo że pozornie na wszystkich routerach działa ten sam system Cisco IOS, istnieje wiele różnych obrazów IOS. Obraz IOS to plik, który zawiera cały system IOS dla danego routera. Cisco tworzy wiele różnych obrazów IOS, zależnie od modelu i funkcji w systemie IOS. Z reguły dodatkowe możliwości wymagają zwiększenia pamięci flash i RAM, które są wymagane do przechowywania i załadowania systemu IOS. Przykładowe dodatkowe funkcje to możliwość uruchamiania protokołu IP w wersji 6 (IPv6) albo uruchomienia funkcji NAT (Network Address Translation).
Podobnie jak inne systemy operacyjne, Cisco IOS ma własny interfejs użytkownika. Mimo że na niektórych routerach można znaleźć interfejs graficzny (ang. graphical user interface, GUI), o wiele częściej spotykaną metodą konfigurowania routerów Cisco jest wiersz poleceń (ang. command-line interface, CLI). CLI jest wykorzystywany w tym kursie.
W czasie startu plik startup-config jest kopiowany z pamięci NVRAM do pamięci RAM, a następnie przechowywany w niej jako plik running-config. System IOS wykonuje polecenia znajdujące się w pliku running-config. Wszystkie zmiany wprowadzone przez administratora są składowane w pliku running-config i natychmiast implementowane przez system IOS. W tym rozdziale przypomnimy sobie kilka podstawowych poleceń systemu IOS służących do konfiguracji routera Cisco. W kolejnych rozdziałach omawiamy polecenia służące do konfiguracji, weryfikacji i rozwiązywania problemów z routingiem statycznym (ang. static routing) oraz różnymi protokołami routingu, na przykład RIP, EIGRP i OSPF.
Uwaga: System Cisco IOS jest dokładniej omówiony na następnym kursie.
1.1.4 Proces startu routera
Strona 1:
Proces startu
Jest cztery podstawowe fazy procesu startu routera:
1. POST: Test sprzętu routera
2. Ładowanie programu rozruchowego
3. Wyszukiwanie systemu Cisco IOS
4. Ładowanie systemu Cisco IOS
1. POST: Test sprzętu routera
POST (power-on self test) to program diagnostyczny wykonywany w czasie uruchamiania prawie każdego komputera. Proces POST pozwala przetestować sprzętowe komponenty routera. Po włączeniu zasilania routera procedura POST jest przeprowadzana przez oprogramowanie rezydujące w pamięci ROM. W tym autoteście router przeprowadza z poziomu pamięci ROM diagnozę kilku komponentów sprzętowych, w tym procesora, pamięci RAM i pamięci NVRAM. Po ukończeniu procedury POST router wykonuje program rozruchowy.
2. Załadowanie programu rozruchowego (bootstrap)
Po procedurze POST z pamięci ROM do pamięci RAM kopiowany jest program rozruchowy. Kiedy znajdzie się w pamięci RAM, procesor wykonuje zawarte w nim instrukcje. Głównym zadaniem programu rozruchowego jest znalezienie systemu Cisco IOS i załadowanie go do pamięci RAM.
Uwaga: W tym momencie, jeśli jesteśmy połączeni z routerem przez konsolę, na ekranie zobaczymy informacje wynikowe.
3. Znajdowanie systemu Cisco IOS
Znajdowanie systemu Cisco IOS. System IOS jest z reguły składowany w pamięci flash, ale może się znajdować również w innych miejscach, na przykład na serwerze TFTP.
Jeśli nie uda się znaleźć pełnego obrazu IOS, z pamięci ROM do pamięci RAM kopiowana jest okrojona wersja IOS. Wersja ta ułatwia diagnozę ewentualnych problemów i można za jej pomocą załadować do pamięci RAM pełną wersję systemu IOS.
Uwaga: Serwer TFTP jest zazwyczaj wykorzystywany jako zapasowy serwer dla systemu IOS, ale może być również centralnym miejscem składowania i ładowania systemu IOS.
Zarządzanie systemem IOS i używanie serwera TFTP omówiono w dalszej części kursu.
Ładowanie systemu Cisco IOS. Niektóre starsze routery Cisco potrafią uruchamiać system IOS bezpośrednio z pamięci flash, ale współczesne modele kopiują system do pamięci RAM i dopiero wówczas jest on wykonywany przez procesor.
Uwaga: Kiedy zaczyna się wczytywanie systemu IOS, w trakcie dekompresji obrazu możemy zobaczyć łańcuch znaków #.
4. Wyszukiwanie pliku konfiguracyjnego
Wyszukiwanie pliku konfiguracyjnego. Po załadowaniu systemu IOS program rozruchowy szuka pliku z konfiguracją początkową zapisanego pod nazwą startup-config w pamięci NVRAM. W pliku tym znajdują się uprzednio zapisane polecenia i parametry konfiguracyjne, w tym:
* adresy interfejsów,
* informacje o trasach,
* hasła,
* inne informacje konfiguracyjne zapisane przez administratora sieci.
Jeśli plik z konfiguracją początkową, startup-config, znajduje się w pamięci NVRAM, zostaje w tym momencie skopiowany do pamięci RAM jako plik z konfiguracją początkową running-config.
Uwaga: Jeśli w pamięci NVRAM nie ma pliku z konfiguracją początkową, router może rozpocząć wyszukiwanie serwera TFTP. Jeśli router wykryje aktywne łącze do innego skonfigurowanego routera, wyśle tym aktywnym łączem komunikat rozgłoszeniowy wyszukujący plik konfiguracyjny. W takiej sytuacji router przerywa pracę, a na konsoli pojawia się poniższy komunikat:
<router czeka i przesyła rozgłoszeniowe zapytania o plik konfiguracyjny poprzez aktywne łącze>
%Error opening tftp://255.255.255.255/network-confg (Timed out)
%Error opening tftp://255.255.255.255/cisconet.cfg (Timed out)
Wykonanie pliku konfiguracyjnego Jeśli w pamięci NVRAM został znaleziony plik z konfiguracją początkową, system IOS ładuje go do pamięci RAM jako plik running-config i wykonuje, wiersz po wierszu, znajdujące się w tym pliku polecenia. Polecenia running-config zawierają adresy interfejsów, uruchamiają procesy routingu, konfigurują hasła routera i definiują inne parametry routera.
Wejście w tryb setup (Opcjonalnie) Jeśli pliku z konfiguracją początkową nie można znaleźć, router nakazuje użytkownikowi wejść w tryb setup. Tryb setup polega na zadaniu serii pytań - użytkownik, udzielając odpowiedzi, musi podać podstawowe informacje o konfiguracji. Tryb jest rzadko używany przez administratorów i nie można w nim wykonać zaawansowanej konfiguracji routera.
Uruchamiając router, który nie ma pliku z konfiguracją początkową, po załadowaniu systemu IOS zobaczymy poniższe pytanie:
Would you like to enter the initial configuration dialog? [yes/no]: no
Na tym kursie trybem setup nie będziemy się zajmowali. Zapytani o wejście w ten tryb zawsze odpowiadamy no. Jeśli przypadkowo została udzielona odpowiedź yes, w każdej chwili można nacisnąć Ctrl-C i zakończyć proces inicjowania.
Jeśli nie wejdziemy w tryb setup, system IOS utworzy domyślny plik running-config. Jest to prosty plik konfiguracyjny zawierający informacje o interfejsach routera, interfejsach zarządzania i kilka ustawień domyślnych. Domyślny plik running-config nie zawiera adresów interfejsów, informacji o trasach, haseł ani żadnych innych konkretnych informacji konfiguracyjnych.
Interfejs wiersza poleceń
Zależnie od platformy i systemu IOS przed wyświetleniem znaku gotowości router może zadać poniższe pytanie:
Would you like to terminate autoinstall? [yes]: <Enter>
Press the Enter key to accept the default answer.
Router>
Uwaga: Jeśli plik z konfiguracją początkową został znaleziony, bieżąca konfiguracja może zawierać nazwę hosta, w efekcie czego w zgłoszeniu wiersza poleceń zobaczymy nazwę danego routera.
Po wyświetleniu znaku gotowości system IOS wykorzystuje aktualny plik z konfiguracją bieżącą. Administrator sieci może od tego momentu zacząć wydawać na tym routerze polecenia systemu IOS.
Uwaga: Proces startu routera jest omówiony bardziej szczegółowo w dalszej części kursu.
Strona 2:
Sprawdzanie procesu uruchamiania routera
Aby sprawdzić i zdiagnozować kilka podstawowych komponentów sprzętowych i programowych routera, można użyć polecenia show version. Polecenie show version wyświetla informację na temat wersji systemu Cisco IOS, który aktualnie jest uruchomiony na routerze, wersji programu rozruchowego oraz informacje na temat konfiguracji sprzętowej, wliczając w to ilość pamięci systemowej.
W wynikach polecenia show version znajdują się następujące informacje:
Wersja systemu IOS
Cisco Internetwork Operating System Software
IOS (tm) C2600 Software (C2600-I-M), Version 12.2(28), RELEASE SOFTWARE (fc5)
Jest to informacja o wersji znajdującego się w pamięci RAM i używanego przez router systemu Cisco IOS.
Program rozruchowy w pamięci ROM
ROM: System Bootstrap, Version 12.1(3r)T2, RELEASE SOFTWARE (fc1)
Jest to informacja o wersji systemowego programu rozruchowego, składowanego w pamięci ROM, który na początku został użyty do uruchomienia routera.
Położenie systemu IOS
System image file is "flash:c2600-i-mz.122-28.bin"
Jest to adres, pod którym program rozruchowy znalazł i z którego załadował system Cisco IOS, jak również pełna nazwa pliku z obrazem systemu IOS.
Procesor i ilość pamięci RAM
cisco 2621 (MPC860) processor (revision 0x200) with 60416K/5120K bytes of memory
W pierwszej części wiersza wyświetlana jest informacja o typie procesora zainstalowanego w routerze. W ostatniej części wiersza widzimy informację o ilości pamięci DRAM. Niektóre serie routerów, na przykład 2600, używają niewielkiej części pamięci DRAM jako pamięć pakietów (ang. packet memory). Pamięć pakietów służy do buforowania pakietów.
Aby ustalić całkowitą ilość zainstalowanej na routerze pamięci DRAM, trzeba zsumować te liczby. W tym przykładzie router Cisco 2621 ma 60 416 kB (kilobajtów) wolnej pamięci DRAM, służącej do okresowego składowania systemu Cisco IOS i innych procesów systemowych. Pozostałe 5120 kB zostało przeznaczonych na bufor pakietów. Po dodaniu tych dwóch liczb otrzymujemy 60 416 kB + 5 120 kB = 65 536 kB, czyli w sumie 64 MB (megabajty) pamięci DRAM.
Uwaga: Aktualizacja systemu IOS może wymagać zwiększenia ilości pamięci RAM.
Interfejsy
2 FastEthernet/IEEE 802.3 interface(s)
2 Low-speed serial(sync/async) network interface(s)
W tej części wyników widzimy informacje o fizycznych interfejsach routera. Router Cisco 2621 ma w tym przykładzie dwa interfejsy Fast Ethernet i dwa wolniejsze interfejsy szeregowe.
Ilość pamięci NVRAM
32K bytes of non-volatile configuration memory.
Jest to ilość zainstalowanej w routerze pamięci NVRAM. W pamięci NVRAM przechowywany jest plik z konfiguracją początkową.
Ilość pamięci flash
16384K bytes of processor board System flash (Read/Write)
Jest to ilość pamięci flash w routerze. Pamięć flash służy do trwałego przechowywania systemu Cisco IOS.
Uwaga: Aktualizacja systemu IOS może wymagać do zwiększenia ilości pamięci flash.
Rejestr konfiguracji
Configuration register is 0x2102
W ostatnim wierszu wyników polecenia show version widzimy wyrażoną szesnastkowo aktualnie skonfigurowaną wartość rejestru konfiguracji oprogramowania. Czasami wyświetlana jest również druga wartość w nawiasie - jest to wartość rejestru konfiguracji, która zostanie użyta podczas następnego restartu.
Rejestr konfiguracji ma kilka zastosowań, w tym odzyskiwanie haseł. Domyślne ustawienie fabryczne rejestru konfiguracji to 0x2102. W wyniku takiego ustawienia router podejmie próbę załadowania obrazu Cisco IOS z pamięci flash, a pliku z konfiguracją początkową z pamięci NVRAM.
Uwaga: Rejestr konfiguracji jest omówiony bardziej szczegółowo w dalszej części kursu.
1.1.5 Interfejsy routera
Strona 1:
Porty zarządzania
Routery posiadaja fizyczne złącza, używane do zarządzania routerem. Złącza te nazywane są portami zarządzania. Porty zarządzania, w przeciwieństwie do interfejsów ethernetowych i szeregowych, nie służą do przesyłania pakietów. Najczęściej używanym portem zarządzania jest port konsoli (ang. console port). Port ten służy do połączenia z terminalem lub najczęściej z komputerem osobistym, na którym uruchomiony jest emulator terminalu. Pozwala skonfigurować router bez konieczności uzyskiwania dostępu przez sieć. Port konsoli musi być używany podczas początkowej konfiguracji routera.
Kolejnym portem zarządzania jest port AUX (auxilliary). Nie wszystkie routery mają porty AUX. Czasami portu AUX można używać podobnie jak portu konsoli. Może też służyć do podłączenia modemu. Na tym kursie nie będziemy używać portów AUX.
Rysunek przedstawia porty konsoli i AUX na routerze.
Interfejsy routera
Termin interfejs w kontekście routerów Cisco odnosi się do fizycznego złącza na routerze, którego głównymi zadaniami są odbiór i przekazywanie pakietów. Routery mają wiele interfejsów używanych do łączenia z wieloma sieciami. Często zdarza się, że interfejsy są połączone z sieciami różnego typu, co oznacza różnego typu nośniki i złącza. Często
router musi być wyposażony w interfejsy różnego typu. Typowy router ma interfejsy Fast Ethernet przeznaczone do połączeń z różnymi sieciami LAN, a także różne typy
interfejsów WAN służących do połączeń z rozmaitymi łączami szeregowymi, w tym T1, DSL i ISDN. Na rysunku widzimy interfejsy Fast Ethernet i szeregowe.
Podobnie jak interfejsy komputera osobistego, porty i interfejsy routera znajdują się na zewnątrz urządzenia. Ich zewnętrzna lokalizacja pozwala na wygodne podłączanie odpowiednich kabli sieciowych i złączy.
Uwaga: Pojedynczy interfejs routera może służyć do połączeń z wieloma sieciami. Zagadnienie to jest jednak omawiane w ramach innego kursu.
Podobnie jak większość urządzeń sieciowych, routery Cisco mają wskaźniki LED informujące o stanie. Wskaźnik LED routera określa stan odpowiadającego mu interfejsu. Jeśli dioda aktywnego, prawidłowo połączonego interfejsu jest wyłączona, może to oznaczać problem z interfejsem. Jeśli interfejs jest bardzo obciążony, jego wskaźnik LED świeci cały czas. Zależnie od modelu router może być wyposażony również w inne diody. Więcej informacji na temat znaczenia diod LED w routerach z serii 1841 można znaleźć w artykule.
Strona 2:
Interfejsy należą do różnych sieci
Jak pokazano na rysunku, każdy interfejs routera należy do innej sieci. Innymi słowy, każdy interfejs jest hostem innej sieci IP. Na każdym interfejsie należy skonfigurować adres
IP i maskę podsieci innej sieci. W systemie Cisco IOS nie ma możliwości, aby dwa aktywne interfejsy tego samego routera należały do tej samej sieci.
Interfejsy routera można podzielić na dwie podstawowe grupy:
* Interfejsy LAN - na przykład Ethernet i Fast Ethernet.
* Interfejsy WAN - na przykład interfejsy szeregowe, ISDN i Frame Relay.
Interfejsy LAN
Jak wskazuje nazwa, interfejsy LAN służą do łączenia routera z siecią lokalną, tak jak ethernetowa karta sieciowa (ang. network interface card, NIC) łączy komputer osobisty z ethernetową siecią lokalną. Podobnie jak ethernetowa karta sieciowa w komputerze osobistym, ethernetowy interfejs routera również ma adres MAC warstwy 2 i przynależy do ethernetowej sieci lokalnej tak jak wszystkie pozostałe hosty. Na przykład ethernetowy interfejs routera uczestniczy w procesie ARP (Address Resolution Protocol) dla tej sieci lokalnej. Router przechowuje bufor ARP dla takiego interfejsu i kiedy trzeba, wysyła żądania albo odpowiedzi ARP.
Do ethernetowego interfejsu routera z reguły stosuje się wtyczki RJ-45 dla okablowania UTP (ang. unshielded twisted-pair, skrętka nieekranowana). Kiedy router jest podłączony do przełącznika, używany jest kabel bez przeplotu (ang. straight-through). Kiedy dwa routery są połączone bezpośrednio przez interfejsy ethernetowe, albo gdy z ethernetowym interfejsem routera połączona jest bezpośrednio karta sieciowa komputera osobistego, używany jest kabel z przeplotem (ang. crossover).
Wykorzystaj późniejsze ćwiczenie Packet Tracer do rozwinięcia umiejętności okablowywania urządzeń.
Interfejsy WAN
Interfejsy WAN służą do łączenia routerów z sieciami zewnętrznymi, z reguły na duże odległości geograficzne. Enkapsulacja w warstwie 2 może być różnego typu, w tym PPP, Frame Relay i HDLC (High-Level Data Link Control). Podobnie jak interfejsy LAN, każdy interfejs WAN ma własny adres IP i maskę podsieci, dzięki czemu jest członkiem określonej sieci.
Uwaga: Adresy MAC są używane tylko na interfejsach ethernetowych, a nie na interfejsach WAN. Niemniej zależnie od technologii interfejsy WAN używają własnych adresów warstwy 2. Adresy i typy enkapsulacji WAN w warstwie 2 są omówione na kolejnym kursie.
Interfejsy routera
Router na rysunku ma cztery interfejsy. Każdy interfejs ma inny adres IP oraz maskę podsieci wykorzystywane w warstwie 3. Interfejsy ethernetowe mają również ethernetowe adresy MAC wykorzystywane w procesach warstwy 2.
Interfejsy WAN używają różnych enkapsulacji w warstwie 2. Interfejs S0/0/0 używa HDLC, a S0/0/1 PPP. W obu przypadkach tych protokołów szeregowych przy enkapsulacji pakietu IP w ramkę warstwy łącza danych adresem docelowym warstwy 2 jest adres rozgłoszeniowy.
W środowisku laboratoryjnym liczba interfejsów LAN i WAN, których można używać w ćwiczeniach, jest ograniczona. Jednak program Packet Tracer daje możliwość tworzenia bardziej rozbudowanych projektów sieci.
1.1.6 Routery a warstwa sieci
Strona 1:
Routery a warstwa sieci
Głównym celem routera jest łączenie ze sobą wielu sieci i przekazywanie pakietów zmierzających do jego własnych i do innych sieci. Router jest uznawany za urządzenie warstwy 3, ponieważ najważniejsze decyzje o przekazywaniu podejmuje na podstawie zawartych w pakiecie IP warstwy 3 informacji, z których najważniejszą jest adres IP. Proces ten nazywany jest routingiem.
Po odebraniu pakietu router sprawdza jego docelowy adres IP. Jeżeli adres ten nie należy do żadnej połączonej bezpośrednio sieci routera, wówczas router musi przekazać ten pakiet innemu routerowi. Na rysunku router R1 bada docelowy adres IP pakietu. Następnie, po przeszukaniu tablicy routingu, przekazuje pakiet do routera R2. Ten ostatni, po odebraniu pakietu również sprawdza jego docelowy adres IP. Po przeszukaniu własnej tablicy routingu przekazuje pakiet przez bezpośrednio połączoną sieć ethernetową do komputera PC2.
Każdy router po odebraniu pakietu szuka w tablicy routingu adresu sieciowego najbliższego docelowemu adresowi IP tego pakietu. Kiedy znajdzie pasujący adres, pakiet zostaje enkapsulowany w ramkę warstwy 2 (łącza danych), odpowiednią dla znalezionego interfejsu wyjściowego. Typ enkapsulacji w warstwie łącza danych zależy od typu interfejsu - może to być na przykład Ethernet albo HDLC.
W pewnym momencie pakiet dociera do routera, w którym adres docelowy IP pakietu należy do tej samej sieci co jeden z bezpośrednio połączonych interfejsów tego routera. W tym przykładzie router R2 odbiera pakiet od routera R1. Router R2 przekazuje pakiet ze swojego interfejsu ethernetowego, który należy do tej samej sieci co urządzenie docelowe PC2.
Ta sekwencja zdarzeń jest szczegółowo omówiona w dalszej części rozdziału.
Strona 2:
Routery działają w warstwach 1, 2 i 3
Router podejmuje najważniejsze decyzje o przekazywaniu w warstwie 3, ale jak widzieliśmy, uczestniczy również w procesach warstwy 1 i 2. Po zbadaniu docelowego adresu IP pakietu i przeszukaniu tablicy routingu, podejmuje decyzję o przekazaniu tego pakietu przez odpowiedni interfejs w kierunku celu. Router umieszcza pakiet IP warstwy 3 enkapsulowany w części danych ramki warstwy 2 odpowiedniej dla danego interfejsu wyjściowego. Może to być ramka ethernetowa, HDLC albo jakaś inna, zależnie od enkapsulacji używanej na tym konkretnym interfejsie. Ramka warstwy 2 zostaje następnie zakodowana w postaci fizycznych sygnałów warstwy 1, co umożliwia przesłanie bitów przez fizyczne łącze.
Aby to dobrze zrozumieć, spójrzmy na rysunek. Jak widać, komputer PC1 działa we wszystkich siedmiu warstwach, enkapsulując dane i wysyłając ramkę jako strumień zakodowanych bitów do routera R1, który jest jego domyślną bramą (ang. gateway).
Router R1 odbiera na swoim interfejsie strumień zakodowanych bitów. Bity te są dekodowane i przesyłane do warstwy 2, gdzie router R1 dekapsuluje ramkę Router bada adres docelowy ramki warstwy łącza danych, aby ustalić, czy zgadza się on z adresami (także rozgłoszeniowym lub grupowym) interfejsu odbierającego. Jeśli tak jest, część ramki zawierająca dane, czyli pakiet IP, jest przesyłana do warstwy 3, w której router R1 podejmuje decyzje o routingu. Następnie R1 ponownie enkapsuluje pakiet w nową ramkę warstwy łącza danych i wysyła ją z interfejsu wyjściowego jako strumień zakodowanych bitów.
Nowy adres warstwy 2 jest kojarzony z adresem interfejsu routera następnego skoku. Potem router R2 odbiera strumień bitów i proces się powtarza. R2 dekapsuluje ramkę i przesyła część z danymi, czyli pakiet IP, do warstwy 3, w której podejmuje decyzje związane z routingiem. Następnie ponownie enkapsuluje pakiet w nową ramkę warstwy łącza danych i wysyła ją interfejsem wyjściowym jako strumień zakodowanych bitów.
Proces ten jest powtarzany raz jeszcze przez router R3, który przekazuje do komputera PC2 pakiet IP enkapsulowany w ramkę warstwy łącza danych i zakodowany jako bity.
Każdy router na drodze od źródła do celu wykonuje ten sam proces dekapsulacji, przeszukiwania tablicy routingu, a następnie ponownej enkapsulacji. Poznanie tego procesu jest konieczna, aby zrozumieć, w jaki sposób routery uczestniczą w procesach sieciowych. Dlatego też w kolejnych podrozdziałach będziemy wracać do tego tematu.
1.2 Konfiguracja i adresowanie z wiersza poleceń (CLI)
1.2.1 Implementowanie podstawowych schematów adresowania
Strona 1:
Podczas projektowania nowej albo tworzenia mapy istniejącej sieci ważne jest sporządzenie dokumentacji. Na początku dokumentacja powinna zawierać mapę topologii sieci oraz tablicę adresów z uwzględnieniem następujących informacji:
* nazw urządzeń,
* interfejsu,
* adresu IP i maski podsieci,
* adresu domyślnej bramy dla urządzeń końcowych takich jak komputery osobiste.
Wypełnianie tablicy adresów
Na rysunku przedstawiono topologię, którą będziemy wykorzystywać w dalszej części tego rozdziału, z połączonymi z sobą urządzeniami i skonfigurowanymi adresami. Pod ilustracją znajduje się dokumentacja pod postacią tabeli. W tabeli znajdują się niezbędne informacje o sieci (urządzenia, adresy IP, maski podsieci i interfejsy).
Router R1 oraz host PC1 są już udokumentowane. Dokończ wypełnianie tabeli oraz pustych miejsc na diagramie poprzez przeciąganie puli adresów IP pokazanych obok do odpowiednich lokalizacji.
1.2.2 Podstawowa konfiguracja routera
Strona 1:
Podstawowa konfiguracja routera
Konfigurując router, wykonujemy pewne proste zadania, w tym:
* nazwanie routera,
* ustawienie haseł,
* skonfigurowanie interfejsów,
* skonfigurowanie banera,
* zapisanie zmian na routerze,
* sprawdzenie podstawowej konfiguracji i działania routera.
Polecenia te powinny być nam już znane, jednak w tym podrozdziale powtórzymy te zagadnienia. Przyjmiemy założenie, że router nie ma bieżącego pliku startup-config.
Pierwsze zgłoszenie routera odbywa się w trybie użytkownika. W trybie użytkownika możemy zapoznać się ze stanem routera, ale nie możemy zmodyfikować jego konfiguracji.
Trybu użytkownika nie należy mylić z użytkownikami sieci. Tryb użytkownika jest przeznaczony dla techników sieciowych, operatorów oraz inżynierów, którzy są odpowiedzialni za skonfigurowanie urządzeń sieciowych.
Router>
Polecenie enable służy do przechodzenia w tryb uprzywilejowany (ang. privileged EXEC mode). W tym trybie użytkownikowi wolno wykonywać zmiany konfiguracyjne routera. Znak gotowości routera zmienia się z ">" na "#"
Router>enable
Router#
Nazwa hosta i hasła
W tabeli zebrano składnie podstawowych poleceń konfiguracyjnych, które wykorzystamy do konfiguracji routera R1 w kolejnym przykładzie. W tym momencie można otworzyć ćwiczenie Packet Tracer i wykonywać wszystkie kroki po kolei albo zaczekać z tym na zakończenie podrozdziału.
Na początku wchodzimy w tryb konfiguracji globalnej.
Router# config t
Następnie nadajemy routerowi unikatową nazwę.
Router(config)#hostname R1
R1(config)#
Teraz konfigurujemy hasło służące do wchodzenia w tryb uprzywilejowany. W naszej pracowni użyjemy hasła class. Należy jednak pamiętać, że w środowiskach przemysłowych routery powinny mieć silniejsze hasła. Więcej informacji na temat tworzenia i używania silnych haseł znajdziemy pod adresami zebranymi na końcu tego podrozdziału.
Router(config)#enable secret class
Następnie konfigurujemy hasło cisco dla linii konsoli i Telnetu W naszej pracowni po raz wtóry użyjemy hasła cisco. Polecenie login włącza sprawdzanie haseł na linii. Jeśli nie
wydamy polecenia login w wierszu konsoli, użytkownik będzie mógł uzyskać dostęp bez podawania hasła.
R1(config)#line console 0
R1(config-line)#password cisco
R1(config-line)#login
R1(config-line)#exit
R1(config)#line vty 0 4
R1(config-line)#password cisco
R1(config-line)#login
R1(config-line)#exit
Konfiguracja banera
W trybie konfiguracji globalnej konfigurujemy baner z komunikatem dnia (ang. message-of-the-day, MOTD). Na początku i na końcu komunikatu używamy znaku ogranicznika - #. Ogranicznik ten umożliwia konfigurację wielowierszowego banera:
R1(config)#banner motd #
Enter TEXT message. End with the character "#".
******************************************
WARNING!! Unauthorized Access Prohibited!!
******************************************
#
Konfiguracja odpowiedniego banera to część dobrego planu bezpieczeństwa. Baner powinien przynajmniej przestrzegać przed nieupoważnionym dostępem. Trzymając się sprawdzonych zasad bezpieczeństwa, nie należy konfigurować banera, który wita nieautoryzowanego użytkownika.
Strona 2:
Konfiguracja interfejsu routera
Teraz skonfigurujemy adresy IP i inne informacje dla poszczególnych interfejsów routera. Najpierw przechodzimy w tryb konfiguracji interfejsu, podając typ i numer interfejsu. Następnie konfigurujemy adres IP i maskę podsieci:
R1(config)#interface Serial0/0/0
R1(config-if)#ip address 192.168.2.1 255.255.255.0
Warto wyrobić sobie nawyk konfigurowania opisu każdego interfejsu, co ułatwi nam sporządzenie dokumentacji. Tekst opisu może mieć do 240 znaków. W sieciach produkcyjnych opis może być przydatny przy rozwiązywaniu problemów, ponieważ zawiera informacje o typie sieci, do której podłączony jest ten interfejs i informuje, czy znajdują się w niej inne routery. Jeśli interfejs łączy się z siecią ISP lub operatora telekomunikacyjnego, warto wpisać informacje kontaktowe drugiej strony:
Router(config-if)#description Ciruit#VBN32696-123 (help desk:1-800-555-1234)
W środowisku laboratoryjnym j wystarczy prosty opis, który będzie przydatny przy rozwiązywaniu problemów. Oto przykład:
R1(config-if)#description Link to R2
Po skofigurowaniu adresu IP i opisu, interfejs należy aktywować wydając polecenie no shutdown. Efekt jest podobny do włączenia zasilania interfejsu. Aby warstwa fizyczna była aktywna, interfejs musi być również połączony z innym urządzeniem (koncentratorem, przełącznikiem, innym routerem, itd.).
Router(config-if)#no shutdown
Uwaga: Kiedy w pracowni konfigurujemy fizycznie szeregowe łącze punkt-punkt, jedna końcówka kabla ma oznaczenie DTE, a druga DCE. Na szeregowym interfejsie routera, do którego podłączona jest końcówka DCE, należy skonfigurować dodatkowe polecenie clock rate. Krok ten jest wymagany tylko w pracowni komputerowej i jest omówiony dokładniej w rozdziale 2., „Routing statyczny”.
R1(config-if)#clock rate 64000
Polecenia konfiguracyjne należy powtórzyć dla wszystkich pozostałych interfejsów, które chcemy włączyć. W naszej przykładowej topologii trzeba skonfigurować interfejs Fast Ethernet.
R1(config)#interface FastEthernet0/0
R1(config-if)#ip address 192.168.1.1 255.255.255.0
R1(config-if)#description R1 LAN
R1(config-if)#no shutdown
Każdy interfejs należy do innej sieci
W tym momencie należy podkreślić, że każdy interfejs musi należeć do innej sieci. Mimo że system IOS pozwala skonfigurować adres IP z tej samej sieci na dwóch różnych interfejsach, router nie aktywuje drugiego interfejsu.
Co się na przykład stanie, gdy spróbujemy skonfigurować na interfejsie FastEthernet 0/1 routera R1 adres IP sieci 192.168.1.0/24? Interfejs FastEthernet0/0 ma już przypisany adres w tej samej sieci. Jeśli spróbujemy skonfigurować na interfejsie FastEthernet0/1 adres IP należący do tej samej sieci, zobaczymy poniższy komunikat:
R1(config)#interface FastEthernet0/1
R1(config-if)#ip address 192.168.1.2 255.255.255.0
192.168.1.0 overlaps with FastEthernet0/0
Kiedy spróbujemy aktywować ten interfejs poleceniem no shutdown, pojawi się poniższy komunikat:
R1(config-if)#no shutdown
192.168.1.0 overlaps with FastEthernet0/0
FastEthernet0/1: incorrect IP address assignment
Zwróćmy uwagę na to, że w wynikach polecenia show ip interface brief interfejs FastEthernet 0/1, skonfigurowany dla sieci 192.168.1.0/24, nadal jest nieczynny.
R1#show ip interface brief
<wyniki pomięto>
FastEthernet0/1 192.168.1.2 YES manual administratively down down
Strona 3:
Sprawdzanie podstawowej konfiguracji routera
Wszystkie wprowadzone powyżej podstawowe polecenia konfiguracyjne routera były natychmiastowo zapisywane w pliku z bieżącą konfiguracją routera R1. Plik running-config, składowany w pamięci RAM, jest plikiem konfiguracyjnym używanym przez system IOS. Aby sprawdzić wprowadzone polecenia, należy wyświetlić bieżącą konfigurację za pomocą polecenia show running-config:
R1#show running-config
W tym momencie po wprowadzeniu podstawowych poleceń konfiguracyjnych ważne jest zapisanie pliku running-config w nieulotnej pamięci NVRAM routera. W przypadku przerwy w zasilaniu albo przypadkowego restartu router będzie można uruchomić z bieżącą konfiguracją. Po zakończeniu i przetestowaniu konfiguracji routera należy pamiętać o zapisaniu na stałe konfiguracji z pliku running-config do pliku startup-config.
R1#copy running-config startup-config
Istnieje kilka poleceń pomagających sprawdzić, czy po zastosowaniu i zapisaniu konfiguracji podstawowej router jest skonfigurowany prawidłowo. Kliknij odpowiedni przycisk na ilustracji, aby zobaczyć wynik każdej komendy. Wszystkie te polecenia są omówione dokładniej w kolejnych rozdziałach. W tej chwili oswoimy się z wynikami polecenia.
R1# show running-config
Polecenie wyświetla bieżącą konfigurację bieżącą składowaną w pamięci RAM. Pomijając kilka wyjątków, wszystkie wydawane polecenia konfiguracyjne są wprowadzane do pliku running-config i natychmiast implementowane przez system IOS.
R1#show startup-config
Polecenie wyświetla plik z konfiguracją początkową przechowywany w pamięci NVRAM. Jest to konfiguracja, którą router zastosuje po następnym restarcie. Ta konfiguracja nie zmienia się aż do momentu zapisania w pamięci NVRAM aktualnej konfiguracji bieżącej za pomocą polecenia copy running-config startup-config. Porównując wynik polecenia show running-config z wynikiem polecenia show startup-config, można zauważyć, że konfiguracje początkowa i bieżąca są identyczne. Wynika to stąd, że bieżąca konfiguracja nie zmieniła się od czasu ostatniego zapisania. Należy też zwrócić uwagę, że polecenie show startup-config wyświetla informację o tym, ile bajtów pamięci NVRAM zajmuje zapisana konfiguracja.
R1#show ip route
Polecenie wyświetla tablicę routingu używaną aktualnie przez system IOS przy wyznaczaniu najlepszej trasy do sieci docelowych. W tej chwili router R1 zna jedynie trasy do sieci połączonych bezpośrednio ze swoimi interfejsami.
R1#show interfaces
Polecenie wyświetla wszystkie parametry i statystyki konfiguracji interfejsów. Część tych informacji omówiono w kolejnych rozdziałach, a część dopiero na następnych kursach.
R1#show ip interface brief
Polecenie wyświetla skróconą informację o konfiguracji interfejsu, w tym adres IP i stan interfejsu. Polecenie to jest przydatnym narzędziem podczas rozwiązywania problemów i pozwala szybko ustalić stan wszystkich interfejsów routera.
1.3 Tworzenie tablicy routingu
1.3.1 Podstawy tablicy routingu
Strona 1:
Podstawy tablicy routingu
Podstawową funkcją routera jest przekazywanie pakietów w kierunku ich sieci docelowej, na docelowy adres IP pakietu. Aby to umożliwić, router musi wyszukać informację o trasie, zapisaną w swojej tablicy routingu
Tablica routingu (ang. routing table) to znajdujący się w pamięci RAM plik z danymi, używany do przechowywania informacji o trasach do sieci zdalnych i połączonych bezpośrednio. W tablicy routingu znajdują się pary sieć/następny skok. Powiązania te mówią routerowi, że do określonego celu można dostarczyć pakiet w sposób optymalny, wysyłając go do konkretnego routera będącego „następnym skokiem” na drodze do celu. Następnym skokiem (ang. next hop) może być również interfejs wyjściowy prowadzący do ostatecznego celu.
Para sieć/interfejs wyjściowy może zawierać docelowy adres sieciowy pakietu IP. Powiązanie takie zachodzi dla sieci bezpośrednio podłączonych do routera.
Sieć połączona bezpośrednio (ang. directly connected network) to sieć bezpośrednio podpięta do jednego z interfejsów routera. Kiedy interfejs routera ma skonfigurowany adres IP i maskę podsieci, interfejs staje się hostem w tej sieci. Adres sieciowy i maska podsieci interfejsu, wraz z typem i numerem interfejsu, są wprowadzane do tablicy routingu jako sieć połączona bezpośrednio. Kiedy router przekazuje pakiet do hosta takiego jak serwer WWW, host ten musi znajdować się w sieci bezpośrednio dołączonej.
Sieć zdalna (ang. remote network) nie jest bezpośrednio połączona z routerem. Innymi słowy sieć zdalna to taka, do której można dotrzeć jedynie wysyłając pakiet do innego routera. Zdalne sieci są dodawane do tablicy routingu przez protokoły routingu dynamicznego albo konfigurację tras statycznych. Trasy dynamiczne (ang. dynamic routes) to trasy do zdalnych sieci, o których router dowiedział się automatycznie, za pomocą protokołu routingu dynamicznego. Trasy statyczne (ang. static routes) to trasy do sieci skonfigurowane ręcznie przez administratora sieci.
Uwaga: Tablica routingu - wraz z zawartymi w niej sieciami połączonymi bezpośrednio, trasami statycznymi i trasami dynamicznymi - jest stopniowo omawiana coraz dokładniej w dalszej części kursu.
Poniższe analogie mogą ułatwić zrozumienie różnic pomiędzy trasami bezpośrednio dołączonymi, statycznymi i dynamicznymi:
* Trasy połączone bezpośrednio: Aby odwiedzić sąsiada (ang. neighbor), wystarczy wyjść na ulicę, na której się mieszka. Droga ta jest podobna do trasy połączonej bezpośrednio, ponieważ „miejsce przeznaczenia” jest dostępne bezpośrednio przez „połączony interfejs”, czyli ulicę.
* Trasy statyczne: - Pociąg pokonuje daną trasę zawsze tą samą drogą. Taka droga jest podobna do trasy statycznej, ponieważ trasa do celu jest zawsze taka sama.
* Trasy dynamiczne: - Prowadząc samochód, zawsze możemy „dynamicznie” wybrać inną drogę na podstawie natężenia ruchu, pogody lub innych okoliczności. Taka droga jest podobna do trasy dynamicznej, ponieważ w wielu różnych momentach na drodze do celu można wybrać nową trasę.
Polecenie show ip route
Jak pokazano na ilustracji, tablica routingu jest wyświetlana za pomocą komendy show ip route. W tym momencie nie ma żadnych skonfigurowanych tras statycznych, nie jest też włączony żaden protokół routingu dynamicznego. Dlatego też w tablicy routingu routera R1 widzimy tylko sieci połączone bezpośrednio. Na temat każdej sieci znajdującej się w tablicy routingu widzimy następujące informacje:
* C - Informacja w tej kolumnie pokazuje źródło informacji o trasie: sieć połączona bezpośrednio, trasa statyczna albo protokół routingu dynamicznego. C oznacza trasę połączoną bezpośrednio.
* 192.168.1.0/24 - Jest to adres sieciowy i maska podsieci połączonej bezpośrednio lub zdalnej sieci. W tym przykładzie oba wpisy w tablicy routingu 192.168.1.0/24 i 192.168.2.0/24 to sieci połączone bezpośrednio.
* FastEthernet 0/0 - Informacja na końcu wpisu trasy odnosi się do interfejsu wyjściowego i/lub adresu IP routera następnego skoku. W tym przykładzie zarówno FastEthernet 0/0, jak i Serial 0/0 to interfejsy wyjściowe, przez które prowadzi droga do tych sieci.
Kiedy w tablicy routingu znajduje się wpis trasy do sieci zdalnej, pojawiają się dodatkowe informacje, na przykład metryka (ang. metric) routingu oraz odległość administracyjna (ang. administrative distance). Metrykę routingu, odległość administracyjną oraz polecenie show ip route dokładniej omówiono w kolejnych rozdziałach.
Komputery osobiste też mają tablice routingu. Na ilustracji widzimy wyniki polecenia route print. Polecenie wyświetla informacje o skonfigurowanej lub znalezionej bramie domyślnej, a także o sieciach połączonych, pętli zwrotnej oraz adresach grupowych i rozgłoszeniowych. W ramach tego kursu nie będziemy analizować wyników polecenia route print. Pokazano je tutaj, aby podkreślić, że wszystkie urządzenia ze skonfigurowanym protokołem IP powinny mieć tablicę routingu.
1.3.2 Sieci połączone bezpośrednio
Strona 1:
Dodawanie podłączonej sieci do tablicy routingu
Kiedy na interfejsie routera skonfigurujemy adres IP i maskę podsieci, interfejs ten staje się hostem w tej sieci. Kiedy na interfejsie FastEthernet 0/0 routera R1 skonfigurujemy adres IP 192.168.1.1 i maskę podsieci 255.255.255.0, stanie się on członkiem sieci 192.168.1.0/24. Hosty, które są podłączone do tej samej sieci lokalnej, na przykład komputer PC1, również mają adres IP należący do sieci 192.168.1.0/24.
Kiedy na komputerze osobistym skonfigurujemy adres IP hosta i maskę podsieci, komputer ten ustala swoją przynależność do sieci na podstawie tej maski. Zajmuje się tym system operacyjny, wykonując działanie AND na adresie IP hosta i masce podsieci. Router wykorzystuje tę samą logikę przy konfiguracji interfejsu.
Na komputerze osobistym z reguły konfiguruje się jeden adres IP hosta, ponieważ komputer ma tylko jeden interfejs sieciowy, najczęściej kartę sieciową Ethernet. Routery mają wiele interfejsów i dlatego każdy interfejs musi należeć do innej sieci. W przykładzie router R1 jest członkiem dwóch różnych sieci: 192.168.1.0/24 i 192.168.2.0/24. Router R2 również jest członkiem dwóch sieci: 192.168.2.0/24 i 192.168.3.0/24.
Po tym, jak interfejs routera zostanie skonfigurowany i aktywowany poleceniem no shutdown, zanim zacznie działać, musi otrzymać sygnał nośnej od innego urządzenia (innego routera, przełącznika, koncentratora itd.), nim zostanie uznany jako "podniesiony" (ang. up). Kiedy interfejs będzie już włączony, sieć tego interfejsu zostanie wpisana do tablicy routingu jako sieć połączona bezpośrednio.
Zanim zostanie skonfigurowany routing statyczny lub dynamiczny, router wie tylko o własnych sieciach połączonych bezpośrednio. Są to jedyne sieci wyświetlane w tablicy routingu do czasu skonfigurowania routingu statycznego bądź dynamicznego. Sieci połączone bezpośrednio są najważniejsze przy podejmowaniu decycji o wyborze trasy. Trasy statyczne i dynamiczne nie mogą istnieć w tablicy routingu bez sieci połączonych bezpośrednio routera. Router nie może wysłać pakietów z interfejsu, dla którego nie skonfigurowano adresu IP i maski podsieci, tak samo jak komputer osobisty nie może wysyłać pakietów IP ze swojego interfejsu ethernetowego, jeśli na tym interfejsie nie skonfigurowano adresu IP i maski podsieci.
Uwaga: Proces konfiguracji interfejsów routera i dodawania adresu sieciowego do tablicy routingu jest omówiony w kolejnym rozdziale.
1.3.3 Routing statyczny
Strona 1:
Routing statyczny
Sieci zdalne umieszcza się w tablicy routingu, konfigurując trasy statyczne albo włączając protokół routingu dynamicznego. Kiedy proces routingu IOS dowiaduje się o zdalnej sieci i interfejsie, z którego korzysta do osiągnięcia sieci, to umieszcza tę trasę w tablicy routingu w momencie włączenia interfejsu.
Trasa statyczna zawiera adres sieciowy i maskę podsieci zdalnej sieci, jak również adres IP routera następnego skoku albo interfejsu wyjściowego. W tablicy routingu trasy statyczne są wyróżniane kodem S. Trasy statyczne szczegółowo omówiono w następnym rozdziale.
Kiedy używać tras statycznych
Tras statycznych należy używać w następujących przypadkach:
* W sieci jest tylko kilka routerów. Używanie w takim przypadku protokołu routingu dynamicznego nie daje wymiernych korzyści. Przeciwnie, routing dynamiczny tylko utrudnia życie administratorowi.
* Sieć łączy się z Internetem za pośrednictwem tylko jednego ISP. Na tym łączu nie trzeba używać protokołu routingu dynamicznego, ponieważ ISP jest jedynym punktem wyjścia do Internetu.
* Duża sieć została skonfigurowana w topologii gwiazdy. Topologia gwiazdy (ang. hub-and-spoke) składa się z punktu centralnego i wielu punktów zewnętrznych, a każdy z nich ma tylko jedno połączenie z punktem centralnym. Używanie protokołu routingu dynamicznego jest zbędne, ponieważ każda gałąź ma tylko jedną drogę do danego celu - przez punkt centralny.
Tablice routingu większości routerów zawierają zarówno trasy statyczne, jak i trasy dynamiczne. Ale jak już wspomniano, zanim możliwe będzie używanie routingu statycznego bądź dynamicznego, tablica routingu musi najpierw zawierać sieci połączone bezpośrednio, przez które wiedzie droga do sieci zdalnych.
1.3.4 Routing dynamiczny
Strona 1:
Routing dynamiczny
Zdalne sieci można dodawać do tablicy routingu za pomocą protokołu routingu dynamicznego. Na ilustracji, router R1 automatycznie dowiedział się o sieci 192.168.4.0/24 od routera R2 za pośrednictwem protokołu routingu dynamicznego o nazwie RIP (Routing Information Protocol). RIP, jeden z pierwszych protokołów routingu IP, omówiono szczegółowo w kolejnych rozdziałach.
Uwaga: W tablicy routingu routera R1 widzimy, że router ten dowiedział się o dwóch zdalnych sieciach: jedną trasę poznał dynamicznie za pomocą protokołu RIP, a druga trasa, statyczna, została skonfigurowana ręcznie. Przykład ten pokazuje, że tablice routingu mogą zawierać trasy poznane dynamicznie i skonfigurowane statycznie, ale niekoniecznie jest to najlepsza możliwa konfiguracja dla tej sieci.
Protokoły routingu dynamicznego są używane przez routery do wymiany informacji o osiągalności i stanie sieci zdalnych. Protokoły routingu dynamicznego wykonują następujące czynności:
* wykrywanie sieci,
* aktualizacja i utrzymanie tablic routingu.
Automatyczne wykrywanie sieci
Wykrywanie sieci to zdolność protokołu routingu do udostępniania innym routerom informacji o znanych sobie sieciach, które używają tego samego protokołu routingu. Zwalniając z obowiązku skonfigurowania tras statycznych do zdalnych sieci na każdym routerze, protokół routingu dynamicznego pozwala routerom automatycznie dowiadywać się o tych sieciach od innych routerów. Sieci te oraz najlepsza trasa do każdej sieci są dodawane do tablicy routingu routera i oznaczane jako sieć znaleziona przez określony protokół routingu dynamicznego.
Utrzymanie tablic routingu
Po początkowym wykryciu sieci protokoły routingu dynamicznego będą też aktualizować i utrzymywać sieci w swoich tablicach routingu. Protokoły routingu dynamicznego nie tylko wyznaczają najlepszą trasę do różnych sieci, ale też ustalają nową najlepszą trasę, jeśli trasa początkowa stanie się bezużyteczna (albo gdy zmieni się topologia). Z tego powodu protokoły routingu dynamicznego mają przewagę nad trasami statycznymi. Routery, które używają protokołów routingu dynamicznego, automatycznie udostępniają informacje o trasach innym routerom i reagują na wszystkie zmiany w topologii bez interwencji administratora.
Protokoły routingu IP
Istnieje kilka protokołów routingu dynamicznego dla IP. Oto najpopularniejsze protokoły routingu dynamicznego do routingu pakietów IP:
* RIP (Routing Information Protocol),
* IGRP (Interior Gateway Routing Protocol),
* EIGRP (Enhanced Interior Gateway Routing Protocol),
* OSPF (Open Shortest Path First),
* IS-IS (Intermediate System-to-Intermediate System),
* BGP (Border Gateway Protocol).
Uwaga: Protokoły RIP (wersja 1 i 2), EIGRP i OSPF są omówione na tym kursie. Protokoły EIGRP i OSPF omówiono bardziej szczegółowo na kursie CCNP, razem z IS-IS i BGP. IGRP to przestarzały protokół routingu zastąpiony przez EIGRP. Zarówno IGRP, jak i EIGRP to firmowe protokoły routingu dynamicznego Cisco, natomiast pozostałe protokoły nie należą do firmy i opierają się na otwartych standardach.
Pamiętajmy, że w tablicach routingu najczęściej trasy statyczne występują wspólnie z trasami dynamicznymi. Protokoły routingu dynamicznego omówiono bardziej szczegółowo w rozdziale 3, „Wprowadzenie do protokołów routingu dynamicznego”.
1.3.5 Zasady tablicy routingu
Strona 1:
Zasady tablicy routingu
Od czasu do czasu na kursie tym będziemy wracać do trzech zasad związanych z tablicami routingu, które ułatwiają zrozumienie, konfigurację i usuwanie problemów związanych z routingiem. Zasady te, wymienione poniżej, zostały zaczerpnięte z książki Aleksa Zinina Cisco IP Routing.
1. Każdy router podejmuje decyzje samodzielnie na podstawie informacji znajdujących się w jego tablicy routingu.
2. To, że jeden router ma jakąś informację w swojej tablicy routingu, nie oznacza wcale, że inne routery mają takie same informacje.
3. Informacja o trasie z jednej sieci do drugiej nie jest jeszcze informacją o trasie w drugą stronę, czyli trasie powrotnej.
Jakie są skutki tych zasad? Rozważmy przykład z ilustracji.
1. Po podjęciu decyzji o wyborze trasy router R1 przekazuje pakiet przeznaczony dla komputera PC2 routerowi R2. Router R1 ma tylko informacje znajdujące się w swojej tablicy routingu - wynika z nich, że router R2 jest routerem następnego skoku. R1 nie wie, czy R2 faktycznie zna trasę do sieci docelowej.
2. To administrator sieci jest odpowiedzialny za to, aby wszystkie pozostające pod jego kontrolą routery miały pełną, dokładną informację o trasach, co zapewni możliwość przesłania pakietów pomiędzy dwiema dowolnymi sieciami. Może w tym celu używać tras statycznych, protokołu routingu dynamicznego albo jednego i drugiego.
3. Ponieważ router R2 jest bezpośrednio połączony z siecią docelową, potrafi przekazać pakiet do komputera PC2. Jednak pakiet od PC2 do PC1 został przez niego odrzucony.
To, że router R2 ma w swojej tablicy routingu informacje o docelowej sieci pierwszego żądania, nie oznacza wcale, że ma informacje o drodze powrotnej do sieci PC1.
Routing asymetryczny
Ponieważ routery nie zawsze mają w swoich tablicach routingu te same informacje, pakiety mogą podróżować przez sieć w jednym kierunku jedną, a wracać inną drogą. Nazywane to jest routingiem asymetrycznym (ang. asymmetric routing) Routing asymetryczny częściej wykorzystuje się w Internecie, który używa protokołu routingu BGP, niż w większości sieci wewnętrznych.
Z tego przykładu wynika, że projektując i rozwiązując problemy z siecią, administrator sieci powinien sprawdzić:
* Czy trasa od źródła do celu jest dostępna w obu kierunkach?
* Czy trasa w obie strony jest ta sama? (Rrouting asymetryczny nie jest rzadkością, ale czasami stwarza dodatkowe problemy)
1.4 Funkcje wyznaczania trasy i przełączania
1.4.1 Pola pakietu i pola ramki
Strona 1:
Pola pakietu i pola ramki
Jak wspomniano, routery podejmują najważniejsze decyzje o przekazywaniu na podstawie docelowego adresu IP pakietu. Przed wysłaniem tego pakietu z odpowiedniego interfejsu wyjściowego pakiet IP musi zostać enkapsulowany w ramkę warstwy 2, czyli warstwy łącza danych. W kolejnych podrozdziałach śledzimy pakiet IP od źródła do celu, badając proces enkapsulacji i dekapsulacji na każdym routerze. Ale wcześniej musimy przypomnieć sobie format pakietu IP w warstwie 3 i ramki ethernetowej w warstwie 2.
Format pakietu IP (Internet Protocol)
Format pakietu IP (Internet Protocol) zdefiniowano w dokumencie RFC 791. Jak widzimy na rysunku, w nagłówku pakietu IP znajdują się pola z informacjami o samym pakiecie oraz o hostach wysyłającym i odbierającym. Poniżej znajduje sie lista pól naglówka IP z krótkim opisem każdego z nich. Pola z docelowym adresem IP, źródłowym adresem IP, wersją i TTL (Time To Live) powinny być już znane. Inne pola, choć równie ważne, nie są omówione na tym kursie.
* Wersja - Numer wersji (4 bity); dominującą wersją jest IPv4
* IP header length - Długość nagłówka IP w słowach 32-bitowych (4 bity).
* Typ usługi - Pole to pozwala zróżnicować datagramy; trzy pierwsze bity to bity pierwszeństwa (to zastosowanie zostało zastąpione przez usługę DSCP - Differentiated Services Code Point, która używa pierwszych sześciu bitów - 2 ostatnie są zarezerwowane).
* Długość pakietu - Długość pakietu (nagłówek + dane) (16 bitów).
* Identyfikator - Unikalna wartość datagramu IP (16 bitów).
* Znaczniki - Sterują fragmentacją (trzy bity).
* Przemieszczenie fragmentu - obsługuje fragmentację datagramów, umożliwiając wysyłanie w Internecie różnego rozmiaru jednostek MTU (maximum transmission unit) (13 bitów).
* Time To Live (TTL) - Określa, przez ile routerów może przejść datagram, zanim zostanie odrzucony (osiem bitów).
* Protokół - Protokół wyższej warstwy, wysyłający datagram (osiem bitów).
* Suma kontrolna nagłówka - Sprawdzenie integralności nagłówka (16 bitów).
* Adres źródłowy - 32-bitowy źródłowy adres IP (32 bity).
* Adres docelowy - 32-bitowy docelowy adres IP (32 bity).
* Opcje IP - Opcje IP dotyczące testowania sieci, usuwania błędów, zabezpieczeń i inne (wielokrotność 32 bitów).
Strona 2:
Format ramki warstwy MAC
Ramka warstwy 2 (łącza danych) z reguły zawiera informacje nagłówkowe z adresem źródłowym i docelowym, fragment końcowy oraz właściwe dane. Adres źródłowy to adres w warstwie łącza danych tego interfejsu, który wysłał ramkę. Adres docelowy to adres w warstwie łącza danych interfejsu urządzenia docelowego. Oba interfejsy warstwy łącza danych, źródłowy i docelowy, znajdują się w tej samej sieci. Ponieważ pakiet jest przesyłany od routera do routera, źródłowy i docelowy adres IP w warstwie 3 nie zmienią się, natomiast źródłowy i docelowy adres warstwy 2 zmienią się. Proces ten jest omówiony bardziej dokładnie w kolejnych podrozdziałach.
Uwaga: Gdy używamy NAT (Network Address Translation), docelowy adres IP się zmienia, ale ten proces nie ma znaczenia dla IP i odbywa się w sieci przedsiębiorstwa. Routing z translacją NAT jest omówiony na jednym z kolejnych kursów.
Pakiet IP warstwy 3 jest enkapsulowany w ramkę warstwy łącza danych odpowiednią dla tego interfejsu. W tym przykładzie pokażemy ethernetową ramkę warstwy 2. Na rysunku przedstawiono dwie kompatybilne wersje Ethernetu. Na poniższej liście opisano pola ramki ethernetowej.
* Preambuła - Siedem bajtów naprzemiennych jedynek i zer służących do synchronizacji sygnałów.
* Ogranicznik SOF (Start of Frame, początek ramki) - Jeden bajt sygnalizujący początek ramki.
* Adres docelowy - Sześciobajtowy adres MAC urządzenia wysyłającego w lokalnym segmencie.
* Adres źródłowy - Sześciobajtowy adres MAC urządzenia odbierającego w lokalnym segmencie.
* Typ/długość - dwa bajty określające typ protokołu warstwy wyższej (format ramki Ethernet II) albo długość pola z danymi (format ramki IEEE 802.3).
* Dane i wypełnienie - od 46 do 1500 bajtów danych; zera służą do wypełnienia każdego pakietu danych mniejszego niż 46 bajtów.
* FCS (Frame Check Sequence) - Cztery bajty służące do cyklicznej kontroli nadmiarowości, aby mieć pewność, że ramka nie jest uszkodzona.
1.4.2 Najlepsza trasa i metryka
Strona 1:
Najlepsza trasa
Ustalenie przez router najlepszej trasy obejmuje ocenę wielu tras do tej samej sieci docelowej i wybór optymalnej, czyli najkrótszej trasy umożliwiającej dotarcie do tej sieci. Zawsze kiedy do jednej sieci prowadzi wiele tras, każda z nich używa innego interfejsu wyjściowego. Najlepsza trasa jest wybierana przez protokół routingu na podstawie wartości, czyli metryki używanej do ustalenia odległości do sieci. Niektóre protokoły routingu, na przykład RIP, używają prostego licznika skoków, czyli liczby routerów pomiędzy routerem lokalnym a siecią docelową. Inne protokoły routingu, na przykład OSPF, ustalają najkrótszą trasę, badając szerokość pasma łącza, a tym samym używając łączy z najszybszą szerokością pasma z routera do sieci docelowej.
Protokoły routingu dynamicznego z reguły używają własnych reguł i metryk do budowania i aktualizacji tablic routingu. Metryka to ilościowa wartość wskazująca odległość do danej sieci. Najlepszą trasą do danej sieci jest trasa z najniższą metryką. Na przykład router zamiast trasy znajdującej się w odległości 10 skoków będzie wolał trasę znajdującą się w odległości 5 skoków.
Podstawowym zadaniem protokołu routingu jest wyznaczenie najlepszych tras do każdej sieci znajdującej się w tablicy routingu. Algorytm routingu generuje dla każdej trasy przez sieć wartość zwaną metryką. Metryki mogą opierać się na jednym albo na kilku parametrach trasy. Niektóre protokoły routingu opierają wybór trasy na wielu metrykach połączonych w jedną. Im mniejsza wartość metryki, tym lepsza trasa.
Porównanie metryki liczby skoków z metryką szerokości pasma
Niektóre protokoły routingu dynamicznego używają dwóch poniższych metryk:
* Liczba skoków - Liczba routerów, przez które pakiet musi odbyć podróż, zanim dotrze do celu Każdy router to jeden skok. Liczba skoków równa 4 oznacza, że pakiet musi odwiedzić cztery routery, aby dotrzeć do swojego celu. Jeśli do celu prowadzi wiele tras, protokół routingu, na przykład RIP, wybiera trasę z najmniejszą liczbą skoków.
* Szerokość pasma - nazywana też „szybkością łącza”, to pojemność danych dla łącza. Szerokość pasma jest metryką na przykład dla protokołu routingu OSPF w implementacji Cisco. Najlepszą trasą do celu jest ta, która składa się z łączy z najwyższymi wartościami szerokości pasma, czyli z najszybszych. W rozdziale 11 „Protokół OSPF” omówiono używanie szerokości pasma w protokole OSPF.
Uwaga: Szybkośćz technicznego punktu widzenia nie jest precyzyjnym opisem, ponieważ przez ten sam fizyczny nośnik wszystkie bity podróżują z taką samą prędkością. Bardziej precyzyjnie szerokość pasma to liczba bitów, które można przesłać łączem w ciągu sekundy.
Kiedy metryką jest liczba skoków, wynikowa trasa nie zawsze jest optymalna. Dla przykładu spójrzmy na sieć przedstawioną na ilustracji. Jeśli protokołem routingu używanym przez te trzy routery jest RIP, router R1, wysyłając pakiety do komputera PC2 i sugerując się mniejszą liczbą skoków, wybierze gorszą trasę przez router R3 Szerokość pasma nie jest brana pod uwagę. Jeśli jednak protokołem routingu będzie OSPF, router R1 wybierze trasę na podstawie szerokości pasma. Pakiety będą docierały do celu szybciej przez dwa łącza T1 szybsze od jednego, ale wolniejszego łącza 56-kb/s.
1.4.3 Rozkładanie obciążenia na trasy równorzędne
Strona 1:
Rozkładanie obciążenia na trasy równorzędne
Można zadać pytanie, co się dzieje, gdy w tablicy routingu znajdują się dwie lub więcej tras do tej samej sieci docelowej z taką samą metryką. Kiedy router zna wiele dróg do sieci docelowej, a wartość tej metryki (liczby skoków, szerokości pasma itd.) jest taka sama, mówimy o metryce równorzędnej (ang. equal-cost metric), a router wykonuje rozkładanie obciążenia na trasy równorzędne (ang. equal-cost load balancing). W tablicy routingu zobaczymy jedną sieć docelową, ale z wieloma interfejsami wyjściowymi, po jednym dla każdej równorzędnej trasy. Router będzie wysyłał pakiety z wielu interfejsów wyjściowych wymienionych w tablicy routingu.
Prawidłowo skonfigurowane rozkładanie obciążenia może podnieść wydajność sieci. Do rozkładania obciążenia na trasy równorzędne można wykorzystywać zarówno protokoły routingu dynamicznego, jak i trasy statyczne. Rozkładanie obciążenia na trasy równorzędne omówiono bardziej szczegółowo w rozdziale 8 „Tablica routingu pod lupą”.
Trasy równorzędne a trasy nierównorzędne
Router może wysyłać pakiety wieloma trasami, nawet jeśli metryka nie jest taka sama - wymagany jest wtedy protokół routingu, który daje taką możliwość. Nosi to nazwę rozkładania obciążenia na trasy nierównorzędne (ang. unequal-cost load balancing). Jedynymi protokołami routingu, które to potrafią, są EIGRP i IGRP. Rozkładanie obciążenia na trasy nierównorzędne nie zostało omówione na żadnym z kursów CCNA, jest natomiast wśród zagadnień poruszanych na kursach CCNP.
1.4.4 Wyznaczanie trasy
Strona 1:
Wyznaczanie trasy
Na przekazywanie pakietów składają się dwie funkcje:
* funkcja wyznaczania trasy,
* funkcja przełączania.
Funkcja wyznaczania trasy to proces polegający na tym, że router ustala drogę, którą pakiet zostanie przekazany. Aby ustalić najlepszą trasę, router szuka w swojej tablicy routingu adresu sieciowego, który pasuje do docelowego adresu IP pakietu.
Możliwe są trzy rezultaty tego wyszukiwania:
Sieć połączona bezpośrednio - Jeśli docelowy adres IP pakietu należy do urządzenia w sieci, która jest bezpośrednio połączona z jednym z interfejsów routera, pakiet ten jest przekazywany bezpośrednio do tego urządzenia. Oznacza to, że docelowy adres IP pakietu to adres hosta znajdującego się w tej samej sieci co interfejs tego routera.
Sieć zdalna - Jeśli docelowy adres IP pakietu należy do sieci zdalnej, pakiet jest przekazywany do innego routera. Do zdalnych sieci można dotrzeć jedynie przekazując pakiety do innego routera.
Brak ustalonej trasy - Jeśli docelowy adres IP pakietu nie należy ani do sieci połączonej bezpośrednio, ani do sieci zdalnej, a router nie ma trasy domyślnej, pakiet jest odrzucany. Na źródłowy adres IP pakietu wysyłany jest komunikat nieosiągalności ICMP (Internet Control Message Protocol Unreachable).
W dwóch pierwszych przypadkach router enkapsuluje pakiet IP w format ramki warstwy 2 zgodny z typem interfejsu wyjściowego. Typ enkapsulacji w warstwie 2 zależy od typu interfejsu. Jeśli na przykład interfejs wyjściowy to Fast Ethernet, pakiet jest enkapsulowany w ramkę ethernetową. Jeśli interfejsem wyjściowym jest interfejs szeregowy, na którym skonfigurowano PPP, pakiet IP zostaje enkapsulowany w ramkę PPP.
Proces ten opisano w kolejnym podrozdziale.
1.4.5 Funkcja przełączania
Strona 1:
Funkcja przełączania
Po ustaleniu interfejsu wyjściowego za pomocą funkcji wyznaczania trasy router musi enkapsulować pakiet w ramkę warstwy łącza danych zgodną z typem interfejsu wyjściowego.
Funkcja przełączania to proces, w którym router odbiera pakiet na jednym interfejsie i odsyła go z innego interfejsu. Najważniejsza w funkcji przełączania jest enkapsulacja pakietów w typ ramki warstwy łącza danych odpowiedni dla łącza wyjściowego.
Po odebraniu w jednej sieci pakietu przeznaczonego do innej sieci router wykonuje trzy podstawowe kroki:
1. Dekapsuluje pakiet warstwy 3, usuwając nagłówek i pole końcowe ramki warstwy 2.
2. Bada docelowy adres IP pakietu IP, aby znaleźć najlepszą trasę w tablicy routingu.
3. Enkapsuluje pakiet warstwy 3 w nową ramkę warstwy 2 i wysyła tę ramkę z interfejsu wyjściowego.
Kiedy pakiet IP warstwy 3 jest przekazywany z jednego routera do następnego, jedynym elementem pakietu ulegającym zmianie jest pole TTL (czas życia). Kiedy router odbiera
pakiet IP, zmniejsza wartość TTL o 1. Jeśli wynikowa wartość TTL wynosi 0, router odrzuca pakiet. Wartość TTL zapobiega niekończącemu się podróżowaniu pakietów po sieciach
w wyniku pętli routingu lub jakiejś innej niesprawności sieci. Pętle routingu omówiono w jednym z kolejnych rozdziałów.
Kiedy pakiet IP przekazywany z routera do innego routera jest dekapsulowany z jednej ramki warstwy 2 i enkapsulowany w nową ramkę warstwy 2, adresy źródłowy i docelowy warstwy łącza danych zmieniają się. Adres źródłowy warstwy łącza danych to adres warstwy 2 interfejsu wychodzącego. Adres docelowy warstwy łącza danych to adres warstwy 2 routera następnego skoku. Jeśli następny skok jest ostatecznym urządzeniem docelowym, będzie to adres warstwy 2 tego urządzenia.
Pakiet może zostać enkapsulowany w ramkę warstwy 2 innego typu niż ten, w którym został odebrany. Na przykład router może odebrać na interfejsie Fast Ethernet pakiet enkapsulowany w ramkę ethernetową, a następnie wysłać go interfejsem szeregowym, enkapsulując w ramkę PPP.
Pamiętajmy, że w trakcie podróży pakietu od urządzenia źródłowego do ostatecznego urządzenia docelowego adresy IP warstwy 3 nie zmieniają się. Natomiast adresy warstwy 2 zmieniają się na każdym skoku, ponieważ każdy router dekapsuluje, a następnie ponownie enkapsuluje pakiet.
Strona 2:
Szczegóły funkcji wyznaczania trasy i przełączania
Czy potrafisz szczegółowo opisać, co dzieje się z pakietem w warstwach 2 i 3 w trakcie jego podróży od źródła do celu? Jeśli nie, przestudiuj animację wraz z objaśnieniami, aby nauczyć się opisywać ten proces.
Krok 1. Komputer PC1 musi wysłać pakiet do komputera PC2
Komputer PC1 enkapsuluje pakiet w ramkę ethernetową, a docelowym adresem MAC jest adres interfejsu FastEthernet 0/0 routera R1.
Skąd PC1 wie, że pakiet należy wysłać do routera R1, a nie bezpośrednio do PC2? PC1 ustalił, że źródłowy i docelowy adres IP znajdują się w innych sieciach.
Komputer PC1 wykonuje działanie AND na własnym adresie IP i masce podsieci, w efekcie poznając własny adres sieciowy. Następnie wykonuje to samo działanie AND na docelowym adresie IP pakietu i swojej masce podsieci. Jeśli w wyniku otrzyma własną sieć, to wie, że docelowy adres IP znajduje się w jego sieci i nie musi przesyłać pakietu do domyślnej bramy, czyli do routera. Jeśli wynikiem działania AND będzie inny adres sieciowy, PC1 wie, że docelowy adres IP nie znajduje się w jego sieci i musi przesłać go do domyślnej bramy, czyli routera.
Uwaga: Jeżeli wynikiem działania AND na docelowym adresie IP pakietu i masce podsieci PC1 będzie inny adres sieciowy niż własny adres sieciowy komputera PC1, niekoniecznie musi on odpowiadać rzeczywistemu zdalnemu adresowi sieciowemu. PC1 wie tylko tyle, że jeśli docelowy adres IP znajduje się w jego sieci, maski będą takie same i adresy sieciowe będą takie same. Maska zdalnej sieci może być równie dobrze inna. Jeśli docelowy adres IP jest adresem innej sieci, PC1 nie zna rzeczywistego zdalnego adresu sieciowego, wie tylko, że nie jest to jego sieć.
W jaki sposób komputer PC1 ustala adres MAC domyślnej bramy, czyli routera R1? PC1 sprawdza w swoim buforze ARP adres IP domyślnej bramy i skojarzony z nim adres MAC.
A co, jeśli w tablicy ARP nie ma takiego wpisu? PC1 wysyła żądanie ARP, a router R1 odsyła odpowiedź ARP.
Krok 2. Router R1 odbiera ramkę ethernetową
1. Router R1 odczytuje docelowy adres MAC ramki, który zgadza się z adresem MAC interfejsu odbierającego FastEthernet 0/0. Dlatego też R1 skopiuje ramkę do swojego bufora.
2. R1 widzi w ethernetowym polu typ wartość 0x800, co oznacza, że w części danych ramki ethernetowej znajduje się pakiet IP.
3. R1 dekapsuluje ethernetową ramkę.
4. Ponieważ docelowy adres IP pakietu nie pasuje do żadnej sieci połączonej bezpośrednio z routerem R1, ten ostatni szuka rozwiązania w tablicy routingu. R1 szuka w tablicy routingu adresu sieciowego i maski podsieci, które zawierają docelowy adres IP tego pakietu jako adres hosta w tej sieci. W tym przykładzie w tablicy routingu znajduje się trasa do sieci 192.168.4.0/24. Docelowy adres IP pakietu to 192.168.4.10 - jest to adres IP hosta w tej sieci.
Trasa routera R1 do sieci 192.168.4.0/24 ma adres IP następnego skoku 192.168.2.2 oraz interfejs wyjściowy FastEthernet 0/1. Oznacza to, że pakiet IP zostanie enkapsulowany w nową ramkę ethernetową, a docelowym adresem MAC będzie adres MAC skojarzony z adresem IP routera następnego skoku. Ponieważ interfejs wyjściowy znajduje się w sieci Ethernet, R1 musi określić adres IP następnego skoku za pomocą docelowego adresu MAC.
5. Router R1 szuka w swoim buforze ARP adresu IP następnego skoku - 192.168.2.2 dla swojego interfejsu FastEthernet 0/1. Jeśli go nie znajdzie, wysyła ze swojego interfejsu
FastEthernet 0/1 żądanie ARP. Wtedy router R2 odsyła odpowiedź ARP. Następnie router R1 aktualizuje swój bufor ARP, umieszczając w nim wpis dla sieci 192.168.2.2 i
skojarzony z nią adres MAC.
6. W tym momencie pakiet IP zostaje enkapsulowany w nową ramkę ethernetową i przekazany z interfejsu FastEthernet 0/1 routera R1.
Strona 3:
Krok 3. Pakiet dociera do routera R2
1. Router R2 bada docelowy adres MAC, który zgadza się z adresem MAC interfejsu odbierającego FastEthernet 0/0. Dlatego też R2 kopiuje ramkę do swojego bufora.
2. R2 widzi, że ethernetowe pole Typ ma wartość 0x800, co oznacza, że ramka ethernetowa w części danych zawiera pakiet IP.
3. R2 dekapsuluje ramkę ethernetową.
4. Ponieważ docelowy adres IP pakietu nie pasuje do żadnego z adresów interfejsów R2, router zagląda do swojej tablicy routingu, aby dowiedzieć się, gdzie przesłać ten pakiet. Proces szukania przez router R2 docelowego adresu IP pakietu w tablicy routingu przebiega tak samo, jak poprzednio na routerze R1.
W tablicy routingu routera R2 znajduje się trasa do sieci 192.168.4.0/24, adres IP następnego skoku to 192.168.3.2, a interfejs wyjściowy to S0/0/0. Ponieważ interfejs wyjściowy nie znajduje się w sieci Ethernet, R2 nie musi przekształcać adresu IP następnego skoku za pomocą docelowego adresu MAC.
Kiedy interfejs to szeregowe połączenie punkt-punkt, R2 enkapsuluje pakiet IP w odpowiedni dla interfejsu wyjściowego format ramki warstwy łącza danych (HDLC, PPP itd.). W tym przypadku enkapsulacją warstwy 2 jest PPP, dlatego adres łącza danych jest oznaczony jako rozgłoszenie (ang. broadcast). Pamiętajmy, że na interfejsach szeregowych nie ma adresów MAC.
Pakiet IP zostaje teraz enkapsulowany w nową ramkę warstwy danych - PPP, i wysłany z wyjściowego interfejsu Serial 0/0/0.
Strona 4:
Krok 4. Pakiet dociera do routera R3
1. Router R3 odbiera ramkę HDLC i kopiuje ją do swojego bufora.
2. Router R3 dekapsuluje ramkę warstwy łącza danych PPP.
3. R3 szuka w tablicy routingu docelowego adresu IP pakietu. Wynikiem przeszukiwania tablicy routingu jest jedna z sieci połączonych bezpośrednio z routerem R3. Oznacza to, że pakiet można przesłać bezpośrednio do urządzenia docelowego i nie trzeba wysyłać go do innego routera.
Ponieważ interfejs wyjściowy to bezpośrednio połączona sieć ethernetowa, R3 musi rozwiązać docelowy adres IP pakietu za pomocą docelowego adresu MAC.
4. Router R3 szuka w swoim buforze ARP docelowego adresu IP pakietu, czyli 192.168.4.0. Jeśli nie znajdzie takiego wpisu, wysyła z interfejsu FastEthernet 0/0 żądanie ARP. PC2 odsyła swój adres MAC w odpowiedzi ARP. Następnie router R3 umieszcza w swoim buforze ARP wpis dla adresu 192.168.4.0 i adres MAC zwrócony w odpowiedzi ARP.
5. Pakiet IP zostaje enkapsulowany w nową ethernetową ramkę warstwy łącza danych i wysłany z routera R3 interfejsem FastEthernet 0/0.
Krok 5. Ethernetowa ramka z enkapsulowanym pakietem IP dociera do PC2
1. PC2 bada docelowy adres MAC, który zgadza się z adresem MAC interfejsu odbierającego, czyli jego ethernetowej karty sieciowej. Dlatego też PC2 kopiuje pozostałą część ramki.
2. PC2 widzi w ethernetowym polu Typ wartość 0x800, co oznacza, że w części danych ethernetowej ramki znajduje się pakiet IP.
3. PC2 dekapsuluje ethernetową ramkę i przesyła pakiet IP do procesu IP swojego systemu operacyjnego.
Podsumowanie
Właśnie omówiliśmy proces enkapsulacji i dekapsulacji pakietu w czasie przesyłania go od routera do routera, od początkowego urządzenia źródłowego do ostatniego urządzenia docelowego. Zaczęliśmy też omawiać proces przeszukiwania tablicy routingu, którym dokładniej zajmiemy się w kolejnym rozdziale. Przekonaliśmy się, że routery nie tylko podejmują decyzje o trasach w warstwie 3, ale uczestniczą również w procesach warstwy 2, na przykład w enkapsulacji, a w sieciach ethernetowych w procesie ARP. Routery także współpracują z warstwą 1, która jest używana do transmisji i odbioru bitów danych poprzez nośnik (medium) fizyczny.
W tablicach routingu znajdują się zarówno informacje o sieciach połączonych bezpośrednio, jak i o sieciach zdalnych. Właśnie dlatego, że w tablicach routingu znajdują się adresy zdalnych sieci, routery wiedzą, jak i gdzie wysyłać pakiety przeznaczone do innych sieci, na przykład do Internetu. W kolejnych rozdziałach dowiemy się, w jaki sposób routery budują i utrzymują swoje tablice routingu - za pomocą ręcznie wprowadzanych tras statycznych lub używając protokołu routingu dynamicznego.
1.6 Podsumowanie
1.6.1 Podsumowanie i powtórzenie
Strona 1:
Podsumowanie
Rozdział ten stanowi wprowadzenie do routerów. Routery to komputery wyposażone w wiele komponentów sprzętowych i programowych typowych dla komputerów osobistych, w tym procesor, pamięć RAM, pamięć ROM i system operacyjny.
Głównym zadaniem routera jest łączenie ze sobą wielu sieci i przekazywanie pomiędzy nimi pakietów. Oznacza to, że z reguły router ma wiele interfejsów. Każdy interfejs jest
członkiem, czyli hostem w innej sieci IP.
Router ma tablicę routingu, czyli listę znanych sieci. W tablicy routingu znajdują się adresy sieciowe interfejsów routera, czyli sieci połączonych bezpośrednio, jak również adresy sieciowe sieci zdalnych. Sieć zdalna to taka, do której można dotrzeć jedynie przekazując pakiet do innego routera.
Sieci zdalne dodaje się do tablicy routingu na dwa sposoby: administrator sieci ręcznie konfiguruje trasy statyczne albo implementuje protokół routingu dynamicznego. Trasy statyczne wymagają mniej zasobów niż protokoły routingu dynamicznego, jeśli jednak topologia często się zmienia albo jest niestabilna, administrator ma więcej pracy.
Protokoły routingu dynamicznego automatycznie dostosowują się do zmian, nie wymagając interwencji administratora sieci. Protokoły routingu dynamicznego bardziej absorbują procesor, a także zajmują jakąś część pojemności łącza na aktualizacje i komunikaty routingu. W wielu przypadkach tablica routingu zawiera zarówno trasy statyczne, jak i dynamiczne.
Routery podejmują najważniejsze decyzje o przekazywaniu w warstwie 3, czyli warstwie sieci. Jednak router uczestniczy też w procesach warstw 1, 2 i 3. Pakiety IP warstwy 3 są enkapsulowane w ramkę łącza danych w warstwie 2 i kodowane na bity w warstwie 1. Interfejsy routera uczestniczą w procesach warstwy 2 związanych z ich enkapsulacją. Na przykład ethernetowy interfejs routera uczestniczy w procesie ARP tak jak inne hosty w danej sieci lokalnej.
W następnym rozdziale przeanalizujemy konfigurację tras statycznych, rozpoczynając omawianie tablicy routingu IP.
Strona 4:
Aby nauczyć się więcej
Tworzymy topologię podobną do tej przedstawionej w części 1.4.5.2 z kilkoma routerami i siecią LAN na każdym końcu. W jednej z sieci LAN umieszczamy klienta, a po drugiej stronie serwer WWW. W każdej sieci LAN pomiędzy komputerem a routerem wstawiamy przełącznik. Załóżmy, że każdy router zna trasę do każdej z sieci LAN, tak jak w części 1.4.5.2.
Co się dzieje, gdy host wyśle żądanie strony internetowej z serwera WWW? Należy zaobserwować wszystkie występujące procesy i protokoły, zaczynając od tego, że użytkownik wpisuje adres URL, na przykład http://www.cisco.com. Obejmuje to protokoły omówione w CCNA Exploration 1 i informacje z tego rozdziału.
Sprawdź, czy potrafisz określić każdy z procesów. Zaczynając od potrzeby rozwiązania przez klienta adresu www.cisco.com do adresu IP, który skutkuje tym, że klient musi dokonać żądania ARP do serwera DNS. Jakie są wszystkie protokoły i procesy biorące udział w uzyskiwaniu pierwszego pakietu z informacją http z serwera WWW.
* Jak przebiega proces DNS?
* Jak przebiega proces ARP?
* Jaki jest wpływ protokołu TCP na klienta i na serwer? Czy pierwszym pakietem odebranym przez serwer WWW od klienta jest żądanie internetowej strony?
* Co robią przełączniki po odebraniu ethernetowej ramki? W jaki sposób aktualizują swoje tablice adresów MAC i jak ustalają, w jaki sposób przekazać ramkę?
* Co robią routery po odebraniu pakietu IP?
* Jak wyglądają procesy dekapsulacji i enkapsulacji każdej ramki odbieranej i przekazywanej przez router?
* Czy serwer WWW i jego domyślna brama (jego router) wymagają jakiegoś procesu ARP?
17