Cisco: RIP cz. II

Autor: Arkadiusz Tobiasz 20 maja 2010

Dzisiaj uzupełnienie i poszerzenie informacji o protokole RIP, który opisałem jakiś czas temu. Był to swoisty wstęp do routingu dynamicznego, a właściwie do rodziny protokołów wektora odległości. Poniższy wpis bazuje na topologii i konfiguracji interfejsów z poprzedniego wpisu o protokole RIP, który znajdzie tutaj.

Jak już wspomniałem wszystkie routery, na których uruchomiony został protokół RIP cyklicznie wysyłają do sąsiadujących routerów zawartość swoich tablic routingu. Do śledzenia aktualizacji routingu RIP służy polecenie debug ip rip. Wpiszmy je w konsoli routera Katowice:

Katowice# debug ip rip

Jak zauważyliście protokół RIP zignorował informacje przychodzące z adresu 172.16.16.2, czyli routera Zabrze. Powodem tego była niewłaściwa wersja protokołu RIP. Sprawdźmy zatem jak jest skonfigurowany protokół RIP na routerze Katowice za pomocą polecenia:

Katowice# show ip protocols

Jak łatwo można dostrzec interfejs FastEthernet 0/1 odbiera tylko pakiety RIP w wersji 2, natomiast router Katowice i Gliwice posiadają protokół RIP w wersji 2. Należy zatem tak skonfigurować ten interfejs, aby odbierał pakiety w wersji 1 i 2.

Katowice# conf t

Katowice(config)# int f0/1

Katowice(config-if)# ip rip receive version 1 2

Po wpisaniu powyższych poleceń aktualizacja RIP jest wyświetlana dalej, ponieważ jej nie wyłączyliśmy. Po chwili powinniśmy ujrzeć następujące wpisy, które informują o tym, że tablica routingu routera Katowice posiada wszystkie informacje na temat tras do pozostałych routerów.

Do rozwiązywania problemów z protokołem RIP można użyć też polecenia show ip rip database, które wyświetla szczegółowe informacje na temat poszczególnych tras zapisanych w naszej tablicy routingu.

Nie skonfigurowaliśmy protokołu RIP dla routera Bytom. Uruchomimy na nim RIP w wersji 2.

Bytom> en

Bytom# conf t

Bytom(config)# router rip

Bytom(config-router)# version 2

Bytom(config-router)# net 192.168.1.0

Bytom(config-router)# net 202.202.2.0

Bytom(config-router)# end

Na routerze Katowice interfejs f0/0 musi wysyłać informacje w wersji 2, natomiast odbierać w wersji 1 i 2.

Katowice# conf t

Katowice(config)# int f0/0

Katowice(config-if)# ip rip send version 2

Katowice(config-if)# ip rip receive version 1 2

Włączymy teraz mechanizm uwierzytelniania między interfejsami routera Katowice i Bytom.

Katowice# conf t

Katowice(config)# key chain MAD

Katowice(config-keychain)# key 1

Katowice(config-keychain-key)# key-string cisco

Musimy jeszcze uruchomić mechanizm uwierzytelniania na odpowiednim interfejsie. W naszym przypadku będzie to interfejs f0/1

Katowice(config)# int f0/1

Katowice(config-if)# ip rip authentication key-chain MAD

Katowice(config-if)# ip rip authentication mode text

W taki sposób router Bytom nie otrzymuje informacji o trasach, które posiada Katowice. Dzieje się tak, ponieważ nie posiada on autoryzacji. Musimy na interfejsie f0/1 ustawić autoryzację.

Bytom# conf t

Bytom(config)# key chain MAD

Bytom(config-keychain)# key 1

Bytom(config-keychain-key)# key-string cisco

Bytom(config)# int f0/1

Bytom(config-if)# ip rip authentication key-chain MAD

Bytom(config-if)# ip rip authentication mode text

W taki sposób routery Bytom i Katowice znów wymieniają się informacjami o trasach. W celu szyfrowania autoryzacji zamiast ostatniej linijki należy użyć polecenia:

Bytom(config-if)# ip rip authentication mode md5

Jeszcze kilka słów o filtrowaniu tras. Możemy filtrować ruch przychodzący i wychodzący z naszego interfejsu. Robimy to za pomocą list dostępu. Powiedzmy, że na routerze Siemianowice chcemy usunąć adres 202.202.202 z aktualizacji wchodzących do interfejsu f0/0. Definiujemy na początku listę dostępu:

Siemianowice# conf t

Siemianowice(config)# access-list 1 deny 202.202.2.0

Siemianowice(config)# permit any

Należy pamiętać o ostatniej linijce, bowiem jej brak spowoduje, że wszystkie adresy zostaną zablokowane. Teraz musimy zacząć filtrować aktualizację przychodzące do interfejsu f0/0:

Siemianowice(config)# int f0/0

Siemianowice(config-if)# distribute-list 1 in f0/0

W taki oto sposób po ustalonym czasie trasa do sieci 202.202.2.0 zniknie z tablicy routingu na routerze Siemianowice. Jeśli chcielibyśmy filtrować aktualizacje wychodzące, to zamiast ostatniej linijki wpisalibyśmy:

Siemianowice(config-if)# distribute-list 1 out f0/0

Odpowiedz

 

Arkadiusz Tobiasz student Akademii Ekonomicznej im. Karola Adamieckiego w Katowicach na specjalnościach informatyka ekonomiczna oraz rachunkowość. Więcej...

jQuery Validation i funkcja remote

Jakiś czas temu zwrócił się do mnie użytkownik z problemem. Chodzi o to, że korzysta on z pluginu walidacji jQuery, […]

Zend Framework: integracja z Uploadify

W tym wpisie postaram się przedstawić Wam w jaki sposób zintegrować skrypt Uploadify z Zend Frameworkiem. Dzięki temu będziemy mogli […]

Javascript: Czasowe wyświetlanie reklamy

Czasami chcemy, aby na pewnym elemencie naszej strony wyświetlała się reklama przez jakiś czas, a następnie zniknęła. W tym wpisie […]

Linux: backup wszystkich baz danych MySQL

Swego czasu pisałem o tym jak z poziomu konsoli można szybko i przyjemnie zrobić backup bazy MySQL. Wszystko jest ładnie […]