9 EIGRP


CCNA Exploration - Protokoły i koncepcje routingu

9 EIGRP

9.0 Wprowadzenie do rozdziału

9.0.1 Wprowadzenie do rozdziału

Strona 1:

Enhanced Interior Gateway Routing Protocol (EIGRP) to bezklasowy protokół routingu wektora odległości, który został wydany w 1992 roku wraz z wersją 9.21 systemu Cisco IOS. Jak wskazuje nazwa, EIGRP to udoskonalona (ang. enhanced) wersja protokołu IGRP (Interior Gateway Routing Protocol). Oba protokoły są zastrzeżonymi produktami firmy Cisco i działają tylko na routerach Cisco.

Głównym celem twórców protokołu EIGRP było utworzenie bezklasowej wersji protokołu IGRP. Protokół EIGRP ma kilka cech, których próżno szukać w innych protokołach routingu wektora odległości, takich jak RIPv1, RIPv2 czy IGRP. Te cechy to:

Mimo że EIGRP może działać tak jak protokół routingu stanu łącza cały czas pozostaje protokołem routingu wektora odległości.

Uwaga: W odniesieniu do EIGRP czasami używane jest określenie hybrydowy protokół routingu (ang. hybrid routing protocol). Wprowadza to jednak w błąd, ponieważ EIGRP nie jest hybrydą pomiędzy protokołami routingu wektora odległości i stanu łącza - jest wyłącznie protokołem routingu wektora odległości. Dlatego też Cisco nie określa już w ten sposób protokołu EIGRP.

W tym rozdziale omówiono konfigurację protokołu EIGRP i sprawdzanie konfiguracji za pomocą poleceń show. Omówiono również wzór używany przez protokół EIGRP do obliczania złożonej metryki.

Cechą szczególną protokołu EIGRP jest protokół RTP (Reliable Transport Protocol), który pozwala na niezawodne lub zawodne dostarczanie pakietów EIGRP. Poza tym EIGRP tworzy relacje z bezpośrednio połączonymi routerami, które również używają protokołu EIGRP. Do śledzenia stanu tych sąsiadów wykorzystywane są relacje sąsiedzkie. Protokół RTP i przyległości sąsiadów pozwalają działać głównej sile protokołu EIGRP, czyli algorytmowi DUAL (Diffusing Update Algorithm).

Algorytm DUAL jest silnikiem obliczeniowym protokołu EIGRP. Gwarantuje on wyznaczanie w domenie routingu tras wolnych od pętli i tras zapasowych. Poznamy dokładny sposób wybierania przez DUAL trasy do umieszczenia w tablicy routingu i dowiemy się, co DUAL robi z potencjalnymi trasami zapasowymi.

Podobnie jak RIPv2, protokół EIGRP może działać w wariancie routingu klasowego i bezklasowego. W tym rozdziale wyjaśniono, jak wyłączać autosumaryzację, a następnie jak ręcznie sumaryzować sieci, aby zredukować rozmiar tablic routingu. Na końcu wyjaśniono używanie domyślnego routingu z protokołem EIGRP.

0x01 graphic

9.1 Wprowadzenie do protokołu EIGRP

9.1.1 EIGRP: ulepszony protokół routingu wektora odległości

Strona 1:

Mimo że EIGRP to ulepszony protokół routingu wektora odległości, w dalszym ciągu pozostaje przede wszystkim protokołem wektora odległości. Czasami jest to powodem nieporozumień. Aby docenić ulepszenia wprowadzone w protokole EIGRP i wyeliminować te nieporozumienia, musimy najpierw poznać jego poprzednika, czyli protokół IGRP.

Korzenie EIGRP: IGRP

Cisco opracowało własnościowy protokół IGRP w 1985 roku, w odpowiedzi na niektóre ograniczenia protokołu RIPv1, takie jak używanie metryki pod postacią liczby skoków i 15 skoków jako maksymalny rozmiar sieci.

Zamiast liczby skoków zarówno IGRP, jak i EIGRP używają metryki złożonej z szerokości pasma, opóźnienia, niezawodności i obciążenia. Domyślnie oba te protokoły używają tylko szerokości pasma i opóźnienia. Jednak IGRP to klasowy protokół routingu wykorzystujący algorytm Bellmana-Forda i aktualizacje okresowe, dlatego jego przydatność w wielu dzisiejszych sieciach jest ograniczona.

W związku z tym firma Cisco ulepszyła protokół IGRP o algorytm DUAL i inne funkcje. Polecenia dla protokołów IGRP i EIGRP są podobne, a w wielu przypadkach identyczne. Pozwala to na łatwe przechodzenie z używania IGRP na EIGRP. Firma Cisco zrezygnowała z protokołu IGRP, począwszy od wersji 12.2(13)T i 12.2(R1s4)S systemu Cisco IOS.

Mimo że w dalszej części rozdziału omówiono to bardziej szczegółowo, przedstawimy teraz kilka różnic pomiędzy tradycyjnym protokołem routingu wektora odległości, takim jak RIP i IGRP, a ulepszonym protokołem routingu wektora odległości EIGRP.

Na ilustracji zebrano główne różnice pomiędzy tradycyjnym protokołem routingu wektora odległości, takim jak RIP, a ulepszonym protokołem routingu wektora odległości EIGRP.

Algorytm

Tradycyjne protokoły routingu wektora odległości używają odmiany algorytmu Bellmana Forda lub Forda-Fulkersona. Protokoły te, na przykład RIP i IGRP, usuwają z tablicy routingu niektóre wpisy po upływie czasu ważności i dlatego muszą co jakiś czas wysyłać aktualizacje tablicy routingu.

Protokół EIGRP używa algorytmu DUAL. Pozostając protokołem routingu wektora odległości, EIGRP z algorytmem DUAL implementuje funkcje, których nie znajdziemy w tradycyjnych protokołach routingu wektora odległości. Protokół EIGRP nie wysyła aktualizacji okresowych, a wpisy tras nie mają czasów ważności. Zamiast tego EIGRP używa lekkiego protokołu hello do monitorowania stanu połączenia ze swoimi sąsiadami. Tylko zmiany w informacjach o trasach, na przykład pojawienie się nowego łącza albo awaria istniejącego, powodują wysłanie aktualizacji routingu. Aktualizacje routingu EIGRP nadal są wektorami odległości wysyłanymi do bezpośrednio połączonych sąsiadów.

Ustalanie trasy

Tradycyjne protokoły routingu wektora odległości, na przykład RIP i IGRP, zachowują informacje jedynie o trasach preferowanych, o najlepszej drodze do sieci docelowej. Jeśli trasa ta stanie się niedostępna, router czeka na kolejną aktualizację routingu z informacją o trasie do tej zdalnej sieci.

Algorytm DUAL protokołu EIGRP wykorzystuje niezależną od tablicy routingu tablicę topologii, która zawiera zarówno najlepszą trasę do sieci docelowej, jak i trasy zapasowe, które DUAL uznał za wolne od pętli. Wolna od pętli (ang. loop-free) oznacza, że sąsiad nie ma trasy do sieci docelowej przechodzącej przez ten router.

W dalszej części rozdziału przekonamy się, że aby trasa została uznana przez protokół DUAL za wolną od pętli trasą zapasową, musi spełnić warunek dopuszczalności. Każda trasa zapasowa spełniająca ten warunek ma gwarancję, że jest wolna od pętli. Ponieważ EIGRP to protokół routingu wektora odległości, istnieje możliwość, że pojawią się wolne od pętli trasy zapasowe do sieci docelowej niespełniające warunku dopuszczalności. Trasy te tym samym nie są umieszczane przez protokół DUAL w tablicy topologii jako prawidłowe, wolne od pętli trasy zapasowe.

Jeśli trasa staje się niedostępna, DUAL szuka w swojej tablicy topologii prawidłowej trasy zapasowej. Jeśli taka istnieje, trasa jest niezwłocznie umieszczana w tablicy routingu. Jeżeli nie istnieje, algorytm DUAL wykonuje proces przeszukiwania sieci, aby sprawdzić czy istnieje trasa zapasowa spełniająca warunek dopuszczalności. Proces ten jest omówiony dokładniej w dalszej części rozdziału.

Zbieżność

Tradycyjne protokoły routingu wektora odległości, na przykład RIP i IGRP, używają aktualizacji okresowych. Z uwagi na zawodną naturę aktualizacji okresowych są one podatne na pętle routingu i problem z odliczaniem do nieskończoności. RIP i IGRP używają kilku mechanizmów ułatwiających uniknięcie tych problemów, między innymi zegarów podtrzymania (ang. hold-down timers), które są przyczyną dłuższego czasu zbieżności.

Protokół EIGRP nie używa zegarów podtrzymania. Wolne od pętli trasy uzyskuje się za pomocą systemu obliczania tras (obliczenia rozmyte, ang. diffusing computations), które są wykonywane w pełnej koordynacji pomiędzy routerami. Szczegóły tego procesu nie mieszczą się w programie tego kursu, ale efektem jest szybsza zbieżność niż w przypadku tradycyjnych protokołów routingu wektora odległości.

0x01 graphic

9.1.2 Format komunikatu EIGRP

Strona 1:

Wskaż pola w komunikacie EIGRP, aby zobaczyć proces enkapsulacji.

Część komunikatu EIGRP zawierająca dane jest enkapsulowana w pakiecie. To pole z danymi nosi nazwę TLV (od Type/Length/Value). Jak widzimy na rysunku, interesujące nas na tym kursie typy TLV to parametry EIGRP, wewnętrzne trasy IP i zewnętrzne trasy IP. Komponenty pola danych TLV są omówione w dalszej części kursu.

Nagłówek pakietu EIGRP jest dołączany do każdego pakietu EIGRP, niezależnie od jego typu. Nagłówek pakietu EIGRP i TLV są następnie enkapsulowane w pakiecie IP. W nagłówku pakietu IP pole protokołu zostaje ustawione na 88, co oznacza EIGRP, a adresem docelowym jest adres grupowy 224.0.0.10. Jeśli pakiet EIGRP jest enkapsulowany w ramce ethernetowej, docelowy adres MAC również jest adresem grupowym 01-00-5E-00-00-0A.

0x01 graphic


Strona 2:

Uwaga: Omówienie wszystkich pól komunikatów EIGRP wykracza poza program tego kursu. Pokazujemy wszystkie pola, aby dać dokładny obraz formatu komunikatu EIGRP. Jednak omówiono tylko pola ważne dla osoby przygotowującej się do egzaminów CCNA.

Kliknij nagłówek pakietu EIGRP na ilustracji.

Każdy komunikat EIGRP zawiera nagłówek. Dla nas w tym rozdziale istotne znaczenie będą miały pola Kod operacji i Numer systemu autonomicznego. Kod operacji określa jeden z poniższych typów pakietu EIGRP:

Numer systemu autonomicznego (Autonomous System, AS) określa proces routingu EIGRP. Inaczej niż w przypadku protokołu RIP routery Cisco mogą uruchamiać wiele instancji protokołu EIGRP. Numer systemu autonomicznego służy do ich rozróżniania.

Typy pakietów EIGRP są omówione w dalszej części tego rozdziału.

Kliknij TLV: Parametry EIGRP na ilustracji.

Komunikat parametrów EIGRP zawiera wagi używane przez protokół EIGRP w złożonej metryce. Domyślnie ważone są tylko szerokość pasma i opóźnienie. Obie wielkości mają jednakową wagę, dlatego też zarówno pole K1 dla szerokości pasma, jak i pole K3 dla opóźnienia są ustawione na 1. Pozostałe wartości K są ustawione na 0. Obliczenia metryki omówiono w dalszej części rozdziału.

