13.07.2015 Views

Routing Information Protocol - Fatcat

Routing Information Protocol - Fatcat

Routing Information Protocol - Fatcat

SHOW MORE
SHOW LESS

Create successful ePaper yourself

Turn your PDF publications into a flip-book with our unique Google optimized e-Paper software.

Autor: Anna Sośnicka<strong>Routing</strong> <strong>Information</strong> <strong>Protocol</strong>Routery mogą zdobyć informacje na temat dostępnych tras za pomocąroutingu statycznego lub dynamicznego.●●Trasy skonfigurowane ręcznie przez administratorów sieci określane sąmianem tras statycznych.Trasy, o których informacje zostały otrzymane od innych routerów zapomocą protokołu routingu, określane są mianem tras dynamicznych.Routery wykorzystują proces określania ścieżki w celu podjęcia decyzjidotyczącej portu, przez który należy wysłać nadchodzący pakiet, aby dotarłdo swego adresata.Protokoły wektora odległosciKażdy router buduje tablicę odległości do wszystkich znanych obiektówdocelowych (wektorów), umożliwiającą wybór optymalnej pod względemkosztu (odległości) trasy transmisji datagramów. Odległości są obliczane napodstawie wymiany tablic odległości dokonywanych między sąsiednimirouterami.●●●●●●Każdy router otrzymuje identyfikator, a koszt dla swoich łączysieciowych ustawia na 1 (może na większą wartość w zależności odnp. parametrów łącza).Router inicjalizuje swoją tablicę: 0 dla siebie, 1 dla bezpośredniodołączonych sieci, nieskończoność dla pozostałych.Router okresowo (typowo co 30 sek.) przesyła swoją tablicę wektorówodległości do sąsiednich routerów, a także w razie włączenia łącza lubw zmiany tabeli.Na podstawie odebranych tabel router buduje swoją nową tabelęwektorów.Całkowity koszt do obiektu docelowego jest sumą kosztu otrzymanegow tabeli od sąsiada i kosztu przypisanego łączu do tego sąsiada.Ostatecznie tabela routingu jest ustalana na postawie tras o najniższymkoszcie.


Algorytmy działające z wykorzystaniem wektora odległości wymagają, abykażdy router wysłał całą swoją tablicę routingu do wszystkich przyległychsąsiadów. Tablice routingu zawierają informacje o całkowitym koszcie ścieżki,określanym przez metrykę, oraz adres logiczny pierwszego routera naścieżce do każdej sieci w tablicy.Pętle routingu mogą powstawać, gdy niespójne tablice routingu nie sąaktualizowane z powodu wolnej zbieżności w zmieniającej się sieci.Algorytmy routingu działające z wykorzystaniem wektora odległości sąsamokorygujące, ale wystąpienie pętli routingu może spowodować odliczaniedo nieskończoności. Aby uniknąć takiej sytuacji, w protokołach działających zwykorzystaniem wektora odległości nieskończoność jako zdefiniowana jakopewna liczba maksymalna. Liczba ta jest powiązana z metryką routingu, którąmoże być po prostu liczba przeskoków.Eliminacja pętli routingu przy użyciu metody split horizonNiektóre pętle routingu powstają, gdy nieprawidłowe informacje powracającedo routera są sprzeczne z poprawnymi informacjami, które ten router


