Routing OSI warstwa 3 mgr inż. Łukasz Dylewski lukasz.dylewski@matman.uwm.edu.pl
Router – podstawowa konfiguracja Routed vs. Routing Routing statyczny Agenda Co to jest router ? Router … Router – podstawowa konfiguracja Routed vs. Routing Routing statyczny Sumaryzacja tras Routing dynamiczny Protokoły routingu dynamicznego
Co to jest router ? Dedykowane urządzenia sieciowe kierujące ruchem w sieci Posiadają system operacyjny IOS udostępniający następujące usługi : funkcje routingu i przełączania, niezawodny i bezpieczny dostęp do zasobów sieciowych, skalowalność sieci
Router - budowa Czteroportowy przełącznik Cisco EtherSwitch 10BASE-T/100BASE-TX Moduł karty pamięci Compact flash Pojedynczy port USB Porty Fast Ethernet Port konsoli Port AUX Interfejs HWIC (ang. High-speed WAN interface card)
Router - budowa
Router – budowa routera 1841
Router – budowa routera 1841
Router – budowa routera 1841
Router – budowa routera 1841
Router – budowa routera 1841 Pamięć flash 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.
Router – budowa routera 1841 ROM 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.
Router – budowa routera 1841 NVRAM 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.
Router – budowa routera 1841 Procesor Procesor wykonuje polecenia systemu operacyjnego, na przykład inicjację systemu, funkcje routingu i przełączania.
Router – budowa routera 1841
Router – budowa routera 1841 RAM 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.
Router – budowa routera 1841
Router – budowa
Router – Procedura startu Włączenie zasilania router przeprowadza test POST Z pamięci ROM ładowany jest program uruchomieniowy System IOS jest ładowany z pamięci flash, serwera TFTP lub pamięci ROM Z pamięci NVRAM lub za pośrednictwem protokołu TFTP jest ładowana konfiguracja
Routera - uruchamianie Procedura startu - 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. Procedura startu - 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.
Routera - uruchamianie Procedura startu - 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 #.
Routera - uruchamianie Procedura startu - 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.
Router - komunikacja Logowanie do routera przy użyciu: port konsoli, port pomocniczy, sesja Telnet sesja SSH
Router - logowanie Tryby pracy routera: tryb użytkownika tryb uprzywilejowany Router# tryb konfiguracji Router(config)# tryb ROM monitor ROMMON> tryb Boot ROM Router(boot)>
Router - ważne Polecenia: interpreter poleceń, listowanie poleceń, autouzupełnianie poleceń, polecenia konfiguracji, opisu, debugowania … Tablice na routerze: tablica sąsiadów, tablica topologii, tablica routingu.
Router – podstawowa konfiguracja Podstawowa konfiguracja routera Konfigurując router, wykonujemy pewne proste zadania, w tym: nazwanie routera, skonfigurowanie banera, skonfigurowanie interfejsów, ustawienie haseł, sprawdzenie podstawowej konfiguracji i działania routera. zapisanie zmian na routerze, 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# Router>enable 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ę. R1(config)# Router(config)#hostname R1 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)#password cisco R1(config)#line console 0 R1(config)#line vty 0 4 R1(config-line)#exit R1(config-line)#login 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: ****************************************** Enter TEXT message. End with the character "#". R1(config)#banner motd # 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. Odsyłacze Po informację na temat silnych haseł przejrzyj: "Cisco Response to Dictionary Attacks on Cisco LEAP," at http://www.cisco.com/en/US/products/hw/wireless/ps430/prod_bulletin09186a00801cc901.html#wp1002291 "Strong passwords: How to create and use them," at http://www.microsoft.com/athome/security/privacy/password.mspx
Router – podstawowa konfiguracja 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-if)#ip address 192.168.2.1 255.255.255.0 R1(config)#interface Serial0/0/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. 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-if)#ip address 192.168.1.1 255.255.255.0 R1(config)#interface FastEthernet0/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: 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
Routed vs. Routing Protokoły routowalne (ang. routed protocols) odpowiadają za dostarczanie danych do celu, czyli przenoszą pakiety zawierające dane użytkowników sieci. Przykłady: IP, IPX, Appletalk. Protokoły routingu (ang. routing protocols) używane są do wymiany informacji o trasach pomiędzy sieciami komputerowymi, co pozwala na dynamiczną budowę tablic routingu. Przykłady: RIP, RIP v.2, IGRP, EIGRP, OSPF, IS-IS, BGP.
Routing – sieci podłączone 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.
Routing statyczny Wykorzystywany w małych sieciach Prosta konfiguracja Łatwy do zrozumienia przez administratora Ręczna modyfikacja wpisów Nie wymaga „silnych” routerów Brak „śmieci” w sieci Router(config)#ip route network-address subnet-mask {ip-address | exit-interface } AD
Routing statyczny
Routing statyczny Trasy statyczne na routerze R1 R1(config)#ip route 172.16.1.0 255.255.255.0 172.16.2.2 Przyjrzyjmy się każdemu elementowi tego wyniku: ip route – polecenie konfigurujące trasę statyczną, 172.16.1.0 – adres sieciowy zdalnej sieci, 255.255.255.0 – maska podsieci zdalnej sieci, 172.16.2.2 – adres IP interfejsu Serial 0/0/0 routera R2, który jest następnym skokiem do tej sieci. Pozostałe trasy statyczne: R2(config)#ip route 172.16.3.0 255.255.255.0 172.16.2.1 R2(config)#ip route 192.168.2.0 255.255.255.0 192.168.1.1 R3(config)#ip route 172.16.1.0 255.255.255.0 192.168.1.2 R3(config)#ip route 172.16.2.0 255.255.255.0 192.168.1.2 R3(config)#ip route 172.16.3.0 255.255.255.0 192.168.1.2 Konfiguracja tras statycznych z interfejsami wyjściowymi Rozważmy inny sposób konfiguracji tych samych tras statycznych. Obecnie dla trasy statycznej z routera R1 do sieci 192.168.2.0/24 skonfigurowany jest tylko adres IP następnego skoku – 172.16.2.2. W bieżącej konfiguracji należy zwrócić uwagę na poniższy wiersz: ip route 192.168.2.0 255.255.255.0 172.16.2.2 Ta trasa statyczna wymaga drugiego przeszukania tablicy routingu, aby skojarzyć adres IP następnego skoku – 172.16.2.2, z interfejsem wyjściowym. Jednak w większości przypadków, konfigurując trasę statyczną, można samemu określić interfejs wyjściowy, dzięki czemu potrzebne będzie tylko jedno przeszukanie tablicy routingu. R1(config)#ip route 172.16.1.0 255.255.255.0 serial 0/0/0 R1(config)#ip route 192.168.1.0 255.255.255.0 serial 0/0/0 R1(config)#ip route 192.168.2.0 255.255.255.0 serial 0/0/0 R2(config)#ip route 172.16.3.0 255.255.255.0 serial 0/0/0 R2(config)#ip route 192.168.2.0 255.255.255.0 serial 0/0/1 R3(config)#ip route 172.16.1.0 255.255.255.0 serial 0/0/1 R3(config)#ip route 172.16.2.0 255.255.255.0 serial 0/0/1 R3(config)#ip route 172.16.3.0 255.255.255.0 serial 0/0/1 Trasy statyczne a sieci punkt-punkt Trasy statyczne skonfigurowane z interfejsami wyjściowymi zamiast adresów IP następnego skoku idealnie nadają się do większości szeregowych sieci punkt-punkt (ang. point-point). Sieci punkt-punkt, używające protokołów takich jak HDLC lub PPP, w procesie przekazywania pakietów nie stosują adresu IP następnego skoku. Routowany pakiet IP jest enkapsulowany w ramkę HDLC warstwy 2 z rozgłoszeniowym adresem docelowym warstwy 2. Tego typu łącza szeregowe punkt-punkt przypominają rury. Rura ma tylko dwa końce. To, co wchodzi jedną stroną, może mieć tylko jeden cel - drugi koniec rury. Wszystkie pakiety wysyłane z interfejsu Serial 0/0/0 routera R1 mogą mieć tylko jeden cel – interfejs Serial 0/0/0 routera R2. Interfejs szeregowy routera R2 ma akurat adres IP 172.16.2.2. Trasy statyczne na routerze R1 R1(config)#ip route 172.16.1.0 255.255.255.0 172.16.2.2 R1(config)#ip route 192.168.1.0 255.255.255.0 172.16.2.2 R1(config)#ip route 192.168.2.0 255.255.255.0 172.16.2.2
Routing statyczny – Sumaryzacja tras Cechy Zmniejszeniu rozmiaru tablicy routingu Wydajniejsze przeszukiwanie tablicy routingu Jedna trasa statyczna może reprezentować dziesiątki, setki, a nawet tysiące tras Jeden adres sieciowy może reprezentować wiele podsieci Podsumowanie tras w celu zmniejszenia rozmiaru tablicy routingu Dzięki zmniejszeniu rozmiaru tablicy routingu proces jej przeszukiwania jest wydajniejszy, ponieważ przeszukiwać trzeba mniej tras. Jeśli zamiast wielu można użyć jednej trasy statycznej, rozmiar tablicy routingu zostanie zredukowany. W wielu przypadkach jedna trasa statyczna może reprezentować dziesiątki, setki, a nawet tysiące tras. Jeden adres sieciowy może reprezentować wiele podsieci. Na przykład sieci 10.0.0.0/16, 10.1.0.0/16, 10.2.0.0/16, 10.3.0.0/16, 10.4.0.0/16, 10.5.0.0/16 i tak dalej aż do 10.255.0.0/16 może reprezentować jeden adres sieciowy – 10.0.0.0/8. Podsumowanie tras Podsumowanie wielu tras statycznych do jednej trasy statycznej można wykonać wtedy, gdy spełnione zostaną oba poniższe warunki: Sieci docelowe mogą być podsumowane do jednego adresu sieciowego. Wszystkie trasy statyczne używają tego samego interfejsu wyjściowego lub adresu IP następnego skoku. Nosi to nazwę podsumowania tras (ang. route summarization). Przykład: ip route 172.16.1.0 255.255.255.0 Serial0/0/1 ip route 172.16.2.0 255.255.255.0 Serial0/0/1 ip route 172.16.3.0 255.255.255.0 Serial0/0/1 Sprawdzimy, czy możliwe jest zsumowanie tych trzech tras w jedną trasę statycznej. Sieci 172.16.1.0/24, 172.16.2.0/24 i 172.16.3.0/24 można zsumować na sieć 172.16.0.0/22. Ponieważ wszystkie trzy trasy używają tego samego interfejsu wyjściowego, można je zsumować w jedną sieć 172.16.0.0 255.255.252.0 i utworzyć pojedynczą trasę sumaryczną. Obliczanie trasy sumarycznej Poniżej opisano kolejne etapy tworzenia sumarycznej trasy 172.16.1.0/22: 1. Zapisz binarnie sieci, które chcesz podsumować. 2. Aby znaleźć maskę podsieci dla podsumowania, zacznij od bitów położonych najbardziej na lewo. 3. Poruszaj się w prawo, znajdując wszystkie kolejne pasujące do siebie bity. 4. Kiedy znajdziesz kolumnę bitów, które do siebie nie pasują, zatrzymaj się. Dotarłeś do granicy podsumowania. 5. Oblicz, ile jest takich samych bitów położonych najbardziej na lewo (w tym przykładzie ta liczba to 22). Liczba ta będzie maską podsieci dla trasy sumarycznej /22, czyli 255.255.252.0. 6. Aby znaleźć adres sieciowy dla podsumowania, skopiuj 22 pasujące bity i dodaj na koniec wszystkie bity 0, aby razem mieć 32 bity.
Routing statyczny – Sumaryzacja tras
Routing statyczny – Trasa domyślna Domyślna trasa statyczna to taka, do której będą pasowały wszystkie pakiety. Domyślne trasy statyczne są używane: Kiedy żadne inne trasy z tablicy routingu nie pasują do docelowego adresu IP pakietu. Innymi słowy, kiedy nie ma bliższego dopasowania; Popularne zastosowanie to łączenie routera brzegowego firmy z siecią ISP; Kiedy router jest połączony z tylko jednym innym routerem. W takiej sytuacji mówimy o routerze szczątkowym. Router(config)#ip route 0.0.0.0 0.0.0.0 [exit-interface | ip-address ]
Routing dynamiczny Ewolucja protokołów routingu dynamicznego Protokoły routingu dynamicznego są używane w sieciach od wczesnych lat 80. XX wieku. Pierwsza wersja protokołu RIP została wypuszczona na rynek w 1982 roku, ale niektóre podstawowe algorytmy tego protokołu były używane w sieci ARPANET już w 1969 roku. Wraz z ewolucją i rosnącą złożonością sieci powstawały nowe protokoły routingu. Ilustracja przedstawia klasyfikację protokołów routingu. Jednym z najstarszych protokołów routingu Routing Information Protocol (RIP). Protokół ten doczekał się nowszej wersji – RIPv2. Jednak nowsza wersja protokołu RIP nadal nie pozwala na zadowalające skalowanie (ang. scale) w większych sieciach. W odpowiedzi na wymagania większych sieci powstały dwa zaawansowane protokoły routingu: Open Shortest Path First (OSPF) i Intermediate System-to-Intermediat System (IS-IS). Firma Cisco opracowała protokoły Interior Gateway Routing Protocol (IGRP) i Enhanced IGRP (EIGRP). EIGRP jest również dobrze skalowalny w większych implementacjach sieci. Poza tym trzeba było połączyć ze sobą różne sieci wewnętrzne i zapewnić routing pomiędzy nimi. Protokół Border Gateway Routing (BGP) jest dzisiaj używany do wymiany informacji o trasach zarówno pomiędzy dostawcami ISP, jak i pomiędzy ISP a ich największymi klientami prywatnymi. W wyniku masowej produkcji licznych urządzeń klienckich używających protokołu IP przestrzeń adresowa IPv4 jest prawie wyczerpana. W ten sposób powstał IPv6. Do obsługi komunikacji opartej na IPv6 opracowano nowsze wersje protokołu routingu IP (patrz wiersz IPv6 w tabeli).
Routing dynamiczny Cechy Automatyczne wykrywanie sieci Wybór najlepszej trasy do sieci docelowej Utrzymanie tablicy routingu Automatyczna reakcja na zmiany w topologii sieci Lepsza skalowalność Wymagania Mniejsza uwaga administratora Większa wiedza „Silniejsze” routery Dbanie o zbieżność Czym jest zbieżność Zbieżność (ang. convergence) ma miejsce wtedy, gdy tablice routingu wszystkich routerów mają spójną zawartość. Sieć osiągnęła stan zbieżności, kiedy wszystkie routery mają pełne i dokładne informacje o sieci. Czas zbieżności to czas potrzebny routerom na podzielenie się informacjami, obliczenie najlepszej drogi i aktualizację tablic routingu. Sieć nie jest w pełni operacyjna, dopóki zbieżność nie stanie się faktem: dlatego też w większości sieci wymagane są krótkie czasy zbieżności. Zbieżność wymaga jednocześnie współpracy i działania samodzielnego. Routery dzielą się ze sobą informacjami, ale muszą niezależnie obliczać wpływ zmiany w topologii na własne trasy. Ponieważ zgoda na nową topologię jest wyrażana niezależnie, mówi się, że routery zbliżają się (ang. converge), aby osiągnąć konsensus. Do właściwości zbieżności należą szybkość propagacji informacji o trasach oraz obliczania optymalnych dróg. Protokoły routingu można oceniać na podstawie szybkości zbieżności: im szybsza zbieżność, tym lepszy protokół routingu. Generalnie rzecz biorąc, RIP i EIGRP wolno osiągają stan zbieżność, natomiast EIGRP, OSPF i IS-IS robią to znacznie szybciej.
Routing dynamiczny Użycie routingu statycznego Zanim szczegółowo omówimy zalety protokołów routingu dynamicznego, musimy rozważyć argumenty przemawiające za używaniem routingu statycznego. Routing dynamiczny z pewnością ma kilka zalet w porównaniu z routingiem statycznym. Jednak routing statyczny nadal jest używany w dzisiejszych sieciach. W sieciach z reguły używa się połączenia routingu statycznego i dynamicznego. Routing statyczny ma kilka głównych zastosowań, w tym: Ułatwienie utrzymania tablicy routingu w mniejszych sieciach, których rozbudowa nie jest przewidywana. Routing do i z sieci szczątkowych (patrz rozdział 2). Używanie jednej trasy domyślnej reprezentującej drogę do każdej sieci, dla której w tablicy routingu nie ma lepszej trasy. Zalety i wady routingu statycznego W tabeli porównano cechy routingu dynamicznego i statycznego. Z tego porównania można wywnioskować zalety każdej metody routingu. Zalety jednej metody są wadami tej drugiej. Zalety routingu statycznego to: Minimalne wykorzystanie procesora. Administrator ma mniej do nauki. Łatwość konfiguracji. Wady routingu statycznego to: Konfiguracja i utrzymanie są czasochłonne. Konfiguracja jest podatna na błędy, zwłaszcza w większych sieciach. Do wprowadzania informacji o zmianie tras wymagana jest interwencja administratora. Nie skaluje się dobrze w powiększających się sieciach: utrzymanie staje się uciążliwe. Prawidłowa implementacja wymaga pełnej wiedzy o całej sieci. Zalety i wady routingu dynamicznego Zalety routingu dynamicznego to: Administrator ma mniej pracy przy utrzymaniu konfiguracji, gdy dodaje lub usuwa sieci. Protokoły automatycznie reagują na zmiany topologii. Konfiguracja jest mniej podatna na błędy. Większa skalowalność: rozbudowa sieci z reguły nie stwarza problemu. Wady routingu dynamicznego to: Używane są zasoby routera (cykle procesora, pamięć i przepustowość łącza). Konfiguracja, weryfikacja i rozwiązywanie problemów wymagają większej wiedzy administratora.
Routing dynamiczny Najczęściej używane protokoły routingu to: RIP – wewnętrzny protokół routingu wektora odległości, IGRP – wewnętrzny protokół routingu wektora odległości opracowany przez Cisco (zaniechany od wersji 12.2 systemu Cisco IOS), OSPF – wewnętrzny protokół routingu stanu łącza, IS-IS – wewnętrzny protokół routingu stanu łącza, EIGRP – zaawansowany wewnętrzny protokół routingu wektora odległości opracowany przez Cisco, BGP – zewnętrzny protokół routingu wektora trasy.
Routing dynamiczny – System autonomiczny AS System autonomiczny (ang. autonomous system, AS), zwany też domeną routingu (ang. routing domain), to zbiór routerów pozostających pod wspólną administracją. Typowe przykłady to wewnętrzna sieć przedsiębiorstwa i sieć ISP. Ponieważ Internet opiera się na koncepcji systemów autonomicznych, wymagane są dwa typy protokołów routingu: wewnętrzne i zewnętrzne. Te protokoły to: Interior Gateway Protocols (IGP) - Protokoły bramy wewnętrznej - używane w routingu wewnątrz systemu automatycznego. Exterior Gateway Protocols (EGP) - Protokoły bramy zewnętrznej – używane w routingu pomiędzy różnymi systemami autonomicznymi.
Routing dynamiczny – System autonomiczny AS
Routing dynamiczny – wektora odległości Routery znają tylko część sieci Informacje uzyskiwane tylko od sąsiadów Najlepsze w prostych i płaskich sieciach Długi czas zbieżności Aktualizacje okresowe Wykorzystanie algorytmu Bellman’a-Ford’a Protokoły routingu wektora odległości, np. RIP i EIGRP
Routing dynamiczny – stanu łącza Routery tworzą pełny obraz sieci Wszystkie routery mają identyczny obraz sieci Aktualizacje wyzwalane zdarzeniami Zastosowanie w dużych i hierarchicznych sieciach Administrator musi posiadać dużą wiedzę Szybka zbieżność Protokoły routingu stanu łącza, np. OSPF
Routing dynamiczny - klasowy Routing klasowy (informacja o masce sieci nie jest wysyłana między routerami, klasa sieci rozstrzygana jest o przynależność danego IP do klasy) Nie wspiera techniki VLSM (Variable Lenght Subnet Mask) Brak wsparcia dla podzielonych sieci Przykład: RIP v1 i IGRP Klasowe protokoły routingu Klasowe protokoły routingu (ang. classful routing protocols) nie wysyłają w aktualizacjach routingu informacji o masce podsieci. Pierwsze protokoły routingu, na przykład RIP, były klasowe. Było to w czasach, gdy adresy sieciowe alokowano na podstawie klas: A, B lub C. Protokół routingu nie musiał umieszczać w aktualizacji routingu maski podsieci, ponieważ maskę podsieci można było ustalić na podstawie pierwszego oktetu adresu sieciowego. Klasowych protokołów routingu nadal można używać w części dzisiejszych sieci, ale ponieważ nie zawierają maski podsieci, nie wszędzie się nadają. Klasowe protokoły routingu nie mogą być używane, gdy sieć jest podzielona z użyciem więcej jak jednej maski podsieci. Innymi słowy klasowy protokół routingu nie wspiera techniki zmiennej długości maski podsieci (VLSM). Klasowe protokoły routingu mają inne ograniczenia, w tym brak obsługi sieci nieciągłych (ang. discontiguous). W kolejnych rozdziałach bardziej szczegółowo omówiono klasowe protokoły routingu, sieci nieciągłe i VLSM. Do klasowych protokołów routingu zaliczamy RIPv1 i IGRP.
Routing dynamiczny - klasowy
Routing dynamiczny - bezklasowy Routing bezklasowy (informacje o masce sieci są współdzielone przez routery) Wsparcie dla VLSM Przykład: RIPv2, EIGRP, OSPF, IS-IS, BGP Bezklasowe protokoły routingu Bezklasowe protokoły routingu (ang. classless routing protocols) w aktualizacjach routingu oprócz adresu sieciowego umieszczają maskę podsieci. W dzisiejszych sieciach nie ma już alokacji na podstawie klas, a maski podsieci nie można ustalić na podstawie wartości pierwszego oktetu. Bezklasowe protokoły routingu są wymagane w większości dzisiejszych sieci, ponieważ obsługują VLSM, sieci nieciągłe oraz inne funkcje, które omówiono w kolejnych rozdziałach. Na ilustracji zwróćmy uwagę na fakt, że w tej samej topologii, ale z bezklasowym protokołem routingu, używane są maski podsieci /30 i /27. Zauważmy również, że w tej topologii występują sieci nieciągłe. Bezklasowe protokoły routingu to RIPv2, EIGRP, OSPF, IS-IS i BGP.
Routing dynamiczny - bezklasowy
Routing dynamiczny - metryki Liczba skoków – prosta metryka oznaczająca liczbę routerów odwiedzanych przez pakiet zmierzający do celu, Szerokość pasma – wybierana jest droga z największą szerokością pasma. Obciążenie – bierze pod uwagę natężenie ruchu na danym łączu. Opóźnienie – bierze pod uwagę czas, w jakim pakiet przemierza drogę. Niezawodność – szacuje prawdopodobieństwo awarii łącza obliczane na podstawie licznika błędów interfejsu lub poprzednich awarii łącza. Koszt – wartość ustalona przez system IOS albo przez administratora sieci, wskazująca preferencję dla trasy. Koszt może reprezentować metrykę, połączenie metryk, albo arbitralną regułę. Zdarza się, że protokół routingu dowie się o więcej niż jednej trasie do tego samego celu. Aby wybrać najlepszą drogę, protokół routingu musi mieć możliwość oceny i rozróżnienia dostępnych dróg. W tym celu używana jest metryka – wartość używana przez protokoły routingu w celu ustalenia kosztów dotarcia do zdalnych sieci. Metryka służy do wyznaczania drogi preferowanej w sytuacji, gdy do tej samej zdalnej sieci wiedzie wiele dróg. Metryka służy do określenia, która ścieżka jest najlepsza w momencie kiedy wiele ścieżek jest dostępnych do tej samej sieci zdalnej. Każdy protokół routingu oblicza swoją metrykę w inny sposób. Na przykład RIP wykorzystuje liczbę skoków, EIGRP używa połączenia szerokości pasma i opóźnienia, a implementacja OSPF firmy Cisco używa szerokości pasma. Liczba skoków to metryka, którą najłatwiej sobie uzmysłowić. Liczba skoków to liczba routerów odwiedzanych przez pakiet na drodze do sieci docelowej.
Routing dynamiczny - metryki RIP: Liczba skoków – najlepsza droga to trasa z najniższą liczbą skoków. IGRP i EIGRP: Szerokość pasma, opóźnienie, niezawodność i obciążenie – najlepsza droga to trasa z najniższą metryką złożoną, obliczaną na podstawie wymienionych parametrów. Domyślnie używane są tylko szerokość pasma i opóźnienie. IS-IS i OSPF: Koszt – najlepsza droga to trasa z najniższym kosztem. OSPF w implementacji Cisco ustala koszt na podstawie szerokości pasma. Zdarza się, że protokół routingu dowie się o więcej niż jednej trasie do tego samego celu. Aby wybrać najlepszą drogę, protokół routingu musi mieć możliwość oceny i rozróżnienia dostępnych dróg. W tym celu używana jest metryka – wartość używana przez protokoły routingu w celu ustalenia kosztów dotarcia do zdalnych sieci. Metryka służy do wyznaczania drogi preferowanej w sytuacji, gdy do tej samej zdalnej sieci wiedzie wiele dróg. Metryka służy do określenia, która ścieżka jest najlepsza w momencie kiedy wiele ścieżek jest dostępnych do tej samej sieci zdalnej. Każdy protokół routingu oblicza swoją metrykę w inny sposób. Na przykład RIP wykorzystuje liczbę skoków, EIGRP używa połączenia szerokości pasma i opóźnienia, a implementacja OSPF firmy Cisco używa szerokości pasma. Liczba skoków to metryka, którą najłatwiej sobie uzmysłowić. Liczba skoków to liczba routerów odwiedzanych przez pakiet na drodze do sieci docelowej.
Routing dynamiczny - inne Równoważenie obciążenia na trasy o jednakowej wartości z metryk protokołu routingu Dystans administracyjny AD Wybór informacji o trasie w oparciu o preferencje protokołu routingu Zakres wartości AD – 0 255 Im mniejsza wartość tym lepsza Określenie techniczne – (godny zaufania ang. trustworthiness)
Routing dynamiczny - inne Dystans administracyjny AD
RIP (ang. Routing Information Protocol) Protokół działający z wykorzystaniem wektora odległości Routery wymieniają się swoimi tablicami routingu co określone odstępy czasu RIP standardowo co 30 sekund (z małymi różnicami) Metryką trasy w protokole RIP jest ilość hopów, jaką musi pokonać pakiet, by dotrzeć do sieci/hosta 1-15 16 = trasa nieosiągalna
RIP v2 Możliwość przenoszenia dodatkowych informacji o routingu pakietów, Mechanizm uwierzytelniania zabezpieczający tablice routingu, Obsługa techniki masek podsieci o zmiennej długości (VLSM)
IGRP (ang. Interior Gateway Routing Protocol) Protokół działający z wykorzystaniem wektora odległości Protokół IGRP wysyła aktualizacje tras w odstępach 90-sekundowych. Aktualizacje te ogłaszają wszystkie sieci wchodzące w skład danego systemu autonomicznego (AS) Metryki: przepustowość, opóźnienie, obciążenie, niezawodność
OSPF (ang. Open Shortest Path First) Protokół działający z wykorzystaniem stanu łącza Aktualizacje wyzwalane zdarzeniami Szybko zbieżny Wymaga ”mocnych” routerów Korzysta ze wspólnego obrazu sieci Używa algorytmu SPF Metryka: szybkość trasy
IS-IS (ang. Intermediate System to Intermediate System) Protokół IGP stanu łącza Używa algorytmu Dijkstry Lepiej skalowalny niż OSPF Szybsza zbieżność Wykorzystywany przez dużych operatorów sieciowych Obsługa do 1000 routerów w obszarze
BGP (ang. Border Gateway Protocol) Jest to zewnętrzny protokół routingu działający na podstawie wektora odległości Jest używany pomiędzy dostawcami usług sieciowych lub pomiędzy dostawcami usług sieciowych a klientami Jest używany do routingu ruchu internetowego pomiędzy systemami autonomicznymi
EIGRP (ang. Enhanced Interior Gateway Routing Protocol) Ulepszona wersja protokołu IGRP Korzysta z połączenia funkcji wektora odległości i stanu łącza (protokół hybrydowy) Do obliczania najkrótszej ścieżki jest używany algorytm DUAL (ang. Diffusing Update Algorithm) Główne metryki: przepustowość i opóźnienie Uaktualnienia routingu są rozgłaszane grupowo na adres 224.0.0.10 w reakcji na zmiany w topologii sieci
EIGRP cd. Możliwość routingu w sieci IP, IPX, AppleTalk – mechanizm PDU Przesyłanie danych poprzez RTP (Reliable Transport Protocol) zamiast TCP lub UDP Pakiety: Hello Update/ACK Query/Reply
EIGRP cd.
KONIEC