Czas podtrzymania (ang. hold time) to okres przez jaki sąsiad EIGRP odbierający ten komunikat powinien zaczekać, zanim uzna router ogłaszający za wyłączony. Czas podtrzymania dokładniej omówiono w dalszej części tego rozdziału.

Kliknij TLV: Wewnętrzny IP na ilustracji.

Komunikat wewnętrzny IP jest używany do ogłaszania tras EIGRP w obrębie systemu autonomicznego. W naszym wykładzie ważne są następujące pola: metryki (opóźnienie i szerokość pasma), maska podsieci (długość prefiksu) oraz miejsce przeznaczenia.

Opóźnienie oblicza się jako sumę opóźnień od źródła do celu w jednostkach 10 mikrosekund. Szerokość pasma to najmniejsza szerokość pasma skonfigurowana na jednym z interfejsów znajdujących się na trasie.

Maska podsieci jest podawana jako długość prefiksu, czyli liczba bitów sieci w masce podsieci. Na przykład długość prefiksu dla maski podsieci 255.255.255.0 to 24, ponieważ 24 to liczba bitów sieci.

Pole miejsca przeznaczenia zawiera adres sieci docelowej. Mimo że na tym rysunku widzimy tylko 24 bity, zawartość tego pola zależy od części sieciowej 32-bitowego adresu sieciowego. Na przykład sieciowa część adresu 10.1.0.0/16 to 10.1. Dlatego też w polu miejsca przeznaczenia znajduje się 16 pierwszych bitów. Ponieważ minimalna długość tego pola to 24 bity, pozostała część pola jest wypełniana zerami. Jeśli adres sieciowy ma więcej niż 24 bity (na przykład 192.168.1.32/27), pole miejsca przeznaczenia jest poszerzane o kolejne 32 bity (co daje w sumie 56 bitów), a nieużywane miejsca są wypełniane zerami.

Kliknij TLV: Zewnętrzny IP na ilustracji.

Komunikat zewnętrznej trasy IP jest używany, gdy do procesu routingu EIGRP importowane są trasy zewnętrzne. W tym rozdziale importujemy lub redystrybuujemy do EIGRP domyślną trasę statyczną . Zwróćmy uwagę, że w dolnej części TLV typu zewnętrzna trasa IP znajdują się wszystkie pola używane przez TLV typu wewnętrzna trasa IP.

Uwaga: Czasami w literaturze na temat EIGRP można znaleźć nieprawdziwe twierdzenie, że jednostka MTU (Maximum Transmission Unit) to jedna z metryk używanych przez ten protokół. MTU nie jest metryką używaną przez EIGRP. Jednostka MTU jest uwzględniana w aktualizacjach routingu, ale nie służy do ustalania metryki.


9.1.3 Moduły PDM

Strona 1:

Protokół EIGRP umożliwia routing kilku różnych protokołów, w tym IP, IPX (Internetwork Packet Exchange) i AppleTalk. Za określone zadania routingu każdego protokołu warstwy sieciowej odpowiedzialne są moduły PDM (protocol dependent modules).

Na przykład:

0x01 graphic


9.1.4 Typy pakietów RTP i EIGRP

Strona 1:

Protokół RTP (Reliable Transport Protocol) jest używany przez EIGRP do dostarczania i odbierania pakietów EIGRP. EIGRP zaprojektowano jako protokół routingu niezależny od warstwy sieci. Nie może korzystać z usług UDP i TCP, ponieważ IPX i AppleTalk nie używają protokołów z zestawu TCP/IP. Na ilustracji przedstawiono schemat działania protokołu RTP.

Mimo że niezawodny (ang. reliable) jest częścią nazwy protokołu RTP, pozwala on zarówno na niezawodne, jak i zawodne (bez potwierdzenia odbioru) dostarczanie pakietów EIGRP, podobnie jak - odpowiednio - TCP i UDP. Niezawodny RTP wymaga, aby odbiorca wysłał do nadawcy potwierdzenie. Zawodny pakiet RTP nie wymaga potwierdzenia.

RTP może wysyłać pakiety jako komunikaty jednostkowe (unicast) albo grupowe (multicast). Grupowe pakiety EIGRP są wysyłane na zarezerwowany adres grupowy 224.0.0.10.

0x01 graphic


Strona 2:

Typy pakietów EIGRP

EIGRP używa pięciu typów pakietów, niektóre z nich występują parami.

Kliknij Hello na ilustracji.

Pakiety hello są używane przez EIGRP do wykrywania sąsiadów i do tworzenia z nimi przyległości. Pakiety hello EIGRP są wysyłane jako zawodne komunikaty grupowe, więc odpowiedź od odbiorcy nie jest wymagana. Pakiety hello EIGRP omówiono w następnym podrozdziale.

Kliknij Aktualizacja i ACK na ilustracji.

Pakiety aktualizacji są używane przez protokół EIGRP do ogłaszania informacji o trasach. W przeciwieństwie do protokołu RIP protokół EIGRP nie wysyła aktualizacji okresowych. Pakiety aktualizacji są wysyłane tylko wtedy, gdy jest to konieczne. Aktualizacje EIGRP zawierają tylko potrzebne informacje o trasach (wystąpiła zmiana) i są wysyłane tylko do tych routerów, które ich potrzebują. Pakiety aktualizacji EIGRP są wysyłane niezawodnie. Są wysyłane jako komunikaty grupowe, kiedy wymagane są przez wiele routerów, albo jako komunikaty jednostkowe, kiedy potrzebne są tylko jednemu routerowi. Ponieważ na ilustracji widzimy łącza punkt-punkt, aktualizacje są wysyłane jako komunikaty jednostkowe.

Pakiety potwierdzenia (ACK) są wysyłane przez EIGRP, kiedy używane jest dostarczanie niezawodne. RTP niezawodnie dostarcza pakiety aktualizacji, zapytań i odpowiedzi EIGRP. Pakiety potwierdzenia EIGRP zawierają niezerowy numer potwierdzenia i zawsze są przesyłane transmisją pojedynczą.

Na ilustracji, router R2 utracił łączność z siecią lokalną podłączoną do swojego interfejsu Fast Ethernet. R2 natychmiast wysyła wyzwalaną aktualizację do routerów R1 i R3, aby poinformować je o nieczynnej trasie. R1 i R3 odpowiadają, wysyłając potwierdzenie.

Kliknij Zapytanie i Odpowiedź na ilustracji.

Pakiety zapytania i odpowiedzi są używane przez algorytm DUAL podczas przeszukiwania sieci oraz innych zadań. Zapytania i odpowiedzi są dostarczane niezawodnie. Zapytania mogą używać komunikatów grupowych lub jednostkowych, natomiast odpowiedzi zawsze są wysyłane jako komunikaty jednostkowe. Algorytm DUAL opisano w jednym z kolejnych podrozdziałów. Pakiety zapytania i odpowiedzi bardziej szczegółowo omówiono na kursie CCNP.

Na ilustracji router R2 utracił łączność z siecią LAN i wysyła zapytania do wszystkich sąsiadów EIGRP, szukając każdej możliwej trasy do tej sieci LAN. Ponieważ zapytania są dostarczane niezawodnie, odbierający router musi zwrócić potwierdzenie EIGRP (aby uprościć ten przykład, na ilustracji pominięto potwierdzenia).

Wszyscy sąsiedzi muszą wysłać odpowiedź niezależnie od tego, czy znają trasę do nieczynnej sieci. Ponieważ odpowiedzi również są dostarczane niezawodnie, routery takie jak R2 muszą wysłać potwierdzenie.

Uwaga: Można zadać pytanie, dlaczego R2 wysyła zapytanie o sieć, o której wie, że jest wyłączona. Tak naprawdę tylko interfejs połączony z tą siecią jest wyłączony. Inny router może być połączony z tą samą siecią LAN. Dlatego też router R2 odpytuje o istnienie takiego routera, zanim usunie sieć ze swojej bazy danych.

0x01 graphic

0x01 graphic

0x01 graphic

9.1.5 Protokół hello

Strona 1:

Zanim stanie się możliwa wymiana jakichkolwiek pakietów EIGRP pomiędzy routerami, EIGRP musi wykryć swoich sąsiadów. Sąsiedzi EIGRP to inne routery używające protokołu EIGRP we współdzielonych, bezpośrednio dołączonych sieciach.

Routery EIGRP wykrywają sąsiadów i tworzą przyległości z sąsiednimi routerami za pomocą pakietów hello. W większości sieci pakiety hello EIGRP są wysyłane co pięć sekund. W sieciach NBMA, takich jak interfejsy X.25, Frame Relay i ATM z łączami dostępowymi o szybkości T1 (1544 Mb/s) lub mniejszej, pakiety hello są wysyłane jako komunikaty jednostkowe co 60 sekund. Router EIGRP zakłada, że dopóki odbiera pakiety hello od sąsiada, sąsiad ten i jego trasy nadają się do wykorzystania.

Czas podtrzymania podaje routerowi maksymalny okres, przez jaki router powinien czekać na odbiór następnego pakietu hello, zanim uzna swojego sąsiada za nieosiągalnego. Domyślnie czas podtrzymania to trzykrotna wielokrotność interwału hello, czyli 15 sekund w większości sieci i 180 sekund w wolnych sieciach NBMA. Jeśli czas podtrzymania się skończy, EIGRP deklaruje, że trasa jest nieczynna, a DUAL szuka nowej drogi w tablicy topologii albo rozsyłając zapytania.


9.1.6 Ograniczone aktualizacje EIGRP

Strona 1:

Kiedy mówimy o pakietach aktualizacji EIGRP, pojawiają się terminy częściowe (ang. partial) i ograniczone (ang. bounded). W przeciwieństwie do protokołu RIP EIGRP nie wysyła aktualizacji w regularnych odstępach czasu. EIGRP wysyła aktualizacje tylko wtedy, gdy zmieni się metryka dla trasy.

Określenie częściowa oznacza, że aktualizacja zawiera jedynie informacje o zmianach w trasie. EIGRP wysyła te przyrostowe aktualizacje, kiedy zmieni się stan miejsca przeznaczenia - nie wysyła całej zawartości tablicy routingu.

Określenie ograniczona odnosi się do propagacji aktualizacji częściowych tylko do tych routerów, dla których zmiana ta ma znaczenie. Aktualizacja częściowa jest automatycznie „ograniczana”, aby zaktualizowane zostały tylko te routery, które potrzebują tych informacji.

Wysyłając tylko potrzebne informacje tylko tym routerom, którym są one potrzebne, EIGRP minimalizuje wymaganą do wysyłania pakietów EIGRP szerokość pasma.


9.1.7 Algorytm DUAL: wprowadzenie

Strona 1:

DUAL (Diffusing Update Algorithm, rozmyty algorytm aktualizacji) to algorytm zbieżności używany przez EIGRP zamiast algorytmów Bellmana-Forda i Forda-Fulkersona wykorzystywanych przez inne protokoły routingu wektora odległości, na przykład RIP. DUAL jest owocem badań przeprowadzonych w SRI International z wykorzystaniem obliczeń, które jako pierwsi zaproponowali E.W. Dijkstra i C.S. Scholten. Najważniejsze prace nad algorytmem DUAL wykonał J.J. Garcia-Luna-Aceves.

Pętle routingu, nawet tylko tymczasowe, mogą mieć bardzo niekorzystny wpływ na wydajność sieci. Protokoły routingu wektora odległości takie jak RIP zapobiegają tworzeniu się pętli routingu za pomocą zegarów podtrzymania i podzielonego horyzontu. Mimo że EIGRP wykorzystuje obie techniki, robi to w nieco inny sposób: główną metodą radzenia sobie protokołu EIGRP z pętlami routingu jest algorytm DUAL.

Kliknij Odtwórz, aby zobaczyć podstawy funkcjonowania algorytmu DUAL.