pierwotnie wysłał.Reguła split horizon zmniejsza liczbę nieprawidłowych informacji oraz narzutroutingu.Metoda route poisoningMetoda route poisoning jest używana przez różne protokoły z wektoremodległości w celu zapobieżenia powstawaniu większych pętli routingu orazdostarczenia dokładnych informacji o niedostępności podsieci lub sieci. Wtym celu licznikowi przeskoków jest nadawana wartość o jeden większa niżmaksymalna.Metoda route poisoning powoduje, że protokół routingu ogłasza dlaniedostępnej trasy metrykę nieskończoną. MUżycie wyzwalanych aktualizacji w celu uniknięcia powstawania pętliroutinguNowe tablice routingu są regularnie wysyłane do sąsiednich routerów. Naprzykład w przypadku protokołu RIP aktualizacje następują co 30 sekund.Wyzwalane aktualizacje są wysyłane natychmiast, gdy wystąpi zmianaw tablicy routingu. Router, który wykrył zmianę topologii, natychmiast wysyłakomunikat aktualizacyjny do sąsiednich routerów. Routery te generująwyzwalane aktualizacje, aby powiadomić sąsiednie urządzenia o zmianie.W przypadku awarii trasy aktualizacja jest wysyłana natychmiast.Zapobieganie występowaniu pętli routingu przy użyciu zegarówprzetrzymaniaGdy router otrzymuje od sąsiada aktualizację, która wskazuje, żedotychczas dostępna sieć jest niedostępna, oznacza tę sieć jakoniedostępną i uruchamia zegar przetrzymania. Jeśli przed upływemczasu na zegarze przetrzymania odbierze od tego samego sąsiadaaktualizację, która wskazuje, że sieć jest znowu dostępna, oznacza jąjako dostępną i usuwa zegar przetrzymania.Jeśli od innego sąsiedniego routera odebrana zostanie aktualizacjazawierająca lepszą metrykę dla tej sieci, router oznacza tę sieć jakodostępną i usuwa zegar przetrzymania.Jeśli przed upłynięciem czasu zegara przetrzymania od innego routerazostanie odebrana aktualizacja z większą metryką, zostanie ona


zignorowana. Aktualizacja ta jest ignorowana, aby przedłużyć czaspropagacji w sieci informacji o szkodliwej zmianie.RIPv1 i RIPv2Protokół RIP (ang. <strong>Routing</strong> <strong>Information</strong> <strong>Protocol</strong>)RIPv1Protokół RIP jest protokołem routingu z wykorzystaniem wektora odległości,w którym stosuje się liczbę przeskoków jako metrykę służącą do określeniakierunku i odległości do dowolnego łącza w intersieci. Jeżeli do punktudocelowego prowadzi więcej niż jedna ścieżka, protokół RIP wybierze tę,która zawiera najmniejszą liczbę przeskoków. Jednak z powoduwykorzystania w protokole RIP liczby przeskoków jako jedynej metryki niezawsze wybrana zostanie najszybsza ścieżka. Co więcej, protokół RIP niemoże dokonywać routingu pakietów na odległości większe niż 15przeskoków. Protokół RIPv1 (RIP wersja 1) wymaga, żeby wszystkieurządzenia w sieci używały tej samej maski podsieci. Dzieje się tak dlatego,że w aktualizacji tras nie uwzględnia on informacji na temat maski podsieci.Określane jest to mianem routingu klasowego.RIPv2Protokół RIPv2 (RIP wersja 2) dokonuje routingu z uwzględnieniem prefiksu iwysyła w ramach aktualizacji tras informacje dotyczące masek podsieci.Określane jest to mianem routingu bezklasowego. W routingu bezklasowymróżne podsieci w tej samej sieci mogą mieć różne maski podsieci.Wykorzystanie różnych masek podsieci w ramach tej samej sieci określanejest mianem maskowania VLSM (ang. variable-length subnet masking).


Protokół RIP przeszedł ewolucję od klasowego protokołu routingu RIP wwersji 1 (RIP v1) do bezklasowego protokołu routingu RIP w wersji 2 (RIPv2). W wersji RIP v2 wprowadzono następujące rozszerzenia: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).W celu zapobieżenia nieskończonym pętlom routingu w protokole RIPograniczono liczbę dopuszczalnych przeskoków na ścieżce od źródła do celu.Maksymalna liczba przeskoków na ścieżce wynosi 15. Gdy router otrzymujeaktualizację routingu zawierającą nową albo zmienioną pozycję, zwiększawartość metryki o 1, aby uwzględnić siebie jako przeskok na ścieżce. Jeśliw wyniku tego wartość metryki przekroczy 15, cel w sieci jest uznawany zaniedostępny. Na routerach RIP przechowywana jest informacja tylko onajlepszej ścieżce do celu, ale w przypadku ścieżek o równych kosztachprzechowywanych może być ich kilka. Protokół RIP realizuje szereg innychfunkcji występujących w innych protokołach routingu. Na przykładzaimplementowane są w nim mechanizmy split horizon i przetrzymania, którezapobiegają propagacji nieprawidłowych informacji o routingu.W przypadku większości protokołów routingu aktualizacje są generowaneczasowo oraz zdarzeniowo. Protokół RIP jest sterowany czasowo, alew implementacji firmy Cisco tego protokołu w przypadku wykrycia zmianywysyłane są wyzwalane aktualizacje. Zmiany topologii wyzwalająnatychmiastowe aktualizacje, które nie zależą od zegara aktualizacji. Beztakich aktualizacji protokół RIP działałyby mniej efektywnie. Po aktualizacjitablicy z powodu zmiany konfiguracji router natychmiast wysyła aktualizacjetras, aby poinformować inne routery o tej zmianie. Aktualizacje te, zwaneaktualizacjami wyzwalanymi, są wysyłane dodatkowo oprócz aktualizacjizaplanowanych wysyłanych przez router RIP.


