Tag: RIP

  • (K) Frame Relay Vs protokoły routingu dynamicznego*

    (K) Frame Relay Vs protokoły routingu dynamicznego*

    Konfiguracja protokołów routingu dynamicznego

    Konfiguracja protokołu OSPF względem Frame Relay

    W przypadku konfiguracji protokołu OSPF na połączeniu Frame Relay należy dostosować rodzaj interfejsu (Point-to-Point, Point-to-Multipoint, Non-broadcast czy Broadcast) do konfigurowanej topologii sieciowej, protokołu Frame Relay.

    (config)# interface serial interfejs

    Przechodzi do poziomu konfiguracji określonego interfejsu serialowego.

    (config-if)# encapsulation frame-relay

    Zmienia domyślną metodę enkapsulacji interfejsu serialowego na Frame Relay.

    (config-if)# ip address adres-IP

    Przypisuje adres IP do konfigurowanego interfejsu serialowego.

    (config-if)# ip ospf network {non-broadcast / point-to-point / point-to-multipoint / point-to-multipoint non-broadcast / broadcast}

    Definiuje rodzaj konfigurowanego interfejsu na NBMA.

    (config-if)# [no] shutdown

    Aktywuje / Dezaktywuje konfigurowany interfejs serialowy.

    (config-if)# router ospf ASN

    Przechodzi do poziomu konfiguracji protokołu OSPF.

    (config-router)# neighbor adres-IP(Adres sąsiedniego urządzenia)

    Statycznie definiuje sąsiednie urządzenie dla protokołu OSPF.

    Komendy SHOW oraz CLEAR

    Komendy show

    # show frame-relay pvc

    Wyświetla szczegółowe informacje związane z połączeniami Virtual Circuits.

    # show frame-relay pvc | include PVC

    Wyświetla status połączeń Virtual Circuits.

    # show frame-relay map

    Wyświetla mapowanie lokalnego interfejsu oraz wartości DLCI, do adresu IP sąsiedniego urządzenia.

    # show frame-relay lmi

    Wyświetla wykorzystywany standard testowania połączenia (Keepalive).

    Komendy clear frame-relay

    # clear frame-relay inarp

    Czyści dynamicznie wyuczone mapowanie DLCI do adresów IP (IARP).

    Pozostałe tematy związane z protokołem Frame Relay

  • (T) Protokoły routingu dynamicznego**

    (T) Protokoły routingu dynamicznego**

    Zagadnienia związane z routingiem

    Routing Dynamiczny

    • Zadaniem protokołu Routingu Dynamicznego jest wypełnienie Tablicy Routingu, trasami prowadzącymi do sieci docelowych. W tym celu rutery wymieniają między sobą wiadomości mające określić istniejące sieci oraz ich lokalizację a następnie za pomocą algorytmów wyznaczyć najkrótszą trasę do nich prowadzącą.

    Zagadnienia związane z routingiem

    • Routing Protocol – Zestaw zasad, wiadomości oraz algorytmów wykorzystywanych przez router do wykrywania nowych  sieci, jak i tras do nich prowadzących. Poprzez poszukiwanie nowych oraz analizowanie istniejących tras routingu w celu określenia jednej najlepszej trasy względem każdej z istniejących sieci. Przykładowym protokołem routingu dynamicznego jest protokół RIP, EIGRP, OSPF, BGP czy IS-IS.
    • Routed Protocol & Routable Protocol – Protokół określający logiczne zasady struktury oraz adresacji sieci, umożliwiające prowadzenie komunikacji przez rutery. Przykładowym protokołem tego typu jest protokół IPv4 bądź IPv6.
    • Routing Asymetryczny (Asymmetric Routing) – Zachodzi, gdy droga powrotna wysłanego pakietu jest inna, niż ta którą dotarł do celu. Sytuacja ta może powodować komplikacje związane z kolejkowaniem wysyłanych wiadomości np. utrudniając komunikację protokołu TCP tudzież zupełnie ją blokując. Przykładem takiej sytuacji jest użycie protokołu HSRP na przełącznikach warstwy trzeciej, przy zastosowaniu redundantnego podłączenia z przełącznikami L2 warstwy dostępowej. W sytuacji tej powracające pakiety odebrane przez urządzenie, które nie uczestniczyło w danej transmisji, nie będą posiadać adresu MAC nadawcy w swojej tablicy (ARP cache), przez co ruch ten zostanie odebrany jako nieznany ruch unicast-owy a tym samym zostanie odrzucony.
    • Czas oczekiwania (Latency) – Określa czas przez jaki pakiet podróżuje od źródła do celu, przez co jest szczególnie ważny dla aplikacji głosowych (Voice over IP). Przykładowo w standardzie G.114 wymagana jakość połączenia nie powinna przekraczać czasu oczekiwania rzędu 150ms. Na końcową wartość czasu oczekiwania składa się przepustowość (Bandwidth) oraz opóźnienie (Delay).
    • Następny przeskok (Next-Hop) –
    • Zbieżność (Convergence) –
    • Autonomous System (AS) –
    • Autonomous System Number (ASN) – 
    • Interior Gateway Protocol (IGP) – 
    • Exterior Gateway Protocol (EGP) – 

    Dystans Administracyjny

    • W przypadku wykorzystania dwóch protokołów routingu na jednym ruterze, może dojść do sytuacji w którym obydwa protokoły przedstawią dwie różne drogi dotarcia do tej samej sieci docelowej. Aby wybrać jedną najlepszą, ruter wykorzystuje stałą wartość administracyjną przypisywaną do każdego protokołu routingu dynamicznego. Ten z niższą wartością posiada większy priorytet na dodawanie tras do tablicy routingu.
    Protokół Routingu Dystans Administracyjny
    Connected 0
    Static Route 1
    BGP (External Routes) 20
    EIGRP (Internal Routes) 90
    IGRP 100
    OSPF 110
    IS-IS 115
    RIP 120
    EIGRP (External Routes) 170
    BGP (Internal Routes) 200
    DHCP default route 254
    Unusable 255

    Wartości dystansu administracyjnego (AD)

    Metryka

    • Hop Count (Skok) – Ilość routerów, jakie musi pokonać pakiet, aby dotrzeć do celu.
    • Bandwidth (Pasmo) – Ilość danych jaka może być przepuszczana przez połączenie, w określonym okresie czasu.
    • Przepustowość (Throughput) – Rzeczywista szerokość pasma (Bandwidth), zmierzona w określonym okresie czasu (Jest to prędkość pasma pomniejszona o istniejący ruch sieciowy oraz wszelkie opóźnienia).
    • Delay (Opóźnienie) –
    • Reliability (Osiągalność) – Wartość szacowana na podstawie awaryjności drogi.

    Protokoły routingu dynamicznego

    Protokoły routingu dynamicznego

    • Zadania dynamicznych protokołów routingu:
      • Dynamiczna nauka o sieci należącej do danej instancji routingu.
      • Nauka o najlepszej ścieżce prowadzącej do każdej dostępnej podsieci.
      • Dynamiczna wymiana danych o zmianach zachodzących w sieci.
    • Dynamiczne protokoły routingu należy dostosować do panujących w firmie warunków, zgodnie z następującymi cechami charakterystycznymi które posiadają:
      • Skalowalność (Scalability) – W zależności od tego jak wielka jest obecna sieć oraz jakie zmiany będą w niej zachodzić w przyszłości, należy dobrać odpowiedni protokół routingu lub wykorzystać routing statyczny. W przypadku opcji pierwszej należy zwrócić uwagę na np. ilość przeskoków (która w przypadku protokołu RIP jest ograniczona do 15).
      • Zależność od producenta (Vendor interoperability) – Łącząc urządzenia sieciowe wielu producentów, należy zwrócić uwagę czy wszystkie z nich wspierają wybrany protokół routingu, przykładowo do 2013 roku protokół EIGRP mógł działać jedynie na ruterach firmy Cisco.
      • Znajomość obsługi protokołu przez personel IT – Pracownicy firmy mogą być bardziej zorientowani w obsłudze jednego z protokołów, co może znacząco usprawnić jego wdrażanie w sieci lokalnej.
      • Prędkość i zbieżność (Speed of convergence) – Szybkość wykrywania i reagowania na zachodzące w sieci zmiany jest istotną chcą każdego z protokołów routingu.
      • Sumaryzację (Summarization) – Możliwość sumaryzacji wielu wpisów z tablicy routingu do pojedynczego, może znacznie zmniejszyć rozmiar tablicy przyspieszając proces routingu przy jednoczesnym odciążeniu procesora.
      • Routing wewnętrzny oraz zewnętrzny – W zależności od potrzeby w firmie może zostać wykorzystany protokół bramy zewnętrznej BGP, stosowany szczególnie w przypadku nadmiarowego połączenia z dostawcą ISP czy jedynie jeden z protokołów bramy wewnętrznej IGP.
    Protokoły routingu dynamicznego

    Exterior Gateway Protocol

    Protokoły IGP są wykorzystywane w komunikacji pomiędzy różnymi systemami autonomicznymi AS.

    Interior Gateway Protocol

    Protokoły IGP są wykorzystywane w komunikacji wewnątrz jednego systemu autonomicznego AS.
    • Protokoły wektora odległości (Distance-Vector) – Okresowo wymieniają całą zawartość swojej tablicy routingu, pomiędzy bezpośrednio przylegającymi sąsiadami. Przez co niezależnie od zaistniałych w sieci zmiany, każda wymaga ponownego przesyłania całej zawartości tablicy routingu, powodując duże opóźnienia (Speed of convergence).
      • Split Horizon – Funkcja podzielonego horyzontu (Split Horizon), blokuje wysyłanie aktualizacji dotyczących tras routingu, na interfejsie z którego trasy te zostały otrzymane. Tym samym niwelowane jest ryzyko powstawania pętli sieciowych.
      • Poison Reverse – W celu unieważnienia rozgłaszanej trasy routingu, ruter rozpoczyna jej rozgłaszanie z metryką Poison Reverse”, równą 16, co oznacza trasę nieosiągalną (RIP, IGRP).
      • EIGRP – Protokół EIGRP (Enhanced Interior Gateway Routing Protocol) stanowi nowszą wersje protokołu IGRP. Jako protokół routingu dynamicznego posiada pewne cechy protokołów Distance-vector oraz link-state, przez co nazywany jest hybrydą lub zaawansowanym protokołem wektora odległości (advanced distance-vector routing protocol). Oprócz częściowych aktualizacji EIGRP umożliwia wyliczanie metryki na podstawie innych czynników niż ilość przeskoków.
    Funkcjonalność RIPv1 RIPv2 IGRP EIGRP
      Metryk Obydwa protokoły jako metrykę wykorzystują ilość skoków, z ograniczeniem tej liczby do 15 możliwych przeskoków. Obydwa protokoły jako metrykę wykorzystują ilość skoków, z ograniczeniem tej liczby do 15 możliwych przeskoków.   Obydwa protokoły jako metrykę domyślnie wykorzystują pasmo i opóźnienie z dodatkowym wsparciem niezawodności. Obydwa protokoły jako metrykę domyślnie wykorzystują pasmo i opóźnienie z dodatkowym wsparciem niezawodności.  
    Adres rozgłoszeniowy 255.255.255.255 224.0.0.9 255.255.255.255 224.0.0.10
    VLSM NIE TAK NIE TAK
    CIDR NIE TAK NIE TAK
    Sumaryzacja NIE TAK NIE TAK
    Autentykacja NIE TAK NIE TAK
    Algorytm Bellman-Ford Bellman-Ford DUAL DUAL

    Porównanie protokołów klasowych (RIPv1, IGRP) z protokołami bezklasowymi (RIPv2, EIGRP)

    • Protokoły stanu łącza (Link-State) – Tworzą szczegółową mapę topologii sieciowej, na podstawie której szukają najlepszej trasy dotarcia do sieci docelowej. Dzięki wymianie wiadomości LSA (Link-State Advertisements) cała zawartość tablicy routingu jest propagowana jedynie w pierwszej fazie nawiązywania sąsiedztwa z innymi urządzeniami, tym samym poszczególne aktualizacje zawierają jedynie niezbędne informacje, a co za tym idzie zmniejszają ilość niepotrzebnego ruchu sieciowego. Dodatkowym atutem protokołów stanu łącza w porównaniu do protokołów wektora odległości, jest ich znacznie większa zbieżność (zależność ta nie dotyczy protokołu EIGRP który ma porównywalne osiągnięcia jak OSPF czy IS-IS). Dodatkowo protokoły te posiadają następujące cechy:
      • Budują mapę sieci.
      • Mają krótki czas zbieżności.
      • Posiadają budowę hierarchiczną (Uzyskaną poprzez podział sieci na strefy).
    • Protokół wektora ścieżki (Path-Vector BGP) – Określa dokładną ścieżkę jaką musi pokonać pakiet, aby dotrzeć do celu, pokonując na swojej drodze różne systemy autonomiczne AS.

    Migracje

    Migracja protokołu routingu

    • Dystans administracyjny AD (Administrative Distance) – Dystans administracyjny przypisywany do protokołów routingu, umożliwia współistnienie wielu protokołów na tym samym urządzeniu. W przypadku, w którym jedna sieć jest rozgłaszana przez więcej protokołów, router wybiera tą z niższą wartością dystansu administracyjnego.
    • Redystrybucja Routingu (Route Redistribution) – Umożliwia wymienianie informacji na temat sieci pomiędzy różnymi protokołami bądź instancjami tego samego protokołu routingu.

    Migracja protokołu IPv4 do IPv6

    • Check equipment for IPv6 compatibility
    • Run IPv4 and IPv6 concurrently
    • Check the ISP’s IPv6 support
    • Configure NAT64
    • Use NPTv6
    • Send IPv6 traffic over an IPv6-over-IPv4 tunnel

    Pozostałe tematy związane z routing-iem

  • (K) Konfiguracja protokołu RIP**

    (K) Konfiguracja protokołu RIP**

    Konfiguracja protokołu RIP

    Podstawowa konfiguracja protokołu RIP

    Rozgłaszanie sieci za pomocą protokołu RIP

    (config)# router rip

    Przechodzi do poziomu konfiguracji protokołu RIP.

    (config-router)# version 2

    Zmienia wersję protokołu RIP na RIPv2.

    (config-router)# network sieć [maska]

    Rozpoczyna rozgłaszanie wiadomości protokołu RIP, na interfejsach należących do podanej w komendzie sieci. Przy wpisywaniu adresu można skorzystać zarówno z metody klasowej jak i bez klasowej.

    Dezaktywacja interfejsów pasywnych

    (config)# router rip

    Przechodzi do poziomu konfiguracji protokołu RIP.

    (config-router)# passive-interface interfejs

    Wyłącza wysyłanie aktualizacji protokołu RIP, na określonym interfejsie sieciowym.
    Funkcja Passive-Interface w przypadku protokołu RIP tak samo jak w przypadku protokołu EIGRP czy OSPF, blokuje wysyłanie wiadomości Multicast na wskazanym w komędzie interfejsie sieciowym. Jednak w przypadku protokołu RIP dozwolone jest odbieranie wiadomości na wskazanym interfejsie sieciowym.

    Aktywacja interfejsów pasywnych

    (config)# router rip

    Przechodzi do poziomu konfiguracji protokołu RIP.

    (config-router)# passive-interface default

    Wyłącza wysyłanie aktualizacji protokołu RIP, na wszystkich interfejsach sieciowych.

    (config-router)# no passive-interface interfejs

    Włącza wysyłanie aktualizacji protokołu RIP, na określonym interfejsie sieciowym.

    Dodatkowa konfiguracja protokołu RIP

    Sumaryzacja tras routingu

    (config)# router rip

    Przechodzi do poziomu konfiguracji protokołu RIP.

    (config-router)# version 2

    Zmienia wersję protokołu RIP na RIPv2.

    (config-router)# no auto-summary

    Wyłącza funkcję automatycznej sumaryzacji.

    (config-router)# interface interfejs

    Przechodzi do poziomu konfiguracji określonego interfejsu sieciowego.

    (config-if)# ip summary-address rip sieć maska

    Tworzy statyczną sumaryzację względem protokołu RIP.

    Redystrybucja protokołu RIP

    # Konfiguracja Router mapy została opisana w artykule: Router mapa.

    (config)# router rip

    Przechodzi do poziomu konfiguracji protokołu RIP.

    (config-router)# version 2

    Zmienia wersję protokołu RIP na RIPv2.

    (config-router)# redistribute protokół ASN metric 1-16(Hop Count) router-map nazwa-router-mapy

    Rozpoczyna redystrybucje wskazanego protokołu routingu, do protokołu RIP.
    Protokół RIP tak samo jak protokół EIGRP wymaga skonfigurowania domyślnej metryki, przed rozpoczęciem procesu redystrybucji (W przeciwnym wypadku trasy będą rozgłaszane z metryką równą 16, oznaczającą trasy nieosiągalne).

    Propagacja trasy Default Route

    (config)# router rip

    Przechodzi do poziomu konfiguracji protokołu RIP.

    (config-router)# version 2

    Zmienia wersję protokołu RIP na RIPv2.

    (config-router)# default-information orginate [only]

    Włącza propagacje trasy domyślnej wraz z innymi trasami statycznymi.
    * only Zezwala na redystrybucje jedynie trasy domyślnej.

    Równoważne obciążenia sieciowego

    (config)# router rip

    Przechodzi do poziomu konfiguracji protokołu RIP.

    (config-router)# maximum-path 1-32

    Określa maksymalną liczbę jednocześnie wykorzystywanych tras routingu.

    Konfiguracja ustawień RIP z poziomu interfejsu sieciowego

    (config)# interface interfejs

    Przechodzi do poziomu konfiguracji określonego interfejsu sieciowego.

    (config-if)# ip rip v2-broadcast

    Zmienia domyślny multicast-owy adres IP, na który protokół RIPv2 wysyła wiadomości aktualizacyjne, na adres rozgłoszeniowy (255.255.255.255).

    (config-if)# [no] ip split-horizon

    Wyłącza / Włącza funkcję split-horizon na konfigurowanym interfejsie sieciowym.

    (config-if)# ip rip send version {1 / 2 / 1 2}

    Określa jakie wersje wiadomości protokołu RIP, będą propagowana na konfigurowanym interfejsie sieciowym.

    (config-if)# ip rip receive version {1 / 2 / 1 2}

    Określa jakie wersje wiadomości protokołu RIP, będą akceptowane na konfigurowanym interfejsie sieciowym.

    Uwierzytelnianie protokołu RIP

    Konfiguracja funkcji Key-Chain

    (config)# key chain nazwa-key-chain

    Tworzy nowy zestaw kluczy Key Chain.

    (config-keychain)# key 0-2147483647(ID klucza)

    Tworzy nowy klucz Key Chain.

    (config-keychain-key)# key-string [0 / 7](0) klucz

    Określa wartość klucza (Wymaga podania wartości zahaszowanej)

    (config-keychain-key)# cryptographic-algorithm {hmac-sha-1 / hmac-sha-256 / hmac-sha-384 / hmac-sha-512 / md5}

    Definiuje jaki algorytm haszujący będzie wykorzystywany podczas wymiany kluczy pomiędzy urządzeniami.

    (config-keychain-key)# accept-lifetime local ([Czas początkowy] godzina(hh:mm:ss) miesiąc(nazwa angielska) dzień(1-31) rok(1993-2035)) {infinite / duration 1-2147483646(sekundy) / ([Czas końcowy] godzina(hh:mm:ss) miesiąc(nazwa angielska) dzień(1-31) rok(1993-2035)})

    Definiuje okres czasu przez jaki dany klucz będzie używany do odbierania wiadomości (Jest to okres czasu podczas którego dany klucz pozostaje akceptowalny).

    (config-keychain-key)# send-lifetime local ([Czas początkowy] godzina(hh:mm:ss) miesiąc(nazwa angielska) dzień(1-31) rok(1993-2035)) {infinite / duration 1-2147483646(sekundy) / ([Czas końcowy] godzina(hh:mm:ss) miesiąc(nazwa angielska) dzień(1-31) rok(1993-2035)})

    Definiuje okres czasu przez jaki dany klucz będzie używany w wysyłanych wiadomościach (Czas ten powinien być krótszy od czasu „accept-lifetime”).

    Przykładowa konfiguracja funkcji Key-Chain

    (config)# key chain RIP
    (config-keychain)# key 1
    (config-keychain-key)# accept-lifetime local 01:00:00 april 1 2014 01:00:00 may 2 2014
    (config-keychain-key)# send-lifetime local 01:00:00 april 1 2014 01:00:00 may 2 2014
    (config-keychain-key)# key-string Cisco!2345
    (config-keychain-key)# key 2
    (config-keychain-key)# accept-lifetime local 01:00:00 may 1 2014 infinite
    (config-keychain-key)# send-lifetime local 01:00:00 may 1 2014 infinite
    (config-keychain-key)# key-string Cisco1234567

    Okresy czasu akceptacji oraz wysyłania klucza zostały tak skonfigurowane, aby się nachodziły. Dzięki czemu administrator może zniwelować możliwe rozbieżności w konfiguracji czasu lokalnego, względem obydwóch urządzenień. Powyższa konfiguracja oznacza, że przez pewien okres czasu urządzenie będą akceptowały obydwa klucze.

    # show key chain

    Wyświetla konfigurację funkcji Key Chain.

    Przypisywanie funkcji Key-Chain do protokołu RIP (Plain Text)

    (config)# interface interfejs

    Przechodzi do poziomu konfiguracji określonego interfejsu sieciowego.

    (config-if)# ip rip authentication key-chain nazwa-key-chain

    Przypisuje klucze Key Chain, do protokołu RIP, względem konfigurowanego interfejsu sieciowego.

    Przypisywanie funkcji Key-Chain do protokołu RIP (MD5)

    (config)# interface interfejs

    Przechodzi do poziomu konfiguracji określonego interfejsu sieciowego.

    (config-if)# ip rip authentication mode md5

    Określa metodę szurfowania klucza Key Chain na MD5.

    (config-if)# ip rip authentication key-chain nazwa-key-chain

    Przypisuje klucze Key Chain, do protokołu RIP, względem konfigurowanego interfejsu sieciowego.

    Konfiguracja protokołu RIPng

    Podstawowa konfiguracja protokołu RIPng

    Konfiguracja nowej instancji RIPng

    (config)# ipv6 unicast-routing

    Włącza funkcję routingu protokołu IPv6, względem konfigurowanego urządzenia.

    (config)# ipv6 router rip nazwa-instancji-RIP

    Przechodzi do poziomu konfiguracji protokołu RIPng.

    (config-rtr)# maximum-patch 1-16(16)

    Określa maksymalną ilość tras równoważnego obciążenia.

    Aktywacja protokołu RIPng względem interfejsu sieciowego

    (config)# interface interfejs

    Przechodzi do poziomu konfiguracji określonego interfejsu sieciowego.

    (config-if)# ipv6 rip nazwa-instancji-RIP enable

    Aktywuje protokół RIP na konfigurowanym interfejsie sieciowym.

    # show ipv6 eigrp neighbor

    Wyświetla aktywne relację sąsiedztwa.

    Dezaktywacja interfejsów pasywnych

    (config)# ipv6 router rip nazwa-instancji-RIP

    Przechodzi do poziomu konfiguracji protokołu RIPng.

    (config-rtr)# passive-interface interfejs

    Wyłącza wysyłanie aktualizacji protokołu RIP na wskazanym interfejsie.

    Aktywacja interfejsów pasywnych

    (config)# ipv6 router rip nazwa-instancji-RIP

    Przechodzi do poziomu konfiguracji protokołu RIPng.

    (config-rtr)# passive-interface default

    Wyłącza wysyłanie aktualizacji protokołu RIP na wszystkich interfejsach.

    (config-rtr)# no passive-interface interfejs

    Włącza wysyłanie aktualizacji protokołu RIP na wskazanym interfejsie.

    Komendy SHOW, CLEAR oraz DEBUG

    Komendy show RIP

    # show ip route

    Wyświetla zawartość tablicy routingu.

    # show ip route rip

    Wyświetla wszystkie trasy routingu pozyskane za pomocą protokołu RIP, jakie znajdują się w tablicy routingu.

    # show ip protocols

    Wyświetla ustawienia wszystkich skonfigurowanych protokołów routingu dynamicznego. W tym najważniejsze informacje dotyczące konfiguracji protokołu RIP.

    # show ip rip database

    Wyświetla zwartość bazy protokołu RIP.

    Komendy show RIPng

    # show ipv6 route

    Wyświetla zawartość tablicy routingu, względem protokołu IPv6.

    # show ipv6 route rip

    Wyświetla wszystkie trasy routingu pozyskane za pomocą protokołu RIP, jakie znajdują się w tablicy routingu, względem protokołu IPv6.

    # show ipv6 protocols

    Wyświetla ustawienia wszystkich skonfigurowanych protokołów routingu dynamicznego. W tym najważniejsze informacje dotyczące konfiguracji protokołu RIPng.

    # show ipv6 rip database

    Wyświetla zwartość bazy protokołu RIPng.

    # show ipv6 rip next-hops

    Wyświetla

    Pozostałe tematy związane z protokołem RIP

  • (Ts) Troubleshooting protokołu RIP**

    (Ts) Troubleshooting protokołu RIP**

    Troubleshooting brakujących tras routingu

    Wstęp do zagadnienia

    • Protokół RIP nie nawiązuje relacji sąsiedztwa pomiędzy sąsiednimi ruterami, związku z tym proces troubleshooting-u nie będzie dotyczył rozwiązywania problemów związanych z relacjami sąsiedztwa a procesem wymiany informacji o trasach routingu.
    • Podstawową komendą używaną w celu weryfikacji tras pozyskanych za pomocą protokołu RIP jest komenda [show ip rip database].
    • komendą używaną w celu weryfikacji konfiguracji protokołu RIP, jest komenda [show ip protocols].

    Przyczyny Troubleshooting

    Interface is shut down

    • Interfejs uczestniczący w procesie protokołu RIP musi być aktywny up/up. Status interfejsu można zweryfikować za pomocą komendy [show ip interface brief] bądź komendy [show interface interfejs].

    Wrong subnet

    • Aby rutery mogły między sobą wymieniać aktualizacje protokołu RIP, muszą znajdować się w tej samej sieci, w przeciwnym wypadku zignorują nadchodzące aktualizacje.
    • W przypadku wykrycia problemu ze źle skonfigurowaną siecią, komenda [debug ip rip] wyświetli następujący komunikat: [RIP: ignored v2 update from bad source 10.1.12.2 on  gigabitethernet 1/0].

    Bad or missing network statements

    • Aktywacja protokołu RIP względem określonego interfejsu sieciowego, następuje za pomocą komendy [network adres-IP] wydanej w trybie konfiguracji protokołu RIP.
    • Aby zweryfikować czy wszystkie interfejsy sieciowe należą do procesu RIP, należy wykorzystać komendę [show ip protocols] bądź komendę [show running-config | section router rip].

    Passive interface

    • Funkcja pasywnego interfejsu „Passive Interface”, blokuje wysyłanie aktualizacji protokołu RIP na wskazanym interfejsie sieciowym, jednocześnie zezwalając na odbierania aktualizacji od innych urządzeń. Ma to na celu zarówno względy bezpieczeństwa związane z blokowanie poufnych informacji, na temat topologii sieciowej jak i ogranicza zbędny ruch.
    • Konfigurację funkcji pasywnego interfejsu można zweryfikować za pomocą komendy [show ip protocols].

    Wrong version

    • Podstawowa konfiguracja protokółu RIP, domyślnie działa w starszej, pierwszej wersji protokołu (RIPv1). Należy przy tym pamiętać że rutery skonfigurowane w wersji drugiej, wysyłają aktualizacji w wersji niekompatybilnej z wersją pierwszą, związku z tym nie są wstanie wymieniać pomiędzy sobą tras routingu dynamicznego.
    • Obecnie wykorzystywaną wersję protokołu RIP można określić za pomocą komendy [show ip protocols] a zmienić za pomocą komendy [version {1 / 2}] wydanej w trybie konfiguracji protokołu RIP.
    • W przypadku wykrycia problemu z wersją protokołu RIP, komenda [debug ip rip] wyświetli następujący komunikat: [RIP: ignored v2 packet from 10.1.12.1 (inlegal vesrion)] bądź [RIP: ignored v1 packet from 10.1.12.1 (inlegal vesrion)].

    Max hop count exceeded

    • Protokół RIP wspiera maksymalnie 15 przeskoków z czego przeskok 16 określany jest jako nieosiągalny. Trasa posiadająca wartość 16, zostanie zapisana w tablicy topologii lecz nie zostanie przekazana do tablicy routingu.
    • Trasa routingu może osiągnąć wartość 16 przeskoków z powodu:
      • Zbyt dużej topologii fizycznej.
      • Zbyt dużej wartości metryki podczas redystrybucji.
      • Zbyt dużej wartości „offset”.
    • Informacje na temat funkcji „offset”, względem protokołu RIP można wyświetlić za pomocą komendy [show ip protocols].
    • W przypadku otrzymania trasy z wartością metryki równą 15, komenda [debug ip rip] wyświetli następujący komunikat debug: [RIP: recived v2 update from 10.1.12.2 on gigabitethernet 1/0 10.1.3.0/24 via 0.0.0.0 in 16 hops (inaccessible)].

    Authentication

    • Protokół RIP umożliwia uwierzytelnianie nadchodzących aktualizacji za pomocą funkcji key-chain, czystego teksu bądź klucza md5. Konfigurację funkcji uwierzytelniania można wyświetlić za pomocą komendy [show ip protocols].
    • W przypadku wykrycia problemu z uwierzytelnianiem, komenda [debug ip rip] wyświetli następujący komunikat: [RIP: ignored v2 packet from 10.1.12.1 (Invalid authentication)].

    Route filtering

    • Protokół RIP umożliwia filtrację tras routingu na postawie listy ACL, prefix listy oraz router map-y.
    • Aby zweryfikować konfigurację funkcji filtrowania tras routingu dynamicznego, należy sprawdzić czy Lista dystrybucyjna (Distribute List):
      • Ma właściwy kierunek.
      • Jest przypisane do właściwego interfejsu.
      • Wykorzystuje właściwą listę ACL.
      • Wykorzystuje właściwą prefix listę.
      • Wykorzystuje właściwą router mapę.
    • Obecną konfigurację list dystrybucyjnych (Distribute List) można zweryfikować za pomocą komendy [show ip protocols], [show ip prefix-list] bądź komendy [show route-map].

    Split horizon

    • Funkcja Split Horizon zapobiega powstawaniu pętli sieciowych, uniemożliwiając ruterowi wysyłanie wiadomości aktualizacyjnych na temat sieci, poprzez interfejs, z którego sieci te otrzymał. Problem w tym przypadku stanowi topologia wielodostęp-owa w której rutery z włączoną opcją podzielonego horyzontu nie będą w stanie przekazać aktualizacji otrzymanych z jednego rutera do drugiego, podłączonego do tego samego interfejsu.
    • Konfiguracje funkcji Split Horizon można zweryfikować za pomocą komendy [show ip interface interfejs].

    Autosummarization

    • Autosumaryzacja protokołu RIP jest możliwa, jeżeli topologia sieci wykorzystuje podział klasowy.
      • Contiguous Network – Topologia, w której sieć klasowa nie jest podzielona ani odseparowana poprzez inną podsieć.
      • Discontiguous Network – Topologia, w której sieć klasowa jest podzielona oraz odseparowana przez inną podsieć.
    Przykładowa topologia obrazująca problem związany z autosumaryzacją

    Better source of information

    • Protokół RIP w systemie Cisco IOS posiada wartość Dystansu Administracyjnego AD równą 120, jeżeli inny protokół routingu z mniejszą wartością AD bądź wpis statyczny, również rozgłasza daną trasę to może ona znaleźć się w tablicy routingu za pomocą innego źródła prowadząc przez inny adres następnego przeskoku.

    ACLs

    • Listy ACL mogą blokować aktualizacje protokołu RIP za pomocą ostatniego wpisu końcowego „deny ip any any”. Aby do tego nie dopuścić należy odblokować adres multicast 224.0.0.9 na porcie 520 protokołu UDP.

    Load balancing

    • Protokół RIP wspiera funkcję równoważenia ruchu sieciowego pomiędzy trasami z równą wartością metryki. Jeżeli jednak wartość połączeń równoważonych wynosi 1, funkcja nie zadziała prawidłowo. Aby zweryfikować konfiguracje funkcji Load Balance należy wykorzystać komendę [show ip protocols].

    Problemy związane z protokołem RIP, RIPng

    Brakująca trasa domyślna

    • Protokół RIP może rozgłaszać trasę domyślną nawet jeśli nie jest one skonfigurowana na lokalnym urządzeniu, co wiąże się z ryzykiem że adres następnego przeskoku dla takiej trasy będzie nieosiągalny, a tym samym cały przychodzący ruch sieciowy zostanie porzucony.

    Podstawowa weryfikacja konfiguracji RIPng

    • Protokół RIPng wykorzystuje adresację protokołu IPv6, związku z tym wymaga aktywacji funkcji routingu względem tego protokołu. Funkcje routingu można aktywować za pomocą komendy [ipv6 unicast-routing] wydanej w trybie konfiguracji globalnej a sprawdzić za pomocą komendy [show running-configuration | include ipv6 unicast-routing].

    Pozostałe tematy związane z protokołem RIP

  • (T) Teoria protokołu RIP*

    (T) Teoria protokołu RIP*

    Wstęp do protokołu RIP

    Właściwości protokołu RIP

    • Domyślna wartość administracyjna AD 120.
    • Domyślne ustawienia komunikacji:
      • Wykorzystywany port: UDP 520, RIPng UDP 521.
      • Wykorzystywany adres IP: RIPv1 IPv4 255.255.255.255, RIPv2 IPv4 224.0.0.9.

    Cechy protokołów Distance Vector

    • Protokoły Distance Vector, opierają swoje działanie na dwóch czynnikach.
      • Dystansie (Distance) określającym odległość od urządzenia lokalnego do sieci docelowej, w ilości przeskoków (To znaczy ilości ruterów przez które musi przejść pakiet, aby dotarł do celu).
      • Wektorze (Vector) wskazującym kierunek (Interfejs wyjściowy) poprzez który osiągalna jest sieć docelowa.

    Funkcje protokołu RIP

    • Counting to Infinity – Protokół RIP po otrzymaniu informacji o adresie następnego przeskoku dla sieci docelowej, zwiększa wartość metryki trasy do niej prowadzącej. Jeżeli metryka osiągnie wartość 16, ruter usunie daną trasę z tablicy routingu.
    • Split Horizon – Funkcja podzielonego horyzontu (Split Horizon), blokuje wysyłanie aktualizacji dotyczących tras routingu, na interfejsie z którego trasy te zostały otrzymane. Tym samym niwelowane jest ryzyko powstawania pętli sieciowych.
    • Split Horizon with Poison Reverse
    • Route Poisoning – Trasa „Infinity” z metryką równą 16, w przypadku protokołów Distance Vector oznacza sieć niedostępną. Przykładowo, w sytuacji przejścia jednego z interfejsów sieciowych w stan „Down”, ruter usunie daną sieć z tablicy routingu rozgłaszając ją z metryką „Infinity”.

    Protokół RIPv1 vs RIPv2

    Podstawowe zasady protokołu RIP

    • Protokół RIP nie nawiązuje relacji sąsiedztwa jak i nie wysyła wiadomości powitalnych Hello, w zamian za to wykorzystuje mechanizm systematycznych aktualizacji zawierających całą zawartość Tablicy Routingu.
    • W przypadku zajścia zmian w topologii sieciowej RIP wysyła dodatkową aktualizację Triggered Updatew której, zawarte są jedynie informację o zmianach zaszłych w topologii sieci.
    • Pojęcia związane z protokołem RIP:
      • Update interval / timer – Określa odstępy czasowe w wysyłaniu wiadomości aktualizacyjnych (30 sekund).
      • Invalid After Timer – Określa czas, po którym trasa routingu zostanie uznana za nieosiągalną, rozpoczynając tym samym odliczanie czasu „Holddown”. Każdorazowe otrzymanie aktualizacji zawierającej informacje o danej trasie, zeruje wartość czasu „After Timer”. (Domyślny wartość czasu wynosi 180 sekund).
      • Holddown Timer – Po upływie czasu „After Timer” względem jednej z tras routingu, ruter rozpoczyna proces rozgłaszania danej trasy z metryką „Infinity”, jednocześnie nie ignorując nowe aktualizacje dotyczące danej trasy (Domyślny czas wynosi 180 sekund).
      • Flushed After Timer – Określa czas, po upływie którego trasa routingu zostanie usunięta z tablicy routingu. Każdorazowe otrzymanie aktualizacji zawierającej informacje o danej trasie zeruje wartość czasu Flushed After Timer. (Domyślny czas wynosi 240 sekund).
    Aktualizacje RIP są wysyłane poprzez port 520 (UDP) na adresu Multicast 224.0.0.9 dla protokołu RIPv2 jak i adres rozgłoszeniowy 255.255.255.255 dla RIPv1.

    RIPv1 a RIPv2 podobieństwa i różnice

    Funkcjonalność RIPv1 RIPv2
    Metric Hop count Hop count
    Update Destination 255.255.255.255 224.0.0.9
    Counting to Infinity Yes Yes
    Split Horizon Yes Yes
    Poisoning Yes Yes
    Full update Yes Yes
    Triggered Update   Yes
    VLSM No Yes
    CIDR No Yes
    Summarization No Yes
    Authentication No Yes
    Algorithm Bellman-Ford Bellman-Ford
    Transport Protocol   UDP port 520
    Update Interval 30 Seconds 30 Seconds

    RIPv1 a RIPv2 podobieństwa i różnice

    Budowa wiadomości RIPv2

    Budowa wiadomości protokołu RIPv2 („Request” oraz „Response”)
    • Budowa wiadomości protokołu RIPv2:
      • Command
      • Version
      • Adress Family ID
      • Route tag
      • IP Address
      • Subnet Mask
      • Next Hop
      • Metric
    • Protokół RIP wykorzystuje dwa rodzaje wiadomości „Request” oraz „Response”. Wiadomość „Request” jest wysyłana do sąsiedniego rutera w celu natychmiastowego uzyskania pełnej bądź częściowej aktualizacji „Triggered Update”, przed upływem czasu „update Timer”. Natomiast Wiadomość „Response” stanowi odpowiedź zawierającą informację o sieciach których dotyczyło zapytanie „Request”.
    • W celu uzyskania pełnej aktualizacji Tablicy Routingu, ruter wysyła wiadomość „Request” z jednym wpisem zawierającym wartość „Address Family ID” ustawioną na 0 oraz metryką ustawioną na 16. Przykładową sytuacją wymagającą pełnej aktualizacji jest pierwsza wymiana wiadomości pomiędzy ruterami bądź zastosowanie komendy [clear ip route] na jednym z urządzeń.

    Funkcja Load Balance

    • Umożliwia równomierne obciążenie dwóch tras prowadzących do tej samej sieci docelowej (Jeśli posiadają one taką samą wartość metryki).
    • Ilość tras wykorzystywanych do równomiernego obciążenia może być modyfikowana komendą [maximumpaths liczba] (Domyślana wartość wynosi 4).

    Protokół RIPng

    Porównanie protokołu RIPng z protokołem RIPv2

    Feature RIPv2 RIPng
    UDP port UDP 520 UDP 521
    Support automatic summarization Yes No
    Multicast Update Destination 224.0.0.9 FF02::9

    Różnice występujące pomiędzy protokołem RIPv2 a RIPng

    Pozostałe tematy związane z protokołem RIP

  • (K) Key Chain

    (K) Key Chain

    Key Chain

    Konfiguracja funkcji Key-Chain

    (config)# key chain nazwa-key-chain

    Tworzy nowy zestaw kluczy Key Chain.

    (config-keychain)# key 0-2147483647(ID klucza)

    Tworzy nowy klucz Key Chain.

    (config-keychain-key)# key-string [0 / 7](0) klucz

    Określa wartość klucza (Wymaga podania wartości zahaszowanej)

    (config-keychain-key)# cryptographic-algorithm {hmac-sha-1 / hmac-sha-256 / hmac-sha-384 / hmac-sha-512 / md5}

    Definiuje jaki algorytm haszujący będzie wykorzystywany podczas wymiany kluczy pomiędzy urządzeniami.

    (config-keychain-key)# accept-lifetime local ([Czas początkowy] godzina(hh:mm:ss) miesiąc(nazwa angielska) dzień(1-31) rok(1993-2035)) {infinite / duration 1-2147483646(sekundy) / ([Czas końcowy] godzina(hh:mm:ss) miesiąc(nazwa angielska) dzień(1-31) rok(1993-2035)})

    Definiuje okres czasu przez jaki dany klucz będzie używany do odbierania wiadomości (Jest to okres czasu podczas którego dany klucz pozostaje akceptowalny).

    (config-keychain-key)# send-lifetime local ([Czas początkowy] godzina(hh:mm:ss) miesiąc(nazwa angielska) dzień(1-31) rok(1993-2035)) {infinite / duration 1-2147483646(sekundy) / ([Czas końcowy] godzina(hh:mm:ss) miesiąc(nazwa angielska) dzień(1-31) rok(1993-2035)})

    Definiuje okres czasu przez jaki dany klucz będzie używany w wysyłanych wiadomościach (Czas ten powinien być krótszy od czasu „accept-lifetime”).

    Przykładowa konfiguracja funkcji Key-Chain

    (config)# key chain EIGRP
    (config-keychain)# key 1
    (config-keychain-key)# accept-lifetime local 01:00:00 april 1 2014 01:00:00 may 2 2014
    (config-keychain-key)# send-lifetime local 01:00:00 april 1 2014 01:00:00 may 2 2014
    (config-keychain-key)# key-string Cisco!2345
    (config-keychain-key)# key 2
    (config-keychain-key)# accept-lifetime local 01:00:00 may 1 2014 infinite
    (config-keychain-key)# send-lifetime local 01:00:00 may 1 2014 infinite
    (config-keychain-key)# key-string Cisco1234567

    Przykładowa konfiguracja funkcji Key-Chain.

    Key Chain a inne protokoły

    Przypisywanie funkcji Key-Chain do protokołu EIGRP

    (config)# interface interfejs

    Przechodzi do poziomu konfiguracji określonego interfejsu sieciowego.

    (config-if)# ip authentication mode eigrp ASN md5

    Określa metodę autentykacji wiadomości protokołu EIGRP.

    (config-if)# ip authentication key-chain eigrp ASN nazwa-key-chain

    Definiuje hasło wykorzystywane do uwierzytelnienia odbieranych oraz wysyłanych wiadomości protokołu EIGRP.
    Okresy czasu akceptacji oraz wysyłania klucza zostały tak skonfigurowane, aby się nachodziły. Dzięki czemu administrator może zniwelować możliwe rozbieżności w konfiguracji czasu lokalnego, względem obydwóch urządzenień. Powyższa konfiguracja powoduje, że przez pewien okres czasu urządzenie będą akceptowały obydwa klucze.
  • (K) Wireshark*

    (K) Wireshark*

    Filtrowanie ruchu sieciowego:

    Filtrowanie ruchu na podstawie protokołów

    Serach> ip.proto eq ID

    Filtruje ruch sieciowy w poszukiwaniu pakietów określonego protokołu.

    Serach> bootp

    Filtruje ruch sieciowy w poszukiwaniu wszelkich wiadomości protokołu DHCP.

    Serach> icmp

    Filtruje ruch sieciowy w poszukiwaniu wszelkich wiadomości ICMP.

    Serach> cdp

    Filtruje ruch sieciowy w poszukiwaniu wszelkich wiadomości protokołu CDP.

    Serach> hsrp

    Filtruje ruch sieciowy w poszukiwaniu wszelkich wiadomości protokołu HSRP.

    Filtrowanie ruchu na podstawie adresów IP

    Serach> ip.src==adres-IP

    Wyświetla cały ruch z określonym adresem źródłowym.

    Serach> ip.dst==adres-IP

    Wyświetla cały ruch z określonym adresem docelowym.

    Serach> ip.addr==adres-IP

    Wyświetla cały ruch z określonym adresem IPv4.

    Serach> ipv6.addr==adres-IP

    Wyświetla cały ruch z określonym adresem IPv6.

    Filtrowanie protokołu EIGRP

    Serach> (eigrp.opcode == 5) && (eigrp.ack == 0)

    Wyświetla wiadomości powitalne (Hello).

    Serach> eigrp.stub_flags

    Wyświetla wiadomości powitalne (Hello), propagowane przez rutery Stub.

    Serach> eigrp.opcode == 1

    Wyświetla zarówno pełne (Full) jak i częściowe (Partial), wiadomości aktualizacyjne (Update).

    Serach> (eigrp.opcode == 1) && !(ip.dst == 224.0.0.10)

    Wyświetla pełne (Full), wiadomości aktualizacyjne (Update).

    Serach> (eigrp.opcode == 1) && (ip.dst == 224.0.0.10)

    Wyświetla częściowe (Partial), wiadomości aktualizacyjne (Update).

    Serach> (eigrp.opcode == 1) && (expert.message == “Destination unreachable”)

    Wyświetla wiadomości aktualizacyjne (Update), zawierające trasy “poison reverse”.

    Serach> (eigrp.opcode == 5) && !(eigrp.ack == 0)

    Wyświetla wiadomości Acknowledge.

    Serach> eigrp.opcode == 3

    Wyświetla wiadomości Query.

    Serach> eigrp.opcode == 4

    Wyświetla wiadomości Replay.

    Przykładowe filtru ruchu sieciowego

    Serach> eth.addr[0:3]==00:06:5B

    Wyświetla adresy MAC przypisane przez firmę DELL.

    Wyrażenie wykorzystywane podczas filtracji:

    Operacje logiczne

    Serach> wyrażenie1 and wyrażenie2

    Wyświetla wyrażenie pierwsze i drugie.

    Serach> wyrażenie1 or wyrażenie2

    Wyświetla wyrażenie pierwsze bądź drugie.

    Serach> tcp.port eq port

    Wyświetla ruch kierowany na dany port TCP.

    Wyrażenia filtrujące

    Serach> tcp.port operator-logiczny port

    Wyświetla ruch kierowany na dany port TCP.

    Filtrowanie ruchu na podstawie adresu IP

    Serach> host adres-IP

    Wyświetla ruch sieciowy pochodzący

    Serach> net adres-IP/prefix

    Wyświetla