Algorytm DUAL oblicza trasy w taki sposób, aby w każdej chwili sieć była wolna od pętli. Pozwala to wszystkim routerom wykrywającym zmianę w topologii wykonać synchronizację. Routery, na które zmiana w topologii nie ma wpływu, nie są angażowane w ponowne obliczenia. Dzięki tej metodzie EIGRP uzyskuje krótsze czasy zbieżności niż inne protokoły routingu wektora odległości.

Proces decyzyjny dla wszystkich obliczeń tras jest wykonywany przez DUAL Finite State Machine. Ogólnie rzecz ujmując, maszyna FSM to model zachowań złożony ze skończonej liczby stanów, przejść pomiędzy tymi stanami i zdarzeń lub działań, które powodują przejścia.

DUAL FSM śledzi wszystkie trasy, używa metryki do wybierania efektywnych, wolnych od pętli dróg i umieszcza w tablicy routingu trasy o najniższym koszcie. Maszyna DUAL FSM jest szczegółowo omówiona w dalszej części tego rozdziału.

Ponieważ przeliczenia DUAL mogą być dużym obciążeniem dla procesora, warto ich unikać, kiedy to tylko możliwe. Dlatego też DUAL ma listę tras zapasowych, które również są wolne od pętli. Jeśli podstawowa trasa w tablicy routingu zawiedzie, w tablicy routingu natychmiast umieszczana jest najlepsza trasa zapasowa.


9.1.8 Odległość administracyjna

Strona 1:

Jak wiemy z rozdziału 3 „Wprowadzenie do protokołów routingu dynamicznego”, odległość administracyjna to wiarygodność (czyli priorytet) źródła trasy. Domyślna odległość administracyjna protokołu EIGRP wynosi 90 dla tras wewnętrznych i 170 dla tras zaimportowanych z zewnętrznego źródła, takich jak trasy domyślne. W porównaniu z innymi protokołami routingu wewnętrznego (IGP) EIGRP jest najbardziej lubiany przez system Cisco IOS, ponieważ ma najniższą odległość administracyjną.

W tabeli widzimy, że EIGRP ma jeszcze trzecią wartość odległości administracyjnej - 5, dla tras zsumaryzowanych. W dalszej części rozdziału nauczymy się konfigurować zsumaryzowane trasy EIGRP.

0x01 graphic


9.1.9 Uwierzytelnianie

Strona 1:

Podobnie jak w przypadku innych protokołów routingu, dla protokołu EIGRP można skonfigurować uwierzytelnianie. Uwierzytelnianie informacji o trasach można skonfigurować dla protokołów RIPv2, EIGRP, OSPF, IS-IS oraz BGP.

Uwierzytelnianie przesyłanej informacji o trasach warto praktykować. Dzięki temu możemy mieć pewność, że routery odbierają informacje o trasach tylko od tych routerów, na których skonfigurowano to samo hasło i informacje uwierzytelniające.

Uwaga: Uwierzytelnianie nie szyfruje tablicy routingu routera.

Jak wyjaśniono w poprzednich rozdziałach, konfiguracja uwierzytelniania protokołów routingu jest omawiana na innym kursie.

9.2 Podstawowa konfiguracja protokołu EIGRP

9.2.1 Topologia sieci EIGRP

Strona 1:

Na ilustracji widzimy topologię z poprzednich rozdziałów po dodaniu routera ISP. Zwróćmy uwagę, że zarówno router R1, jak i router R2 mają podsieci będące częścią klasowej sieci 172.16.0.0/16 - jest to adres klasy B. Fakt, że 172.16.0.0 to adres klasy B, jest ważny tylko dlatego, że EIGRP automatycznie sumaryzuje na granicach klas, podobnie jak RIP.

Kliknij R1, R2 i R3, aby zobaczyć konfigurację startową każdego routera.

Zwróćmy uwagę, że w konfiguracjach router ISP fizycznie nie istnieje. Połączenie pomiędzy routerami R2 i ISP jest reprezentowane przez interfejs pętli zwrotnej na routerze R2. Dzięki użyciu interfejsu pętli zwrotnej do symulacji połączenia z ISP w tym scenariuszu wystarczyło skonfigurować tylko trzy routery. Z rozdziału 7 „RIPv2” wiemy, że interfejsu pętli zwrotnej można użyć do symulacji interfejsu, który nie ma rzeczywistego połączenia z fizycznym łączem w sieci. Adres pętli zwrotnej (ang. loopback address) można sprawdzić za pomocą polecenia ping dołączonego do aktualizacji routingu.

Uwaga: Interfejsy pętli zwrotnej mają również specyficzne zastosowania w pewnych protokołach routingu, o czym przekonamy się w rozdziale 11 „Protokół OSPF”.

0x01 graphic


9.2.2 Systemy autonomiczne i identyfikatory procesów

Strona 1:

System autonomiczny

System autonomiczny (ang. autonomous system) to zbiór sieci pod administracyjną kontrolą jednego podmiotu z perspektywy Internetu postrzeganej jako wspólna polityka routingu. Na rysunku firmy A, B, C i D znajdują się pod kontrolą dostawcy ISP1. Router ISP1, ogłaszając trasy routerowi ISP2, przedstawia "wspólną politykę routingu" tych firm.

Wskazówki odnośnie do tworzenia, wyboru i rejestracji systemu autonomicznego zostały przedstawione w dokumencie RFC 1930. Numery systemów autonomicznych są przyznawane przez urząd IANA (Internet Assigned Numbers Authority) - jest to ten sam urząd, który zajmuje się rozdzielaniem przestrzeni adresowej IP. O urzędzie IANA oraz RIR (Regional Internet Registries) dowiedziałeś się już we wcześniejszym kursie. Lokalny RIR jest odpowiedzialny za przydzielenie podmiotowi numeru z bloku otrzymanych numerów systemów autonomicznych. Przed rokiem 2007 numery systemów autonomicznych były 16-bitowe i mieściły się w przedziale od 0 do 65 535. Teraz przypisywane są 32-bitowe numery systemów autonomicznych, przez co liczba dostępnych numerów systemów autonomicznych wzrosła do ponad czterech miliardów.

Komu potrzebny jest numer systemu autonomicznego? Z reguły są to dostawcy Internetu (ISP), operatorzy szkieletu Internetu oraz duże instytucje łączące się z innymi stronami, które również mają numer systemu autonomicznego. Dostawcy ISP i duże instytucje używają protokołu routingu zewnętrznego BGP do rozsyłania informacji o trasach. BGP jest jedynym protokołem routingu, do którego konfiguracji potrzebny jest numer systemu autonomicznego.

Zdecydowana większość firm i instytucji z sieciami IP nie potrzebuje numeru systemu autonomicznego, ponieważ znajdują się pod kontrolą większego podmiotu, na przykład dostawcy ISP. Firmy te do przesyłania pakietów w obrębie własnych sieci używają protokołów routingu wewnętrznego, na przykład RIP, EIGRP, OSPF i IS-IS. Każda z nich jest jedną z wielu niezależnych i osobnych sieci w granicach systemu autonomicznego należącego do ISP. ISP jest odpowiedzialny za przesyłanie pakietów w obrębie swojego systemu autonomicznego i pomiędzy dwoma innymi systemami autonomicznymi.

0x01 graphic


Strona 2:

Identyfikator procesu

Zarówno EIGRP, jak i OSPF używają identyfikatora procesu do oznaczania instancji własnego protokołu routingu uruchomionego na routerze:

Router(config)#router eigrp system-autonomiczny

Mimo że protokół EIGRP nazywa ten parametr numerem „systemu autonomicznego”, w rzeczywistości funkcjonuje on jako identyfikator procesu. Numer ten nie jest związany z numerem systemu autonomicznego, o którym mowa wyżej, i może mieć dowolną 16-bitową wartość.

Router(config)#router eigrp 1

W tym przykładzie, numer 1 identyfikuje konkretny proces EIGRP działający na tym routerze. Aby utworzyć przyległości z sąsiadami, EIGRP wymaga, aby na wszystkich routerach w jednej domenie routingu zostały skonfigurowane te same identyfikatory procesu. Z reguły na routerze konfiguruje się tylko jeden identyfikator procesu dla każdego protokołu routingu.

Uwaga: Protokół RIP nie używa identyfikatorów procesu. Dlatego też dozwolona jest tylko jedna instancja procesu RIP. Zarówno EIGRP, jak i OSPF mogą obsługiwać wiele instancji każdego protokołu routingu, mimo że tego typu implementacja nie jest z reguły ani potrzebna, ani wymagana.

0x01 graphic


9.2.3 Polecenie router eigrp

Strona 1:

Wydawane w trybie konfiguracji globalnej polecenie router eigrp system autonomiczny włącza protokół EIGRP. Parametr „system autonomiczny, to liczba z przedziału od 1 do 65 535 wybrana przez administratora sieci. Wybrana liczba jest numerem identyfikatora procesu, a jest ważna dlatego, że wszystkie routery w danej domenie routingu EIGRP muszą używać tego samego numeru identyfikatora procesu (numeru systemu autonomicznego).

Kliknij Komunikaty routera na ilustracji.

Jak widzimy na topologii, na każdym z trzech routerów włączono protokół EIGRP z identyfikatorem procesu 1.

0x01 graphic


9.2.4 Polecenie network

Strona 1:

Polecenie network dla protokołu EIGRP pełni tę samą funkcję co dla innych protokołów IGP.

Kliknij Komunikaty routera na ilustracji.

Polecenie network należy wydawać w trybie konfiguracji routera.

Router(config-router)#network adres-sieciowy

Parametr adres-sieciowy to klasowy adres sieciowy tego interfejsu. Ilustracja pokazuje polecenia network, skonfigurowane dla R1 oraz R2. R3 będzie skonfigurowany na następnej stronie. Na ilustracji, pojedyncza klasowa sieć została użyta na routerze R1, aby objąć podsieci 172.16.1.0/24 i 172.16.3.0/30:

R1(config-router)# network 172.16.0.0

Kiedy konfigurujemy protokół EIGRP na routerze R2, algorytm DUAL wysyła na konsolę powiadomienie o tym, że została utworzona relacja sąsiedzka z innym routerem EIGRP. Ta nowa przyległość (ang. adjacency) powstaje automatycznie, ponieważ zarówno R1, jak i R2 używają tego samego procesu routingu EIGRP 1 i oba routery wysyłają teraz aktualizacje z siecią 172.16.0.0.

R2(config-router)#network 172.16.0.0
%DUAL-5-NBRCHANGE: IP-EIGRP 1: Neighbor 172.16.3.1 (Serial0/0) is up: new adjacency


Strona 2:

Polecenie network z maską blankietową

Domyślnie, kiedy w poleceniu network podawany jest klasowy adres sieciowy typu 172.16.0.0, na wszystkich interfejsach routera, które należą do tego klasowego adresu sieciowego, włączany jest protokół EIGRP. Jednak czasami może się zdarzyć, że administrator, włączając EIGRP, nie chce uwzględniać wszystkich interfejsów w sieci. Aby protokół EIGRP ogłaszał tylko wybrane podsieci, wydajemy polecenie network z opcją maska-blankietowa:

Router(config-router)#network adres-sieciowy [maska-blankietowa]

Maskę blankietową (ang. wildcard mask) można potraktować jak odwrotność maski podsieci. Odwrotnością maski podsieci 255.255.255.252 jest 0.0.0.3. Aby obliczyć tę odwrotność, należy odjąć maskę podsieci od 255.255.255.255:

255.255.255.255
- 255.255.255.252
Odejmujemy maskę podsieci
---------------
0. 0. 0. 3
Maska blankietowa

Kliknij Komunikaty routera na ilustracji.