ZALETY I WADY STATYCZNEGO I DYNAMICZNEGO ROUTINGUBłedy w konfiguracji statycznego routingu maja zasieg raczej lokalny(najblizsze segmenty w otoczeniu rutera). Pozostala czesc sieci zazwyczajdziala bez zarzutów. Natomiast w przypadku routingu dynamicznego, kazdapomylka moze miec po relatywnie krotkim czasie globalne skutki. Np.niewlasciwa konfiguracja rutera brzegowego rozglaszajacego trasę 'default'moze uniemozliwic korzystanie z Internetu wszystkim komputerom w naszejsieci.ZALETY RIPa• relatywnie najprostszy w konfiguracji spośród omawianych protokołówWADY RIPa• długi czas zbieżności w dużych sieciach• stosunkowo dlugi czas reakcji (szczegolnie w przypadku rozleglychsieci) na zmiany spowodowane awaria (lub przylaczeniem nowego),gdyz kazda zmiana konfiguracji propaguje sie z rutera na najblizszesasiadujace rutery, zatem przekonfigurowanie sie wszystkich ruterow wsieci zajmuje troche czasu• limit wielkości sieci wprowadzany przez maksymalny hop count,• tabele wektorów odległości są transmitowane nawet wtedy, jeśli niezaszły żadne zmiany (obciążanie sieci)


Konfiguracja● Pliki konfiguracyjne i przykłady znajdują się w:●●/usr/local/etc/Interesujące nas pliki to zebra.conf.sample oraz ripd.conf.sample napodstawie których należy stworzyć właściwe pliki konfiguracyjnezebra.conf i ripd.confUruchomienie demonów zebra i ripd (w tej kolejności)zebra -dripd -dWczytanie pliku konfiguracyjnego:kill –SIGHUP `cat /var/run/ripd.pid`show ip route - wyświetla informacje o utrzymywanych trasachshow interface - wyświetla informacje o interfejsachshow ip forwarding – mówy czy włączono w systemie przekazywaniepakietów— RIP Command: neighbor a.b.c.d— RIP Command: no neighbor a.b.c.dJeśli wyłączono multicasting na interfejsie obsługującymwtedy komunikacja jest utrzymywana tylko z jawnie zadeklarowanymirouterami.RIP


— RIP command: passive-interface (IFNAME|default)— RIP command: no passive-interface IFNAMEUstawia pracę RIP w trybie pasywnym.— RIP command: redistribute kernel— RIP command: no redistribute kernelWłącza/wyłącza anonsowanie tablicy routingu jądra.Command: show ip rip - wyswietla tablicę routingu ripprzykładowa konfiguracja RIPv2Password: zebraR1-rip> enablePassword: zebraR1-rip# configure terminalR1-rip(config)# router ripR1-rip(config-router)# network 192.168.1.0/24R1-rip(config-router)# network 10.0.0.0/24R1-rip(config-router)# neighbor 192.168.1.254R1-rip(config-router)# version 2R1-rip(config-router)# endR1-rip# write

Hooray! Your file is uploaded and ready to be published.

Saved successfully!

Ooh no, something went wrong!