Na routerze R2 skonfigurowano podsieć 192.168.10.8 i maskę blankietową 0.0.0.3.

R2(config-router)#network 192.168.10.8 0.0.0.3

Niektóre wersje systemu Cisco IOS pozwalają również wpisać po prostu maskę podsieci. Można na przykład wpisać:

R2(config-router)#network 192.168.10.8 255.255.255.252

System Cisco IOS następnie przekształca polecenie na format maski domyślnej, co można sprawdzić, wydając polecenie show run:

R2#show run
<część wyniku pominięto>
!
router eigrp 1
network 172.16.0.0
network 192.168.10.8 0.0.0.3
auto-summary
!

Ilustracja pokazuje konfigurację routera R3. Zaraz po skonfigurowaniu klasowej sieci 192.168.10.0 router R3 tworzy przyległości z routerami R1 i R2.


9.2.5 Sprawdzanie działania protokołu EIGRP

Strona 1:

Zanim protokół EIGRP będzie mógł wysyłać lub odbierać jakiekolwiek aktualizacje, routery muszą ustanowić przyległości ze swoimi sąsiadami. Routery EIGRP tworzą przyległości z sąsiednimi routerami, wymieniając się pakietami hello EIGRP.

Aby zobaczyć tablicę sąsiadów i sprawdzić, czy router EIGRP utworzył przyległość z sąsiadami, wydajemy polecenie show ip eigrp neighbors. Dla każdego routera powinniśmy zobaczyć adres IP routera przyległego i interfejs używany przez ten router do komunikacji z sąsiadem EIGRP. Na rysunku możemy zweryfikować, że wszystkie trzy routery ustanowiły wymagane przyległości. Każdy router posiada dwóch sąsiadów wypisanych w tablicy routingu.

W wynikach polecenia show ip eigrp neighbors widzimy następujące informacje:

Polecenie show ip eigrp neighbors jest bardzo przydatne do sprawdzania i diagnozowania EIGRP. Jeśli po ustanowieniu przyległości z sąsiadami routera jakiś router nie zostanie wyświetlony, należy sprawdzić, czy interfejs został aktywowany, wydając polecenie show ip interface brief. Jeśli interfejs jest aktywny, należy wysłać polecenie ping na adres IP sąsiada. Jeśli ping zakończy się niepowodzeniem, oznacza to, że interfejs sąsiada jest wyłączony i trzeba go aktywować. Jeśli ping daje odpowiedź, ale EIGRP nadal nie widzi routera jako sąsiada, sprawdzamy poniższe konfiguracje:

0x01 graphic


Strona 2:

Tak jak w przypadku protokołu RIP, możemy wydać polecenie show ip protocols, aby sprawdzić, czy protokół EIGRP jest włączony. Polecenie show ip protocols wyświetla dane różnego typu zależnie od danego protokołu routingu. Przeanalizujemy niektóre z nich w dalszych podrozdziałach.

Kliknij Komunikaty routera na ilustracji.

Zwróćmy uwagę, że w wyniku polecenia widzimy identyfikator procesu używany przez EIGRP:

Routing Protocol is "eigrp 1"

Pamiętajmy, że identyfikator procesu musi być taki sam na wszystkich routerach, aby protokół EIGRP mógł ustalić przyległych sąsiadów i udostępniać informacje o trasach.

Wyświetlane są również wewnętrzne i zewnętrzne odległości administracyjne EIGRP:

Distance: internal 90 external 170


9.2.6 Badanie tablicy routingu

Strona 1:

Innym sposobem, aby sprawdzić, czy protokół EIGRP i inne funkcje routera są prawidłowo skonfigurowane, jest zbadanie tablic routingu za pomocą polecenia show ip route.

Kliknij R1, R2 i R3 na ilustracji.

Domyślnie protokół EIGRP automatycznie sumaryzuje trasy na granicach sieci głównych. Aby wyłączyć autosumaryzację, wydajemy polecenie no auto-summary, dokładnie tak jak w przypadku protokołu RIPv2. Zostanie to zbadane dokładniej w dalszym podrozdziale.

Zwróćmy uwagę, że trasy EIGRP są wyróżniane w tablicy routingu literą D (od akronimu DUAL).

Pamiętajmy: ponieważ EIGRP to bezklasowy protokół routingu (w aktualizacjach routingu uwzględniana jest maska podsieci), obsługuje maski podsieci o zmiennej długości (VLSM) i bezklasowy routingu między domenami (CIDR). W tablicy routingu routera R1 widzimy, że nadrzędna sieć 172.16.0.0/16 jest podzielona na różne podsieci, a trzy trasy podrzędne mają maski /24 lub /30.


Strona 2:

Wprowadzenie trasy zsumaryzowanej Null0

Na ilustracji widzimy tablicę routingu routera R2 z dwoma podświetlonymi wpisami. Należy zwrócić uwagę, że protokół EIGRP automatycznie dołączył trasę zsumaryzowaną Null0 dla klasowych sieci 192.168.10.0/24 i 172.16.0.0/16.

Jak wiemy z rozdziału 7, Null0 nie jest prawdziwym interfejsem. Zwróćmy uwagę, że trasy zsumaryzowane mają swoje źródło w Null0. Powodem jest to, że trasy te są używane do ogłaszania. Trasy 192.168.10.0/24 i 172.16.0.0/16 w rzeczywistości nie są drogami pozwalającymi dotrzeć do sieci nadrzędnych. Jeśli pakiet nie pasuje do jednej z tras podrzędnych 2. poziomu, jest wysyłany do interfejsu Null0. Innymi słowy, jeśli pakiet pasuje do trasy nadrzędnej 1. poziomu (klasowego adresu sieciowego), ale nie pasuje do żadnej podsieci, jest odrzucany.

Uwaga: EIGRP automatycznie tworzy zsumaryzowaną trasę Null0 jako trasę nadrzędną, kiedy spełnione zostają dwa poniższe warunki:

Jak się przekonamy, po wyłączeniu autosumaryzacji trasa zsumaryzowana Null0 zostaje usunięta.


Strona 3:

Tablica routingu routera R3

W tablicy routingu routera R3 na listingu widzimy, że zarówno R1, jak i R2 automatycznie sumaryzują sieć 172.16.0.0/16 i wysyłają ją jako pojedynczą aktualizację routingu. R1 i R2 nie propagują poszczególnych podsieci z uwagi na autosumaryzację. Autosumaryzacja zostanie wyłączone później. Ponieważ router R3 otrzymuje od routerów R1 i R2 dwie równorzędne trasy do sieci 172.16.0.0/16, w tablicy routingu umieszcza obie.

9.3 Obliczanie metryki EIGRP

9.3.1 Złożona metryka EIGRP i wartości K

Strona 1:

Do obliczania preferowanej drogi do sieci, protokół EIGRP w swojej złożonej metryce używa następujących wartości:

Uwaga: Jak już wspomniano w tym rozdziale, mimo że w aktualizacjach tablicy routingu znajduje się jednostka MTU, nie jest to metryka routingu używana przez EIGRP i IGRP. Domyślnie do obliczania metryki używane są tylko szerokość pasma i opóźnienie. Cisco odradza używanie niezawodności i obciążenia, o ile administrator nie potrafi tego przekonująco uzasadnić.

Złożona metryka

Na rysunku widzimy wzór na złożoną metrykę używany przez EIGRP. Wzór ten składa się z wartości od K1 do K5, zwanych wagami metryki EIGRP. Domyślnie K1 i K3 są ustawione na 1, a K2, K4 i K5 na 0. W efekcie przy obliczeniach domyślnej złożonej metryki uwzględniane są tylko wartości szerokości pasma i opóźnienia.

Domyślne wartości K można zmieniać, wydając w trybie konfiguracji routera następujące polecenie:

Router(config-router)#metric weights tos k1 k2 k3 k4 k5

Uwaga: Modyfikacja wag metryki wykracza poza program tego kursu, ale z uwagi na swoje znaczenie została omówiona w dalszej części rozdziału. Wartość tos (type of service) to pozostałość z IGRP, której nigdy nie zaimplementowano. Wartość tos to zawsze 0.

0x01 graphic


Strona 2:

Sprawdzanie wartości K

Do sprawdzania wartości K używamy polecenia show ip protocols. Wynik polecenia dla routera R1 jest pokazany na ilustracji. Należy zwrócić uwagę, że wartości K na routerze R1 mają wartości domyślne. Powtarzamy, że zmiana tych wartości na inne od domyślnych nie jest zalecana, o ile administrator sieci nie ma naprawdę ważnego powodu, aby tak właśnie postąpić.


9.3.2 Metryki EIGRP

Strona 1:

Badanie wartości metryki

Domyślne wartości K są nam już znane. Wydając polecenie show interface, możemy sprawdzić faktyczne wartości szerokości pasma, opóźnienia, niezawodności i obciążenia wykorzystywane w obliczeniach metryki routingu.

Kliknij Komunikaty routera na ilustracji.

Wynik polecenia na ilustracji pokazuje wartości użyte w złożonej metryce dla interfejsu Serial 0/0/0 routera R1.

MTU 1500 bytes, BW 1544 Kbit, DLY 20000 usec,
reliability 255/255, txload 1/255, rxload 1/255

Szerokość pasma

Szerokość pasma (1544 kb/s) to wartość statyczna używana przez niektóre protokoły routingu, na przykład EIGRP i OSPF, do obliczania metryki routingu. Szerokość pasma jest wyświetlana w kilobitach na sekundę (kb/s). Większość interfejsów szeregowych używa domyślnej szerokości pasma, czyli 1544 kb/s (inaczej b/s lub 1,544 Mb/s). Jest to szerokość pasma połączenia T1. Niemniej niektóre interfejsy szeregowe mają inną domyślną szerokość pasma. Szerokość pasma należy zawsze sprawdzać za pomocą polecenia show interface.

Wartość szerokości pasma może, ale nie musi odzwierciedlać rzeczywistej fizycznej szerokości pasma interfejsu. Modyfikacja tej wartości nie zmienia faktycznej szerokości pasma łącza. Jeśli rzeczywista szerokość pasma łącza różni się od domyślnej wartości szerokości pasma, należy zmienić tę drugą, co wyjaśniono w dalszej części rozdziału.


Strona 2:

Opóźnienie

Opóźnienie (ang. delay) to czas, w jakim pakiet pokonuje trasę. Metryka opóźnienia (DLY) to wartość statyczna wynikająca z typu łącza, z którym połączony jest interfejs, a wyrażamy ją w mikrosekundach. Opóźnienie nie jest mierzone dynamicznie. Innymi słowy, router tak naprawdę nie sprawdza, ile czasu zajmuje pakietowi dotarcie do celu. Wartość opóźnienia, podobnie jak wartość szerokości pasma, to wartość domyślna, którą może zmienić administrator sieci.

MTU 1500 bytes, BW 1544 Kbit, DLY 20000 usec,
reliability 255/255, txload 1/255, rxload 1/255

W tabeli zebrano domyślne wartości opóźnienia dla różnych interfejsów: Zwróćmy uwagę, że dla interfejsów szeregowych wartość domyślna wynosi 20 000 mikrosekund, a dla interfejsów Fast Ethernet 100 mikrosekund.

0x01 graphic

Strona 3:

Niezawodność

Niezawodność (ang. reliability) to wskaźnik prawdopodobieństwa, że łącze ulegnie awarii, albo wskaźnik częstotliwości występowania błędów na tym łączu. W przeciwieństwie do opóźnienia niezawodność jest mierzona dynamicznie za pomocą wartości z przedziału od 0 do 255, przy czym 1 to łącze niezawodne minimalnie, a 255 to łącze niezawodne stuprocentowo. Niezawodność jest obliczana na podstawowej pięciominutowej średniej ważonej, aby uniknąć błędów wynikających z niemiarodajnych, krótkich spadków lub wzrostów współczynnika błędów.

Niezawodność wyrażamy jako ułamek 255. Im wyższa wartość, tym bardziej niezawodne łącze. Tym samym 255/255 oznacza niezawodność stuprocentową, natomiast 234/255 niezawodność rzędu 91,8%.

Przypominamy, że domyślnie EIGRP w obliczeniach metryki nie używa niezawodności.

Obciążenie

Obciążenie (ang. load) odzwierciedla ilość ruchu na łączu. Podobnie jak niezawodność, obciążenie jest wyznaczane dynamicznie za pomocą wartości z przedziału od 0 do 255. Tak jak niezawodność, obciążenie zapisujemy jako ułamek 255. Jednak w tym wypadku pożądana jest wartość jak najmniejsza, oznaczająca mniejsze obciążenie łącza. Tym samym 1/255 oznacza łącze obciążone minimalnie. 40/255 to łącze zajęte w 16%, a 255/255 to łącze nasycone w 100%.

Obciążenie jest wyświetlane zarówno jako wartość wychodząca - transmisji (txload), oraz jako wartość wchodząca - odbioru (rxload). Wartość ta jest obliczana na podstawie pięciominutowej średniej ważonej, aby uniknąć błędów wynikających z niemiarodajnych, krótkich spadków lub wzrostów wykorzystania kanału.

Przypominamy, że domyślnie EIGRP w obliczeniach metryki nie używa obciążenia.

0x01 graphic


9.3.3 Polecenie bandwidth

Strona 1:

Większość łączy szeregowych ma domyślną wartość szerokości pasma 1544 kb/s. Ponieważ zarówno EIGRP, jak i OSPF używają szerokości pasma przy domyślnym obliczaniu metryki, prawidłowa wartość szerokości pasma jest bardzo ważna, aby uzyskać precyzyjną informację o trasach. Ale co zrobić, kiedy rzeczywista szerokość pasma łącza nie zgadza się z domyślną szerokością pasma interfejsu?

Kliknij Konfiguracja szerokości pasma na ilustracji.

Aby zmodyfikować metrykę szerokości pasma, w trybie konfiguracji interfejsu wydajemy polecenie bandwidth:

Router(config-if)#bandwidth kilobity

Aby przywrócić domyślną wartość, wydajemy polecenie no bandwidth.

W topologii przedstawionej na rysunku łącze pomiędzy routerami R1 i R2 miało szerokość pasma 64 kb/s, a łącze pomiędzy routerami R2 i R3 szerokość pasma 1024 kb/s. Na ilustracji widzimy konfiguracje używane na trzech routerach, aby zmodyfikować szerokość pasma na odpowiednich interfejsach szeregowych.

Kliknij Sprawdzanie przepustowości na ilustracji.

Aby sprawdzić zmianę, wydajemy polecenie show interface. Aby zapewnić prawidłowy routing w obie strony, należy zmodyfikować metrykę szerokości pasma po obu stronach łącza.

Uwaga: Osoby, które dopiero zaczynają poznawać działanie sieci komputerowych i systemu Cisco IOS, często błędnie zakładają, że polecenie bandwidth zmienia fizyczną szerokość pasma łącza. Polecenie bandwidth modyfikuje tylko metrykę szerokości pasma używaną przez protokoły takie jak EIGRP i OSPF. Czasami administrator sieci zmienia wartość szerokości pasma, aby mieć większą kontrolę nad wybranym interfejsem wyjściowym.


9.3.4 Obliczanie metryki EIGRP

Strona 1:

Na rysunku przedstawiono złożoną metrykę używaną przez protokół EIGRP. Używając domyślnych wartości K1 i K3, możemy uprościć to obliczenie do najmniejszej (czyli

najwolniejszej) szerokości pasma oraz łącznej sumy wszystkich opóźnień.

Innymi słowy, na podstawie wartości szerokości pasma i opóźnienia dla wszystkich interfejsów wyjściowych na trasie można ustalić metrykę EIGRP. Ustalamy łącze z najmniejszą szerokością pasma. Ta szerokość pasma jest używana we wzorze we fragmencie (10 000 000/szerokość pasma kb/s) * 256. Ustalamy wartość opóźnienia dla każdego interfejsu wyjściowego na drodze do celu. Sumujemy wartości opóźnień i wynik dzielimy przez 10 (suma opóźnień/10), a następnie mnożymy razy 256 (* 256). Aby uzyskać metrykę EIGRP, dodajemy wartości szerokości pasma i sumy opóźnień.

W tablicy routingu routera R2 widzimy, że trasa do 192.168.1.0/24 ma metrykę EIGRP o wartości 3 014 400. Zobaczmy, jak protokół EIGRP naprawdę obliczył tę wartość.

0x01 graphic


Strona 2:

Szerokość pasma

Kliknij Przeliczanie szerokości pasma na ilustracji.

Ponieważ EIGRP przy obliczaniu metryki bierze pod uwagę najmniejszą szerokość pasma, aby ją odnaleźć, należy sprawdzić każdy interfejs pomiędzy routerem R2 a docelową siecią 192.168.1.0. Interfejs S0/0/1 routera R2 ma szerokość pasma 1024 kb/s, czyli 1 024 000 b/s. Interfejs Fast Ethernet 0/0 routera R3 ma szerokość pasma 100 000 kb/s, czyli 100 Mb/s. Tym samym najmniejsza szerokość pasma to 1024 kb/s i ta wartość jest używana do obliczania metryki.

EIGRP dzieli wartość referencyjnej szerokości pasma (ang. reference bandwidth) 10 000 000 przez wartość szerokości pasma w kilobitach na sekundę. W ten sposób wyższe wartości szerokości pasma otrzymują niższą metrykę, a niższe szerokości pasma -wyższą.

Wartość 10 000 000 jest dzielona przez 1024. Jeśli wynik nie jest liczbą całkowitą, wartość jest zaokrąglana w dół. W tym przypadku 10 000 000 podzielone przez 1024 równa się 9765,625. Końcówka 0,625 jest odrzucana przed mnożeniem przez 256. Część złożonej metryki wyrażająca szerokość pasma to 2 499 840.

Opóźnienie

Używając tych samych interfejsów wyjściowych, można też ustalić wartość opóźnienia.

Kliknij Przeliczanie opóźnienia na ilustracji.

EIGRP używa łącznej sumy metryk opóźnienia wszystkich interfejsów wyjściowych. Opóźnienie interfejsu S0/0/1 routera R2 to 20 000 mikrosekund. Interfejs Fast Ethernet 0/0 routera R3 ma opóźnienie 100 mikrosekund.

Każda wartość opóźnienia jest dzielona przez 10, a następnie sumowana. 20 000/10 + 100/10 daje wartość 2010. Wynik ten jest następnie mnożony przez 256. Część złożonej metryki wyrażająca opóźnienie to 514 560.

Sumowanie szerokości pasma i opóźnienia

Kliknij Metryka EIGRP na ilustracji.

Aby uzyskać metrykę EIGRP 3 014 400, wystarczy dodać do siebie dwie wartości 2 499 840 i 514 560. Uzyskana wartość zgadza się z wartością widoczną w tablicy routingu routera R2. Jest to rezultat dodania najmniejszej szerokości pasma i sumy opóźnień.

9.4 Algorytm DUAL

9.4.1 Koncepcje DUAL

Strona 1:

Jak wyjaśniono w poprzednim podrozdziale, DUAL (Diffusing Update Algorithm) to algorytm używany przez protokół EIGRP. W tym podrozdziale wyjaśniono, w jaki sposób DUAL wyznacza najlepszą trasę wolną od pętli i wolne od pętli trasy zapasowe.

Podczas omawiania algorytmu DUAL pojawiają się terminy, których znaczenie zostało wyjaśnione na kolejnych stronach.

Te terminy i koncepcje to sedno mechanizmu unikania pętli przez algorytm DUAL. Na kolejnych stronach zostaną dokładnie omówione.

0x01 graphic


9.4.2 Sukcesor i dopuszczalna odległość

Strona 1:

Sukcesor (ang. successor) to sąsiedni router, który jest używany do przesyłania pakietów i stanowi następnik najkorzystniejszej trasie do sieci docelowej. Adres IP sukcesora jest widoczny we wpisie tablicy routingu zaraz po słowie via.

Dopuszczalna odległość (ang. feasible distance, FD) to najniższa obliczona metryka trasy do sieci docelowej. Jest to metryka widoczna we wpisie w tablicy routingu jako druga liczba w nawiasie kwadratowym. Tak jak w przypadku innych protokołach routingu, nazywana jest również metryką trasy.

Kliknij Komunikaty routera na ilustracji.

Badając tablicę routingu routera R2, na ilustracji widzimy, że najlepsza trasa EIGRP do sieci 192.168.1.0/24 wiedzie przez router R3 będący sukcesorem dla trasy. Dopuszczalna odległość wynosi 3 014 400 - taka sama metryka została wyliczona w poprzednim podrozdziale:

D 192.168.1.0/24 [90/3014400] via 192.168.10.10, 00:00:31, Serial0/0/1

W tablicy routingu widzimy również inne sukcesory i dopuszczalne odległości. Spróbujmy odpowiedzieć na poniższe pytania?

Jaki jest adres IP sukcesora dla sieci 172.16.1.0/24?

Odpowiedź: 172.16.3.1, czyli router R1.

Jaka jest dopuszczalna odległość do sieci 172.16.1.0/24?

Odpowiedź: 40 514 560.


9.4.3 Sukcesory dopuszczalne, warunek dopuszczalności i odległość ogłaszana

Strona 1:

Jedną z przyczyn umożliwiających algorytmowi DUAL szybkie osiągnięcie stanu zbieżności po zmianie w topologii jest to, że bez konieczności ponownego przeliczania algorytmu można używać zapasowych tras poprzez inne routery zwane sukcesorami dopuszczalnymi.

Kliknij Warunek dopuszczalności na ilustracji.

Dopuszczalny sukcesor (ang. feasible successor) to sąsiad, który ma wolną od pętli trasę zapasową do tej samej sieci co sukcesor i spełnia warunek dopuszczalności. Czy w powyższej topologii router R2 uzna router R1 za dopuszczalnego sukcesor do sieci 192.168.1.0/24? Aby być dopuszczalnym sukcesorem, router R1 musi spełnić warunek dopuszczalności (ang. feasibility condition). Sprawdźmy co to oznacza.

Kliknij Dopuszczalny sukcesor na ilustracji.

Warunek dopuszczalności zostaje spełniony wtedy, gdy odległość ogłaszaną do sieci przez sąsiada (ang. reported distance) jest mniejsza niż dopuszczalna odległość lokalnego routera do tej samej sieci docelowej. Ta ogłaszana odległość to po prostu dopuszczalna odległość sąsiada EIGRP do tej samej sieci docelowej. Ogłaszana odległość to metryka, którą router ogłasza swojemu sąsiadowi, aby poinformować go o koszcie do danej sieci.

Jeśli router R3 jest sukcesorem, to czy sąsiad R1 może być dopuszczalnym sukcesorem do tej samej sieci 192.168.1.0/24? Innymi słowy, czy jeśli łącze pomiędzy routerami R2 i R3 ulegnie awarii, to czy router R1 może zostać niezwłocznie wykorzystany jako trasa zapasowa bez przeliczania algorytmu DUAL? Router R1 może być dopuszczalnym sukcesorem tylko wtedy, gdy spełni warunek dopuszczalności.

Na ilustracji, R1 ogłasza routerowi R2, że jego dopuszczalna odległość do sieci 192.168.1.0/24 wynosi 2 172 416. Z punktu widzenia routera R2 2 172 416 to ogłaszana odległość routera R1. Z punktu widzenia routera R1, 2 172 416 to jego własna dopuszczalna odległość.

Kliknij Odległość ogłaszana na ilustracji.

Router R2 sprawdza ogłaszaną przez router R1 odległość 2 172 416. Ponieważ ogłaszana odległość routera R1 jest mniejsza niż własna dopuszczalna odległość routera R2 - 3 014 400, router R1 spełnia warunek dopuszczalności. Router R1 staje się teraz dla routera R2 dopuszczalnym sukcesorem do sieci 192.168.1.0/24.

Dlaczego router R1 nie jest sukcesorem, jeśli jego ogłaszana odległość jest mniejsza od dopuszczalnej odległości routera R2 do sieci 192.168.1.0/24? Z powodu całkowitego kosztu dla routera R2 jego dopuszczalna odległość do sieci 192.168.1.0/24 jest większa przez router R1 niż przez router R3.


9.4.4 Tablica topologii - sukcesor i dopuszczalny sukcesor

Strona 1:

Sukcesor, dopuszczalna odległość oraz wszystkie dopuszczalne sukcesory wraz z ich ogłaszanymi odległościami są przechowywane przez router w tablicy topologii EIGRP czyli bazie danych topologii (ang. topology database). Jak pokazano na ilustracji, aby wyświetlić tablicę topologii, wydajemy polecenie show ip eigrp topology. W tablicy topologii wymienione są wszystkie sukcesory i dopuszczalne sukcesory do sieci docelowej obliczone przez algorytm DUAL.

0x01 graphic


Strona 2:

Kliknij Odtwórz, aby obejrzeć animację.

Szczegółowy opis każdego wpisu tablicy topologii dla sieci docelowej 192.168.1.0/24 jest pokazany niżej.

W pierwszym wierszu widzimy:

Pierwszy wpis dotyczy sukcesora:

W drugim wpisie znajdują się informacje o dopuszczalnym sukcesorze, routerze R1 (jeśli nie ma drugiego wpisu, to nie ma dopuszczalnych sukcesorów).


Strona 3:

Aby zobaczyć szczegółowe informacje o metrykach konkretnego wpisu z tablicy topologii, wydajemy polecenie show ip eigrp topology z opcjonalnym parametrem [sieć].

R2#show ip eigrp topology 192.168.1.0

Jak pamiętamy, EIGRP to protokół routingu wektora odległości. To polecenie wyświetla pełną listę metryk wektora odległości dostępnych dla EIGRP, mimo że domyślnie EIGRP używa tylko szerokości pasma i opóźnienia. Wyświetlane są również inne informacje znajdujące się w aktualizacji routingu, których nie ma w złożonej metryce: minimalna jednostka MTU i licznik skoków.


9.4.5 Tablica topologii - brak sukcesora dopuszczalnego

Strona 1:

Aby kontynuować poznawanie algorytmu DUAL i sukcesorów oraz dopuszczalnych sukcesorów, spójrzmy na tablicę routingu routera R1.

Kliknij Tablicę topologii R1 na ilustracji.

W wyróżnionym wpisie trasy do 192.168.1.0/24 widzimy, że sukcesorem jest router R3 przez sieć 192.168.10.6, a dopuszczalna odległość wynosi 2 172 416.

D 192.168.1.0/24 [90/2172416] via 192.168.10.6, 00:56:13, Serial0/1

Teraz zobaczmy w tablicy topologii, czy istnieją dla tej trasy dopuszczalne sukcesory.

Kliknij Tablicę routingu R1 na ilustracji.

W tablicy topologii widzimy jedynie sukcesor 192.168.10.6. Nie ma dopuszczalnych sukcesorów. Gdy spoglądamy na rzeczywistą topologię fizyczną lub diagram sieciowy, staje

się oczywiste, że istnieje trasa zapasowa do sieci 192.168.1.0/24 przez router R2. Dlaczego router R2 nie został wymieniony jako dopuszczalny sukcesor? Otóż dlatego, że nie

spełnia warunku dopuszczalności.

Mimo że gdy patrzymy na topologię, wydaje nam się oczywiste, iż przez router R2 prowadzi trasa zapasowa, EIGRP nie ma mapy sieciowej topologii. EIGRP to protokół routingu wektora odległości i informacje o zdalnych sieciach otrzymuje jedynie od swoich sąsiadów.

Dlatego też algorytm DUAL nie zapisuje w tablicy topologii trasy przez router R2. Aby sprawdzić, które z istniejących łączy spełniają warunek dopuszczalności, wydajemy polecenie show ip eigrp topology z opcją [all-links].

Kliknij Tablicę topologii R1 [wszystkie łącza] na ilustracji.

Polecenie show ip eigrp topology all-links wyświetla wszystkie możliwe drogi do sieci, w tym sukcesory, dopuszczalne sukcesory, a nawet trasy niebędące ani jednym, ani drugim. Dopuszczalna odległość do sieci 192.168.1.0/24 z routera R1 przez sukcesor R3 to 2 172 416. Aby router R2 został uznany za dopuszczalny sukcesor, musi spełnić warunek dopuszczalności. Dopuszczalna odległość routera R2 do sieci 192.168.1.0/24 musi być mniejsza niż bieżąca dopuszczalna odległość routera R1. Jak widzimy dopuszczalna odległość routera R2 to 3 014 400, a jest to wartość przewyższająca dopuszczalną odległość routera R1, czyli 2 172 416.

Mimo że router R2 wydaje się dobrą trasą zapasową do sieci 192.168.1.0/24, router R1 nie ma pojęcia, że ta trasa to potencjalna pętla. EIGRP to protokół routingu wektora odległości i nie zdaje sobie sprawy, jak wygląda pełna, wolna od pętli topologiczna mapa sieci. Algorytm DUAL gwarantuje, że sąsiad ma trasę wolną od pętli, jeśli metryka sąsiada spełnia warunek dopuszczalności. Mając pewność, że ogłaszana odległość sąsiada jest mniejsza od własnej dopuszczalnej odległości, router może założyć, że ten sąsiad nie jest częścią jego ogłaszanej trasy, a tym samym unika powstania ewentualnej pętli.

Czy to oznacza, że nie można użyć routera R2, kiedy sukcesor ulegnie awarii? Nie, router R2 może zostać użyty, ale dodanie go do tablicy routingu potrwa trochę dłużej. Zanim to się stanie, algorytm DUAL musi wykonać kilka obliczeń, co zostało omówione w kolejnych akapitach.

9.4.6 Maszyna FSM

Strona 1:

DUAL FSM

Sercem protokołu EIGRP jest algorytm DUAL i jego silnik obliczania tras EIGRP. Rzeczywista nazwa tej technologii to DUAL FSM (Finite State Machine - automat skończony). Automaty skończone obejmuje całą logikę używaną do obliczania i porównywania tras w sieci EIGRP. Na rysunku przedstawiono uproszczoną wersję maszyny DUAL FSM.

Automat skończony (FSM) to maszyna abstrakcyjna, a nie mechaniczne urządzenie z ruchomymi częściami. Automaty skończone definiują zbiór możliwych stanów, zdarzenia wywołujące te stany i zdarzenia będące efektami tych stanów. Projektanci wykorzystują koncepcję automatu o skończonej liczbie stanów do opisywania reakcji urządzenia, programu komputerowego lub algorytmu routingu na zbiór zdarzeń. Automaty skończone nie są omawiane na tym kursie, jednak wspominamy o nich, żeby zbadać fragment wyników FSM protokołu EIGRP, używając polecenia debug eigrp fsm. Wydajmy to polecenie, aby zobaczyć, co robi algorytm DUAL, kiedy z tablicy routingu zostanie usunięta jakaś trasa.

0x01 graphic


Strona 2:

Kliknij Tablicę routingu R2 na ilustracji.

Jak pamiętamy z poprzednich akapitów, router R2 używa obecnie routera R3 jako sukcesora do sieci 192.168.1.0/24. Poza tym, router R2 uznaje router R1 za dopuszczalnego sukcesora. Spójrzmy, co się stanie, gdy upozorujemy awarię łącza pomiędzy routerami R2 i R3.

Kliknij Wyniki polecenia debug R2 na ilustracji.

Najpierw włączamy debugowanie algorytmu DUAL, wydając polecenie debug eigrp fsm. Następnie pozorujemy awarię łącza, wydając polecenie shutdown dla interfejsu S0/0/1 routera R2.

Gdy wykonamy to na prawdziwym routerze albo w programie Packet Tracer, zobaczymy wszystkie działania algorytmu DUAL w momencie wyłączania łącza. Router R2 musi powiadomić wszystkich sąsiadów EIGRP o utracie łącza i zadbać o aktualizację własnych tablic topologii i routingu. Na ilustracji widzimy tylko wybrane fragmenty wyników polecenia debug. Należy zwrócić uwagę szczególnie na to, że DUAL FSM szuka i znajduje dopuszczalnego sukcesora dla trasy w tablicy topologii EIGRP. Dopuszczalny sukcesor, router R1, teraz staje się sukcesorem i zostaje zainstalowany w tablicy routingu jako nowa najlepsza droga do sieci 192.168.1.0/24.

Kliknij Tablicę topologii 2 na R2 na ilustracji.

W tablicy topologii routera R2 router R1 jest teraz sukcesorem, widzimy też, że nie ma nowych dopuszczalnych sukcesorów.

Osoby wykonujące te polecenia na routerach lub w programie Packet Tracer powinny w tym momencie przywrócić oryginalną topologię, wydając polecenie no shutdown, aby reaktywować interfejs S0/0/1 na routerze R2.

Strona 3:

Brak dopuszczalnego sukcesora

Co się dzieje, kiedy droga do sukcesora staje się niemożliwa do wykorzystania, a nie ma dopuszczalnych sukcesorów? Pamiętajmy, że to, iż DUAL nie ma dopuszczalnego sukcesora, nie oznacza bynajmniej, że nie ma innej drogi do sieci. Oznacza tylko tyle, że DUAL nie może zagwarantować wolnej od pętli trasy zapasowej do tej sieci, a więc nie dodał jej do tablicy topologii jako dopuszczalnego sukcesora. Jeśli w tablicy topologii nie ma dopuszczalnych sukcesorów, DUAL zmienia stan sieci na aktywny. DUAL będzie aktywnie odpytywał swoich sąsiadów o nowego sukcesora.

Kliknij Tablicę topologii 1 na R1 na ilustracji.

Router R1 obecnie używa routera R3 jako sukcesora do sieci 192.168.1.0. Jednak R1 nie wymienia routera R2 jako dopuszczalnego sukcesora, ponieważ ten ostatni nie spełnia warunku dopuszczalności. Zobaczmy, co się stanie, gdy upozorujemy awarię łącza pomiędzy routerami R1 i R3.

Kliknij Wynik polecenia debug na R1 na ilustracji.

Najpierw włączamy debugowanie algorytmu DUAL, wydając polecenie debug eigrp fsm. Następnie pozorujemy awarię łącza, wydając polecenie shutdown dla interfejsu S0/0/1 routera R1.

W wybranych fragmentach wyników polecenia debug widzimy, że sieć 192.168.1.0/24 zmieniła stan na aktywny, a do innych sąsiadów wysyłane są zapytania EIGRP. Router R2 odpowiada informacją o trasie do tej sieci, a trasa ta staje się nowym sukcesorem i zostaje zainstalowana w tablicy routingu.

Kiedy sukcesor przestaje być dostępny i nie ma dopuszczalnego sukcesora, DUAL zmienia stan trasy na aktywny. DUAL zaczyna wysyłać zapytania EIGRP, wypytując sąsiadów o drogę do tej sieci. Inne routery zwracają odpowiedzi EIGRP informujące nadawcę, czy mają drogę do żądanej sieci. Jeśli w żadnej odpowiedzi EIGRP nie ma drogi do tej sieci, nadawca zapytania nie uzyska trasy do tej sieci.

Jeśli nadawca zapytań EIGRP odbierze odpowiedź EIGRP, która zawiera drogę do żądanej sieci, preferowana trasa zostaje uznana za nowy sukcesor i dodana do tablicy routingu. Proces ten trwa dłużej, niż w sytuacji gdy w tablicy topologii znajduje się dopuszczalny sukcesor i algorytm DUAL potrafił szybko dodać nową trasę do tablicy routingu.

Uwaga: DUAL FSM oraz proces wymiany zapytań i odpowiedzi wykraczają poza program tego kursu.

Kliknij Tablicę topologii 2 na R1 na ilustracji.

W tablicy topologii routera R1 widzimy, że router R2 jest sukcesorem i że nie ma nowych sukcesorów dopuszczalnych.

Osoby wykonujące te polecenia na routerach lub w programie Packet Tracer powinny w tym momencie przywrócić oryginalną topologię, wydając polecenie no shutdown, aby reaktywować interfejs S0/0/1 na routerze R1.


9.5 Zaawansowana konfiguracja protokołu EIGRP

9.5.1 Trasa sumaryczna Null0

Strona 1:

Analiza tablicy routingu zawierającej trasy EIGRP może sprawiać problemy ze względu na to, że EIGRP automatycznie uwzględnia trasy zsumaryzowane Null0. Na ilustracji widzimy już, że tablica routingu routera R1 zawiera dwie trasy, których interfejsem wyjściowym jest Null0. Jak wyjaśniono w rozdziale 7, interfejs Null0 to po prostu droga donikąd, zwana popularnie "pojemnikiem na bity". Dlatego też domyślnie proces EIGRP używa interfejsu Null0, aby odrzucać wszystkie pakiety, które pasują do trasy nadrzędnej, ale nie pasują do żadnej z tras podrzędnych.

Mogłoby się wydawać, że po skonfigurowaniu wariantu routingu bezklasowego za pomocą polecenia ip classless protokół EIGRP przestanie odrzucać pakiety i będzie kontynuował szukanie trasy domyślnej albo supersieci. Należy jednak zwrócić uwagę, że trasa zsumaryzowana Null0 (ang. Null0 summary route) EIGRP to trasa podrzędna pasująca do wszystkich pakietów trasy nadrzędnej, które nie pasują do innej trasy podrzędnej. Nawet w wariancie routingu bezklasowego (ip classless), gdzie można by oczekiwać, że proces wyszukiwania będzie sprawdzał supersieci i trasy domyślne, protokół EIGRP użyje zsumaryzowanej trasy Null0 i odrzuci pakiet, ponieważ trasa ta będzie pasowała do wszystkich pakietów trasy nadrzędnej, które nie mają trasy podrzędnej.

Niezależnie od tego, czy wykorzystujemy wariant routingu klasowego, czy bezklasowego, użyta zostanie trasa zsumaryzowana Null0, co uniemożliwi użycie supersieci lub trasy domyślnej.

Z tablicy routingu przedstawionej na ilustracji wynika, że router R1 odrzuci wszystkie pakiety, które pasują do klasowej sieci 172.16.0.0/16, ale nie pasują do żadnej z trzech tras podrzędnych: 172.16.1.0/24, 172.16.2.0/24 i 172.16.3.0/30. Na przykład pakiet do sieci 172.16.4.10 zostanie odrzucony. Nawet jeśli skonfigurowana jest trasa domyślna, router R1 i tak odrzuci pakiet, ponieważ pasuje on do trasy zsumaryzowanej Null0 do sieci 172.16.0.0/16.

D 172.16.0.0/16 is a summary, 00:46:10, Null0

Uwaga: Protokół EIGRP automatycznie zapisuje trasę zsumaryzowaną Null0 jako trasę nadrzędną, gdy spełnione zostaną oba poniższe warunki:

Podobnie jak RIP, EIGRP automatycznie sumaryzuje na granicach sieci głównych. W wynikach polecenia show run widzieliśmy już, że protokół EIGRP domyślnie używa polecenia auto-summary. Na kolejnych stronach wyjaśniono, że wyłączenie autosumaryzacji powoduje usunięcie trasy zsumaryzowanej Null0 i pozwala wyszukiwać supersieci lub trasy domyślne, kiedy trasa podrzędna EIGRP nie pasuje do pakietu docelowego.

9.5.2 Wyłączanie automatycznego podsumowania

Strona 1:

EIGRP, tak jak protokół RIP, wykonuje autosumaryzację na granicach sieci głównych, wykorzystując domyślnie polecenie auto-summary. Efekt widzimy w tablicy routingu routera R3.

Kliknij Tablicę routingu R3 na ilustracji.

Należy zwrócić uwagę, że router R3 nie otrzymuje informacji o konkretnych trasach do podsieci 172.16.1.0/24, 172.16.2.0/24 i 172.16.3.0/30. Routery R1 i R2, wysyłając pakiety aktualizacji EIGRP do routera R3, automatycznie sumaryzują te podsieci do klasowej granicy 172.16.0.0/16. W efekcie router R3 do sieci 172.16.0.0/16 zna tylko jedną trasę, przez router R1. Router R1 został sukcesorem z powodu różnicy w szerokości pasma.

D 172.16.0.0/16 [90/2172416] via 192.168.10.5, 01:08:30, Serial0/0/0

Od razu widać, że trasa ta nie jest optymalna. Router R3 będzie przesyłać wszystkie pakiety przeznaczone do sieci 172.16.2.0 przez router R1. Router R3 nie wie, że router R1 będzie następnie przesyłał te pakiety bardzo wolnym łączem do routera R2. Jedynym sposobem, aby router R3 dowiedział się o tej małej szerokości pasma, jest wysyłanie przez routery R1 i R2 poszczególnych tras do każdej z podsieci 172.16.0.0/16. Innymi słowy, routery R1 i R2 muszą zaprzestać automatycznego sumaryzowania 172.16.0.0/16.

Kliknij no auto-summary na ilustracji.

Tak jak w protokole RIPv2, autosumaryzację można wyłączyć, wydając polecenie no auto-summary. W niektórych implementacjach systemu IOS wydawane w trybie konfiguracji routera polecenie eigrp log-neighbor-changes jest domyślnie włączone. W takim przypadku zobaczymy wyniki takie jak dla routera R1. Algorytm DUAL wyłącza, a następnie ponownie ustanawia wszystkie przyległości sąsiadów, aby polecenie no auto-summary odniosło pożądany efekt. Wszyscy sąsiedzi EIGRP automatycznie wyślą nową partię aktualizacji bez automatycznego sumaryzowania.

Kliknij R1, R2 i R3 na ilustracji.

W tablicach routingu widzimy, że protokół EIGRP ogłasza teraz informacje o poszczególnych podsieciach. EIGRP nie uwzględnia już trasy zsumaryzowanej Null0, ponieważ autosumaryzacja została wyłączona za pomocą polecenia no auto-summary. Dopóki używany jest domyślny wariant routingu bezklasowego (ip classless), jeśli nie ma dopasowania do trasy podsieci, używane są supersieć i trasy domyślne.


Strona 2:

Ponieważ trasy nie są już podsumowywane na granicach dużych sieci, tablice routingu i topologii EIGRP również ulegają zmianom.

Kliknij R1, R2 i R3 na ilustracji.

Po wyłączeniu autosumaryzacji tablica routingu routera R3 zawiera trzy podsieci: 172.16.1.0/14, 172.16.2.0/24 i 172.16.3.0/30. Dlaczego w tablicy routingu routera R3 znajdują się teraz dwie równorzędne trasy do podsieci 172.16.3.0/30? Czy nie powinna istnieć tylko jedna, najlepsza trasa przez router R1 z łączem 1544 Mb/s?

Jak pamiętamy, EIGRP, obliczając złożoną metrykę, używa tylko łącza z najmniejszą szerokością pasma. Najwolniejsze łącze to łącze 64 kb/s zawierające sieć 172.16.3.0/30. W tym przypadku, jeśli chodzi o metrykę szerokości pasma, łącza 1544 Mb/s i 1024 kb/s nie mają znaczenia. Ponieważ obie trasy mają taką samą liczbę i typy interfejsów wyjściowych, wartości opóźnienia są takie same. W efekcie metryka EIGRP dla obu tras jest taka sama, mimo że w rzeczywistości droga przez router R1 jest szybsza.

9.5.3 Ręczne podsumowanie

Strona 1:

Sumaryzację tras dla protokołu EIGRP można skonfigurować niezależnie od tego, czy włączona jest autosumaryzacja (auto-summary). Ponieważ EIGRP to bezklasowy protokół routingu i w aktualizacjach routingu umieszcza maskę podsieci, ręczna sumaryzacja może uwzględniać trasy supersieci. Przypomnijmy, że supersieć to agregacja wielu klasowych adresów sieciowych.

Kliknij Nowe sieci LAN R3

Załóżmy, że do routera R3 dodajemy dwie sieci, używając interfejsów pętli zwrotnej: 192.168.2.0/24 i 192.168.3.0/24. Konfigurujemy również sieci w procesie routingu EIGRP za pomocą poleceń network, aby router R3 ogłaszał te sieci innym routerom.

Kliknij Tablicę routingu 1 na ilustracji.

Aby sprawdzić, czy router R3 wysyła pakiety aktualizacji EIGRP do routerów R1 i R2, zaglądamy do tablic routingu. Na ilustracji pokazano jedynie interesujące nas trasy. W tablicach routingu R1 i R2 widzimy teraz dodatkowe sieci: 192.168.2.0/24 i 192.168.3.0/24. Zamiast wysyłania trzech osobnych sieci router R3 może zsumaryzować sieci 192.168.1.0/24, 192.168.2.0/24 i 192.168.3.0/24 do jednej trasy.

Kliknij Trasa zsumaryzowana R3 na ilustracji.

Ustalanie zsumaryzowanej trasy EIGRP

Najpierw ustalamy trasę zsumaryzowaną tych trzech sieci, używając omówionej w rozdziale 2 „Routing statyczny” metody ustalania tras zsumaryzowanych.

1. Zapisz binarnie adresy sieci, które chcesz zsumaryzować.

2. Aby odnaleźć maskę podsieci do sumaryzacji, rozpocznij od bitów po lewej stronie.

3. Kierując się w prawo, licz kolejne pasujące bity.

4. Kiedy znajdziesz kolumnę bitów, które się nie zgadzają, zatrzymaj się. To jest granica sumaryzacji.

5. Teraz zlicz pasujące bity położone najbardziej na lewo, których w tym przykładzie jest 22. Liczba ta staje się maską podsieci dla trasy zsumaryzowanej /22, czyli 255.255.252.0.

6. Aby znaleźć adres sieciowy dla sumaryzacji, skopiuj pasujące 22 bity i dodaj tyle bitów 0, aby otrzymać w sumie 32 bity.

Wynikiem jest zsumaryzowany adres sieciowy i maska dla 192.168.0.0/22.

Konfiguracja ręcznej sumaryzacji EIGRP

Aby ustanowić ręczną sumaryzację EIGRP na wszystkich interfejsach, które wysyłają pakiety EIGRP, w trybie konfiguracji interfejsu należy wydać poniższe polecenie:

Router(config-if)#ip summary-address eigrp numer-systemu-autonomicznego adres-sieciowy maska-podsieci

Ponieważ router R3 ma dwóch sąsiadów EIGRP, ręczną sumaryzację EIGRP należy skonfigurować na obu interfejsach szeregowych S0/0/0 i S0/0/1.

Kliknij Tablicę routingu 2 na ilustracji.

W tablicach routingu routerów R1 i R2 nie ma już indywidualnych wpisów dla sieci 192.168.1.0/24, 192.168.2.0/24 i 192.168.3.0/24. Zamiast nich widzimy jedną trasę zsumaryzowaną do sieci 192.168.0.0/22. Jak wyjaśniono w rozdziale 2, trasy zsumaryzowane zmniejszają liczbę całkowitych tras w tablicach routingu, dzięki czemu proces przeszukiwania tablicy routingu jest bardziej wydajny. Trasy zsumaryzowane zużywają też mniej szerokości pasma na wymianę aktualizacji routingu, ponieważ zamiast informacji o wielu trasach wysyłana jest informacja tylko o jednej.

0x01 graphic


9.5.4 Trasa domyślna EIGRP

Strona 1:

Kliknij Konfiguracja Statycznej Trasy Domyślnej na R2 na ilustracji.

Wykorzystywanie statycznej trasy 0.0.0.0/0 jako trasy domyślnej nie jest zależne od protokołu. Domyślnej zerowej trasy statycznej można używać dla dowolnego obsługiwanego obecnie protokołu routingu. Statyczną trasę domyślną konfiguruje się z reguły na routerze, który ma połączenie z siecią poza domeną routingu EIGRP, na przykład z ISP.

Aby ta statyczna trasa domyślna była uwzględniana w aktualizacjach routingu EIGRP, wymagane jest użycie polecenia redistribute static. Polecenie redistribute static nakazuje protokołowi EIGRP wysyłać informacje o tej trasie statycznej w aktualizacjach EIGRP wysyłanych do innych routerów. Na listingu widzimy konfigurację domyślnej trasy statycznej i polecenia redistribute static na routerze R2.

Uwaga: Domyślna trasa statyczna używa jako interfejsu wyjściowego pętli zwrotnej - Loopback1. Powodem jest to, że router ISP z naszej topologii nie istnieje fizycznie. Używając interfejsu pętli zwrotnej, można utworzyć symulację połączenia z innym routerem.

Kliknij R1, R2 i R3 na ilustracji.

W tablicach tych znajduje się teraz domyślna trasa statyczna, ustawiona została również brama ostatniej szansy.

W tablicach routingu routerów R1 i R3 należy zwrócić uwagę na źródło i odległość administracyjną nowej statycznej trasy domyślnej. Wpis domyślnej trasy statycznej na routerze R1 wygląda tak:

D*EX 0.0.0.0/0 [170/3651840] via 192.168.10.6, 00:01:08, Serial0/1

Trasy domyślne zapewniają domyślną drogę poza domenę routingu i - podobnie jak trasy sumaryczne - minimalizują liczbę wpisów w tablicy routingu.


9.5.5 Dostrajanie protokołu EIGRP

Strona 1:

W dwóch ostatnich podrozdziałach omówiono dwa najważniejsze sposoby dostrajania działania EIGRP. Teraz najpierw wyjaśnimy używanie szerokości pasma EIGRP a następnie omówimy modyfikację domyślnych wartości interwału hello i czasu podtrzymania.

Wykorzystanie szerokości pasma EIGRP

Domyślnie na informacje EIGRP używane jest do 50% szerokości pasma interfejsu. Zapobiega to nadużywaniu łącza przez proces EIGRP ze szkodą dla routingu normalnego ruchu. Aby skonfigurować dozwoloną dla protokołu EIGRP szerokość pasma interfejsu, wydajemy polecenie ip bandwidth-percent eigrp.

Router(config-if)#ip bandwidth-percent eigrp numer-systemu-autonomicznego procent

Routery R1 i R2 wspólnie korzystają z bardzo wolnego łącza 64 kb/s. Konfiguracja ograniczająca wykorzystanie dostępnej szerokości pasma przez EIGRP została pokazana na ilustracji wraz z poleceniem bandwidth. W poleceniu ip bandwidth-percent eigrp należy podać wielkość skonfigurowanej szerokości pasma (czyli domyślną szerokość pasma), obliczając procent, jakiego może używać EIGRP. W tym przykładzie pozwalamy protokołowi EIGRP korzystać maksymalnie z 50% szerokości pasma. Tym samym EIGRP nigdy nie będzie używać więcej niż 32 kb/s szerokości pasma tego łącza.


Strona 2:

Konfiguracja interwałów hello i czasów podtrzymania

Interwały hello i czasy podtrzymania można konfigurować dla poszczególnych interfejsów. Wartości te nie muszą być zgodne na innych routerach EIGRP, aby powstawały przyległości. Oto polecenie pozwalające zmodyfikować interwał hello:

Router(config-if)#ip hello-interval eigrp numer-systemu-autonomicznego sekundy

Jeśli zmienimy interwał hello, musimy pamiętać o jednoczesnej zmianie czasu podtrzymania na wartość równą lub większą niż interwał hello. W przeciwnym razie przyległość z sąsiadem zostanie przerwana po tym, jak upłynie czas podtrzymania, a przed następnym interwałem hello. Oto polecenie pozwalające skonfigurować inny czas podtrzymania:

Router(config-if)#ip hold-time eigrp numer-systemu-autonomicznego sekundy

Wartość sekundy zarówno dla interwału hello, jak i dla czasu podtrzymania to liczba z przedziału od 1 do 65 535. Oznacza to, że możliwe jest ustawienie interwału hello nawet na ponad 18 godzin, co może być właściwe dla drogiego łącza wdzwanianego. Jednak na routerach R1 i R2 skonfigurujemy 60-sekundowy interwał hello i 180-sekundowy czas podtrzymania. Aby przywrócić wartości domyślne, należy użyć obu poleceń ze słowem no.

9.7 Podsumowanie rozdziału

9.7.1 Podsumowanie i powtórzenie

Strona 1:

Podsumowanie

EIGRP (Enhanced Interior Gateway Routing Protocol) to bezklasowy protokół routingu wektora odległości wydany w 1992 roku przez Cisco Systems. EIGRP to własnościowy protokół routingu Cisco, a jednocześnie udoskonalenie innego protokołu będącego własnością Cisco - IGRP (Interior Gateway Routing Protocol). IGRP to klasowy protokół routingu wektora odległości, który przestał być obsługiwany przez Cisco. Trasy EIGRP w tablicy routingu mają kod D (od algorytmu DUAL). Domyślna odległość administracyjna EIGRP dla tras wewnętrznych wynosi 90, a dla tras zaimportowanych ze źródła zewnętrznego, takiego jak trasy domyślne, 170.

EIGRP wykorzystuje moduły PDM dające mu możliwość obsługiwania różnych protokołów warstwy 3., w tym IP, IPX i AppleTalk. EIGRP używa RTP (Reliable Transport Protocol) jako protokołu warstwy transportu w celu dostarczania pakietów EIGRP. Aktualizacje, zapytania i odpowiedzi są dostarczane niezawodnie, natomiast pakiety hello i potwierdzenia zawodnie. Niezawodny RTP oznacza, że musi zostać zwrócone potwierdzenie EIGRP.

Zanim zostaną wysłane aktualizacje EIGRP, router musi wykryć swoich sąsiadów. Robi to za pomocą pakietów hello EIGRP. W większości sieci EIGRP wysyła pakiety hello co pięć sekund. W sieciach NBMA, takich jak X.25, Frame Relay i interfejs ATM z łączami dostępowymi T1 (1544 Mb/s) lub wolniejszymi, pakiety hello są wysyłane co 60 sekund. Czas podtrzymania jest trzykrotnie dłuższy od interwału hello, czyli wynosi 15 sekund w większości sieci oraz 180 sekund w wolnych sieciach NBMA.

Aby dwa routery zostały sąsiadami, skonfigurowane na nich wartości hello i podtrzymania nie muszą być identyczne. Do wyświetlania tablicy sąsiadów i sprawdzania, czy protokół EIGRP ustanowił przyległość ze swoimi sąsiadami, używamy polecenia show ip eigrp neighbors.

EIGRP w przeciwieństwie do protokołu RIP nie wysyła aktualizacji okresowych. EIGRP wysyła aktualizacje częściowe i ograniczone. Aktualizacja jest wysyłana tylko do tych routerów, których zmiana ta dotyczy. Na złożoną metrykę EIGRP używaną do wyznaczania najlepszej trasy składają się szerokość pasma, opóźnienie, niezawodność i obciążenie. Domyślnie używane są tylko szerokość pasma i opóźnienie. Domyślnie obliczenia polegają na dodaniu najwolniejszego pasma do sumy opóźnień interfejsów wyjściowych z routera do sieci docelowej.

Sercem protokołu EIGRP jest algorytm DUAL Diffusing Update Algorithm). DUAL FSM służy do wyznaczania najlepszej trasy i potencjalnych tras zapasowych do każdej sieci docelowej. Sukcesor to router sąsiadujący używany do przekazywania pakietu do sieci docelowej trasą o najniższym koszcie. Dopuszczalna odległość to najniższa obliczona metryka do sieci docelowej. Dopuszczalny sukcesor to sąsiad, który ma wolną od pętli trasę zapasową do tej samej sieci co sukcesor, a poza tym spełnia warunek dopuszczalności. Warunek ten zostaje spełniony, kiedy ogłaszana przez sąsiada odległość do sieci jest mniejsza niż dopuszczalna odległość lokalnego routera do tej samej sieci docelowej. Odległość ogłaszana to po prostu dopuszczalna odległość sąsiada EIGRP do sieci docelowej.

Protokół EIGRP konfigurujemy za pomocą polecenia router eigrp system-autonomiczny. Wartość system-autonomiczny to w rzeczywistości identyfikator procesu, który musi być identyczny na wszystkich routerach w domenie routingu EIGRP. Polecenie network jest podobne do tego używanego w protokole RIP. Sieć to klasowy adres sieciowy połączonych bezpośrednio interfejsów routera. Maska domyślna to parametr opcjonalny pozwalający uwzględniać tylko wybrane interfejsy.

Istnieje kilka sposobów propagowania statycznej trasy domyślnej za pomocą protokołu EIGRP. Najczęściej używa się polecenia redistribute static wydawanego w trybie konfiguracji routera EIGRP.


Strona 4:

Aby nauczyć się więcej

Routing TCP/IP, Volume I

Istnieje kilka wartościowych źródeł informacji na temat algorytmu DUAL. W drugim wydaniu książki Routing TCP/IP, Volume I autorstwa Jeffa Doyle'a i Jennifer Carroll znajduje się świetny rozdział poświęcony algorytmowi DUAL, zawierający dwa przykłady rozmytych obliczeń.

J.J. Garcia-Luna-Aceves

Algorytm DUAL na początku zaproponowali E.W. Dijkstra i C.S. Scholten, a najważniejszą pracę wykonał J.J. Garcia-Luna-Aceves. J.J. Garcia-Luna-Aceves kieruje katedrą informatyki na Uniwersytecie Kalifornijskim w Santa Cruz (UCSC), jest również kierownikiem grupy naukowców w Palo Alto Research Center (PARC). Kilka opublikowanych przez niego artykułów, w tym na temat algorytmu DUAL Loop-Free Routing Using Diffusing Computations IEEE/ACM Transactions on Networking, Vol. 1, 1, No. 1, February 1993), można znaleźć pod adresem http://www.soe.ucsc.edu/research/ccrg/publications.html.

20



Wyszukiwarka

Podobne podstrony:
EIGRP L2
EIGRP L1
CCNA M3 ScaN Skills Assess EIGRP Student Trng Exam
EIGRP L3
EIGRP
Cisco Press IP Enhanced EIGRP Commands
EIGRP
Cisco Press Advanced IP EIGRP Troubleshooting

więcej podobnych podstron