Przykładowe problemy związane z protokołem Frame Relay
Enkapsulacja na urządzeniach nie jest zgodna.
DLCI jest nieaktywne.
DLCI zostało podłączone do złego interfejsu.
Lista ACL została źle skonfigurowana.
Brakuje komendy [frame-relay map].
Brakuje pod-komendy [broadcast].
Komendy show
Komenda [show frame-relay pvc] wyświetla informacje o:
DE, FECN, BECN.
Komenda [show frame-relay lmi] wyświetla informacje o:
Wykorzystywanym standardzie funkcji Keepalive (LMI), DLCI.
Komenda [show frame-relay map] wyświetla informacje o:
Statycznym mapowaniu adresu następnego przeskoku do DLCI.
Dodatkowe zagadnienia związane z troubleshooting-iem połączeń Frame Relay
W przypadku domyślnej konfiguracji połączenia Frame Relay, urządzenie nie jest wstanie za pingować na adres IP własnego interfejsu serialowego. Dzieje się tak ponieważ:
Interfejs serialowy składa się z dwóch niezależnych oraz niepołączonych ze sobą elementów (TX oraz RX). TX służy do nadawania ruchu sieciowego, natomiast RX do jego odbierania. Tym samym ruch sieciowy kierowany na adres IP przypisany do lokalnego interfejsu serialowego, musi być najpierw wysłany do sąsiedniego rutera skąd będzie przekierowany z powrotem. Jako że mapowanie określa jedynie adres sąsiedniego urządzenia, ruter nie wie gdzie wysłać ruch kierowany do siebie samego.
Aby uzyskać możliwość ping-owania na własny adres IP interfejsu serialowego, należy skonfigurować dodatkowe mapowanie za pomocą komendy [frame-relay map ip adres-IP(IP lokalnego urządzenia)16-1007(DLCI lokalne)] wydanej w trybie konfiguracji interfejsu serialowego.
Pozostałe tematy związane z protokołem Frame Relay
Cost– Protokół Frame Relay stanowi alternatywę dla drogich połączeń dzierżawionych (Leased lines).
LMI (Local Management Interface)– Wymienia wiadomość Keepalive utrzymujące kontakt pomiędzy urządzeniem dostawcy ISP DCE(Data Communication Equipment) a ruterem klienta DTE(Data Terminal Equipment). Funkcja LMI wspiera trzy standardy: Cisco, ANSI oraz q933a. O tym który z nich będzie wykorzystany podczas danej sesji protokołu Frame Relay, decyduje mechanizm auto wykrywania (Autosense). Wysyła on wiadomości we wszystkich dostępnych standardach LMI, oczekując odpowiedzi w standardzie wspieranym przez sąsiednie urządzenie.
Mechanizm Autosense jest aktywowany gdy:
Interfejs sieciowy znajduje się w stanie up/down.
Interfejs jest skonfigurowany jako zakończenie DTE.
Standart LMI nie jest statycznie skonfigurowany.
Powyżej wspomniane pojęcia DTE oraz DCE nie odnoszą się do rodzaju zakończenia kabla serialowego.
Wiadomości LMI inquiry są wysyłane jedynie przez urządzenie DTE, w odpowiedzi na które urządzenie DCE wysyłają wiadomości LMI Status Response. Jeżeli obydwa urządzenia posiadają domyślną konfigurację (DTE) interfejs serialowy jednego z urządzeń, będzie znajdować się w stanie (up / down (looped)). Ponieważ wiadomość LMI inquiry wysłana przez urządzenie pierwsze (1) zostanie porzucona przez sąsiada (Urządzenie DTE nigdy nie powinno takiej otrzymać) jego interfejs pozostanie w stanie (up / down). Następnie urządzenie drugie (2) wyśle własną wiadomość LMI inquiry, która zostanie odebrana przez urządzenie pierwsze (1) jako zapętlenie łącza (up / down (looped)).
Połączenie Frame Relay z dwoma urządzeniami DTE można nawiązać jedynie poprzez wyłączenie funkcji KeepAlive.
Virtual Circuits– Protokół Frame relay prowadzi komunikację (Connection-Oriented data link layer), nawiązując połączenia pomiędzy dwoma urządzeniami na podstawie numerów identyfikacyjnych DLCI(Data-Link Connection Identifier), w sieci pakietowej PSN(Packet-Switched Network). Wirtualne połączenia (Virtual Circuits) dzielą się na:
SVC(Switched Virtual Circuits) – Tymczasowe połączenia Frame Relay wykorzystywane w sytuacjach wymagających jedynie sporadycznego przesyłania danych pomiędzy urządzeniami DTE. Sesja komunikacyjna składa się ze stanów:
Call setup– Połączenie Virtual Circuits zostało nawiązane pomiędzy dwoma urządzeniami DTE.
Data transfer– Dane są przesyłane pomiędzy urządzeniami DTE poprzez Virtual Circuits.
Idle– Połączenie pomiędzy urządzeniami jest aktywne, jednak żadne dane nie są przesyłane. Jeżeli stan ten utrzyma się przez określony czas, status połączenia zostanie zmieniony na „Call termination”.
Call termination– Połączenie pomiędzy urządzeniami DTE zostało zawieszone.
PVC(Permanent Virtual Circuits) – Stabilne połączenie Frame Relay, aktywne nawet w przypadku braku ruchu sieciowego pomiędzy dwoma urządzeniami DTE. Sesja komunikacyjna składa się ze stanów:
Data transfer– Dane są przesyłane pomiędzy urządzeniami DTE poprzez Virtual Circuits.
Idle – Połączenie pomiędzy urządzeniami jest aktywne, jednak żadne dane nie są przesyłane. Utrzymanie tego stanu nie ma wpływu na połączenie Frame Relay.
DLCI(Data-Link Connection Identifier) – Identyfikuje jedną stronę połączenia wirtualnego (Virtual Circuits).
IARP (Inverse Address Resolution Protocol)– Umożliwia wykrycie adresu następnego przeskoku, należącego do konfigurowanego połączenia DLCI. Automatycznie tworząc odpowiednie mapowanie (DLCI to Next hop IP address), które domyślnie jest konfigurowane za pomocą komendy [frame-relay map ip adres-IP DLCI]. W systemie Cisco IOS możliwość automatycznego wykrycia adresu następnego przeskoku, wymaga wstępnego określenia enkapsulacji na obydwóch urządzeniach DTE za pomocą komendy [encapsulation frame-relay] wydanej w trybie konfiguracji interfejsu serialowego.
Protokół IARP wysyła na interfejsach serialowych ramkę powitalną, informującą sąsiednie urządzenia o swoim adresie MAC oraz adresie IP. W odpowiedzi oczekując informacji o swoich sąsiadach.
Istnieje możliwość wyłączenia protokołu IARP za pomocą komendy [no frame-relay Inverse-arp] wydanej w trybie konfiguracji interfejsu serialowego, jednak nie istnieje możliwość zablokowania odpowiedzi na ramkę IARP.
Parametry protokołu Frame Relay negocjowane z dostawcą ISP
Parametry transmisji– Parametry negocjonowane pomiędzy klientem a dostawcą ISP:
CIR (Committed Information Rate)– Określa minimalną przepustowość łącza Frame Relay, gwarantowaną przez dostawcę ISP względem określonego połączenia Virtual Circuits.
EIR(Excess Information Rate) – Określa maksymalną przepustowość łącza Frame Relay, dla danego klienta.
Mechanizmy sterowania przeciążeniami – Kontrolą przeciążeń zajmują się po części urządzenie DCE oraz DTE. W sytuacji przekroczenia uzgodnionej wartości EIR urządzenie DCE ostrzerze DTE najczęściej jawnie, za pomocą jednobitowych informacji umieszczanych w nagłówku ramki Ethernet-owej: odbiorcę bitem FECN(Forward Explicit Congestion Notification) a nadawce bitem BECN(Backward Explicit Congestion Notification) Jeżeli nadawca DTE nie odpowie na sygnał BECN urządzenie dostawcy ISP (DCE) zacznie porzucać nadmiarowe ramki.
CLLM(Consolidated Link Layer Management) – Inny mechanizmy sterowania przeciążeniami.
Access Rate – Określa maksymalną przepustowość łącza Frame Relay, gwarantowaną przez ISP.
Congestion – Umożliwia monitorowanie wchodzącego jak i wychodzącego ruchu sieciowego. Składa się z:
DE(Discard Eligibility) – Bitu nagłówka umożliwiającego wykrycie jak dużo ramek zostało porzuconych.
FECN(Forward Explicit Congestion Notification) – Bitu nagłówka urządzenia nadającego, zawierającego prośbę by urządzenie odbiorcze zmniejszyło ilość zapytań o dane.
BECN(Backward Explicit Congestion Notification) – Bitu nagłówka urządzenia odbiorczego, zawierającego prośbę by urządzenie nadające wysyłało dane wolniej.
Frame Relay Nonbroadcast Multiple Access
Sieć Frame Relay jest siecią NBMA, co oznacza że ruch rozgłoszeniowy nie jest obsługiwany. Dokładnie rzecz ujmując przełączniki Frame Relay nie przejmują się przesyłanym ruchem, co oznacza że nie mogą go zareplikować, tworząc z jednego pakietu wielu pakietów. Opcjonalna komenda „broadcast” wykorzystywana w mapowaniu DLCI, omija to ograniczenie tworząc oddzielne ramki unicast względem każdego sąsiedniego urządzenia (Z punktu widzenia urządzenia lokalnego zostanie wysłany jeden pakiet ale dwie ramki Ethernet-owe).
Pozostałe tematy związane z protokołem Frame Relay
Przykładowa konfiguracja protokołu Point to Point Frame Relay została opisana w artykule: Point to Point Frame Relay.
Point to Point Frame Relay
Protokół Frame Relay umożliwia automatyczne mapowanie adresów IP oraz wykrywanie wartości DLCI, jaka powinna być skonfigurowana na interfejsie sieciowym.
(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.
Określa jaki protokół będzie wykorzystywany w celu testowania dostępności drugiej strony połączenia serialowego (Powyższe protokoły działają analogicznie do wiadomość Keepalive w warstwie drugiej).
(config-subif)#bandwidth 1-10000000(Kilobity na sekundę)*
Określa przepustowość łącza w celu informacyjnym dla protokołów routingu dynamicznego czy protokołu QoS.
(config-if)#ip address adres-IP
Przypisuje adres IP do konfigurowanego interfejsu serialowego.
Protokół Frame Relay umożliwia automatyczne mapowanie adresów IP oraz wykrywanie wartości DLCI, jaka powinna być skonfigurowana na interfejsie sieciowym. Jenak w przypadku pod-interfejsów wartość DLCI musi być określona statycznie za pomocą komendy [frame-relay interface-dlci 16-1007(DLCI].
(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.
Określa jaki protokół będzie wykorzystywany w celu testowania dostępności drugiej strony połączenia serialowego (Powyższe protokoły działają analogicznie do wiadomość Keepalive w warstwie drugiej).
(config)#interface serial interfejs.pod-interfejs point-to-point
Przechodzi do poziomu konfiguracji określonego pod-interfejsu serialowego.
(config-subif)#bandwidth 1-10000000(Kilobity na sekundę)*
Określa przepustowość łącza w celu informacyjnym dla protokołów routingu dynamicznego czy protokołu QoS.
(config-subif)#ip address adres-IP
Przypisuje adres IP do konfigurowanego pod-interfejsu serialowego.
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).
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.
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.
Wyświetla szczegółowe dane interfejsów z aktywnym protokołem EIGRP. Posiada informacje o czasie „hello-interval” oraz „hold-time” jak i dane dotyczące podzielonego horyzontu (split horizon).
# show ip eigrp interfaces
Wyświetla interfejsy, na których protokół EIGRP został włączony (Bez interfejsów pasywnych).
# show ip protocols
Wyświetla informację o wszystkich dynamicznych protokołach routingu skonfigurowanych na danym urządzeniu. Posiada dane dotyczące aktywnych sieci (komenda network) oraz aktywnych sąsiadów danego urządzenia. W przypadku protokołu EIGRP komenda ta dodatkowo zawiera informacje o ustawieniach wartości K, auto sumaryzacji, numerze AS, wartości ID urządzenia, maksymalnej ilości przeskoków, maksymalnej ilości tras równomiernego obciążenia czy opcji równomiernego obciążenia ruchu pomiędzy trasami o różnej wartości metryki.
Zarówno komenda [show ip eigrp neighbor] jak i komenda [show ip protocols] wyświetlają informację o sąsiadach.
# show ip eigrp neighbor
Wyświetla wszystkie aktywne relacja sąsiedztwa. Zawiera następujące informacje: * SRTT(Smooth Round-Trip Time) – Określa ilość wiadomości EIGRP na które ruter nie otrzymał potwierdzenia Ack. * Q Cnt (Queue count) – Określa ilość wysłanych wiadomości EIGRP (Update, Query, jak i Reply), na które lokalne urządzenie nie otrzymało odpowiedzi Ack (Wartość ta powinna wynosić 0). * RTO (Retransmission Timeout) – Określa czas oczekiwania systemu, przed retransmitowaniem wiadomości EIGRP.
# show ip eigrp topology
Wyświetla wszystkie sieci docelowe zapisane przez protokół EIGRP, wraz z trasami prowadzącymi do następnego przeskoku (Successor i Feasible Successor).
# show ip eigrp topology all-links
Wyświetla sieci docelowe wraz z wszystkimi trasami do nich prowadzącymi.
# show ip eigrp topology [all-links] EIGRP-IPv4 Topology Table for AS(1)/ID(10.0.0.1) Codes: P – Passive, A – Active, U – Update, Q – Query, R – Reply, r – reply Status, s – sia Status P 10.0.0.12/30, 2 successors, FD is 3072 via 10.0.0.2 (3072/2816), GigabitEthernet0/3 via 10.0.0.22 (3072/2816), GigabitEthernet0/2 P 10.0.0.20/30, 1 successors, FD is 2816 via Connected, GigabitEthernet0/2
P– Określa obecny status trasy EIGRP.
10.0.0.12/30– Określa sieć docelową trasy EIGRP.
2 successors – Określa ilość sukcesorów (w tym przypadku istnieją dwie równorzędne trasy posiadające tą samą metrykę, dzięki czemu mogą wykorzystać równoważone obciążenie).
FD is 3072– Określa wartość Feasible Distancedla danej trasy.
via 10.0.0.2– Określa adres IP następnego przeskoku.
(3072/2816)– Określa wartości Feasible Distanceoraz Reaported Distance.
GigabitEthernet0/3– Określa interfejs następnego przeskoku.
# show ip eigrp topology sieć/prefix
Wyświetla szczegółowe informacje o sieci jak i trasach do niej prowadzących. Posiada dane o ogólnym opóźnieniu(Delay) czy minimalnym paśmie(Minimum Bandwidth) względem danej rasy.
Komendy SHOW
# show ip eigrp topology [sieć maska]
Wyświetla pełną bądź częściową topologię protokołu EIGRP.
Konfiguracja
protokołu EIGRP w trybie Named, umożliwia konfiguracje zarówno protokołu IPv4 jak
i IPv6 z poziomu jednego trybu (EIGRP Virtual Instance). Ponadto wzbogacając domyślny
tryb konfiguracji o opcje dotąd dostępne jedynie z poziomu konfiguracji interfejsu
sieciowego.
Tryb konfiguracji
Opis trybu konfiguracji
Address-Family
Ogólny tryb konfiguracji protokołu EIGRP z poziomu,
którego można skonfigurować: router ID, network command, EIGRP stub routers.
Jedna wirtualna instancja EIGRP może posiadać wiele grup (Address-Family) dla
protokołu IP czy IPv6.
Address-Family-Interface
Tryb umożliwiający konfigurację konkretnych interfejsów
sieciowych.
Service-Family-Interface
Service-Family
Address-Family-Topology
Tryb umożliwiający
konfigurację pozostałych ustawień protokołu EIGRP.
Tryby konfiguracji protokołu Named EIGRP
Konfiguracja protokołu EIGRP w trybie named EIGRP
Konfiguracja podstawowych ustawień protokołu Named EIGRP
(config)#router eigrp nazwa
Przechodzi do poziomu konfiguracji protokołu Named EIGRP.
(config-router)#shutdown
Włącza / Włącza konfigurowany proces protokołu Named EIGRP, powodując: * Usunięcie wszystkich relacji sąsiedztwa. * Wstrzymanie procesu nawiązywania nowych relacji sąsiedztwa. * Zatrzymanie procesu rozgłaszania wiadomości powitalnych (Hello).
Konfiguracja trybu Address-Family
Następujący tryb konfiguracji trybu Named EIGRP, umożliwia podstawową konfigurację protokołu EIGRP względem jednej instancji IPv4 czy IPv6.
(config)#router eigrp nazwa
Przechodzi do poziomu konfiguracji protokołu Named EIGRP.
Statycznie definiuje wartość RID względem konfigurowanego urządzenia.
(config-router-af)#network sieć [dzika-maska]
Włącza propagowanie wiadomości powitalnych (Hello) na interfejsach, których adres mieści się w podanej sieci. W przypadku EIGRP można wykorzystywać adresację klasową.
Ogranicza wykorzystanie pasma przez protokół EIGRP. Skonfigurowana wartość określą jaki procent pasma może być wykorzystywany na potrzeby protokołu EIGRP.
(config-router-af-interface)#no passive-interface
Wyłącza funkcję pasywną na określonym interfejsie sieciowym.
(config-router-af-interface)#[no] split-horizon
Wyłącza / Włącza funkcję podzielonego horyzontu „Split-horizon”.
Definiuje hasło wykorzystywane do autentykacji nadchodzących jak i wysyłanych wiadomości protokołu EIGRP. Konfiguracja funkcji Key Chain, została opisana w następującym artykule.
(config-router-af-interface)# summary-address eigrp ASN sieć maska
Tworzy wpis sumujący rozgłaszane trasy sieciowe.
Konfiguracja trybu Address-Family-Topology
Następujący tryb konfiguracji trybu Named EIGRP, umożliwia konfigurację pozostały ustawień protokołu EIGRP związanych z topologią sieci.
(config)#router eigrp nazwa
Przechodzi do poziomu konfiguracji protokołu Named EIGRP.
(config-router-af)#topology base
Przechodzi do poziomu konfiguracji topologii protokołu EIGRP.
(config-router-af-topology)#[no] auto-summary
Wyłącza / Włącza funkcję automatycznej sumaryzacji.
Określa maksymalną ilość połączeń działających w trybie równoważnego obciążenia, dla wielu tras o tej samej lub różnej metryce. W przypadku tras posiadających różne metryki, konieczna jest zastosowanie komendy [variance]z odpowiednią wartością.
(config-router-af-topology)#variance 1-128(1)
Przepuszcza równoważony ruch pomiędzy dwoma trasami o różnych wartościach metryki. Przykładowo, jeżeli mamy dwie trasy o metrykach 100 i 300, a wartość „Variance” będzie wynosiła 2, to ruter nie dopuści do równoważonego obciążenia ruchu, ponieważ 2*100 = 200.
Każda trasa, której metryka jest mniejsza od wartości FD pomnożonej przez wartość „Variance”,będzie wykorzystywana przy równoważonym obciążeniu.
Zmienia domyślną wartość czasu „active-timer”. Wartość ta określa ile czasu ruter będzie czekał na odpowiedź, wysłanej wiadomości Query zanim przejdzie w stan SIA.
Pozostałe tematy związane z konfiguracją protokołu EIGRP
Protokół BFD stanowi otwarty standard opisany w referencji RFC 5880, zaprojektowany do szybkiego wykrywania utraty łączności pomiędzy uprzedzeniami sieciowymi (Keepalive), przeważnie w czasie nie dłuższym niż 150 milisekund.
Domyślna metoda utrzymywania łączności pomiędzy sąsiadami, w przypadku protokołów routingu dynamicznego. Obciąża procesor CPU wysyłanymi wiadomościami Hello, związku z tym częstotliwość ich wysyłania powinna być ograniczona. Należy jednak pamiętać, że im większa częstotliwość w wysyłaniu wiadomości, tym krótszy czas wykrycia awarii. W takiej sytuacji aby utrzymać dużą częstotliwość w wysyłaniu wiadomości, protokół BFD korzysta ze wsparcia sprzętowego (Hardware). Dzięki takiemu rozwiązaniu każdy pakiet Keepalive jest obsługiwany jak zwykły ruch sieciowy bez potrzeby przetworzenia przez procesor CPU.
Aktywuje protokół BFD na określonym interfejsie sieciowym. Wartość „Interval” określa częstotliwość w nadawaniu wiadomości BFD, wartość „Min_rx” w odbieraniu natomiast wartość „Multiplier” określa czas oczekiwania na otrzymanie odpowiedzi od sąsiedniego urządzenia zanim uzna dane połączenie za nieaktywne.
Manipulacja domyślnymi czasami protokołu EIGRP
(config)#interface interfejs
Przechodzi do poziomu konfiguracji określonego interfejsu sieciowego.
W starszych wersjach systemu Cisco IOS konfiguracja autentykacji protokołu EIGRP wymagała aby obydwa urządzenia posiadały odpowiednio skonfigurowany czas systemowy.
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.
Numer ID klucza musi się zgadzać pomiędzy konfigurowanymi sąsiadami protokołu EIGRP.
(config-keychain-key)#key-string [0 / 7](0)klucz
Określa wartość klucza (Wymaga podania wartości zahaszowanej)
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).
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.
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.
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.
Przypisuje Prefix listę filtrującą wskazane trasy routingu, do konfigurowanej instancji protokołu EIGRP.
# show ip prefix-list [nazwa-prefix-listy]
Wyświetla wszystkie skonfigurowane, bądź określoną w komedzie prefix listę.
# show ip prefix-list [nazwa-prefix-listy]detail
Wyświetla wszystkie skonfigurowane, bądź określoną w komedzie prefix listę. Wraz z statystykami dotyczącymi ilości dopasowań poszczególnych wpisów jak i całej prefix listy.
Filtrowanie tras EIGRP za pomocą Router-mapy
#Szczegółowa konfiguracja Router mapy została opisana w artykule: Router mapa.
Tworzy nową router mapę przepuszczającą (permit), bądź filtrujące (denny). Wskazane w komendzie trasy routingu. Podany numer sekwencyjny określa porządek rozpatrywania wpisów router mapy.
(config-route-map)# match ip address {ACL-ID / prefix-list nazwa-prefix-listy}
Określa trasy prowadzące do sieci, zawartych w określonej przez komendę liście ACL bądź Prefix liście. Konfiguracja Prefix listy, została opisana w następującym artykule.
(config–route-map)# ruter eigrp [ASN]
Przechodzi do poziomu konfiguracji protokołu EIGRP.
Przypisuje listę ACL filtrującą wskazane trasy routingu, do konfigurowanej instancji protokołu EIGRP.
# show access-list ACL
Wyświetla konfigurację wskazanej listy ACL.
# show ip eigrp topology all-links
Wyświetla wszystkie trasy przetrzymywane w tablicy topologii protokołu EIGRP, wraz z adresem sąsiada który trasy te rozgłasza.
Komendy SHOW
# show ip prefix-list [nazwa-prefix-listy]
Wyświetla wszystkie skonfigurowane, bądź określoną w komedzie prefix listę.
# show ip prefix-list [nazwa-prefix-listy]detail
Wyświetla wszystkie skonfigurowane, bądź określoną w komedzie prefix listę. Wraz z statystykami dotyczącymi ilości dopasowań poszczególnych wpisów jak i całej prefix listy.
# show route-map[nazwa-router-mapy]
Wyświetla określoną / wszystkie skonfigurowane na danym urządzeniu Router Mapy.
# show ip routeadres-IP-sieci
Wyświetla szczegółowe informacje na temat trasy, prowadzącej do wskazanej w komendzie sieci. Komenda wyświetla między innymi przypisaną do trasy wartość o-tagowania.
# show ip protocols
Wyświetla ustawienia wszystkich skonfigurowanych protokołów routingu dynamicznego. W tym najważniejsze informacje dotyczące konfiguracji protokołu EIGRP wraz z informacjami dotyczącymi filtracji tras routingu.
# show ip eigrp topology all-links
Wyświetla wszystkie trasy przetrzymywane w tablicy topologii protokołu EIGRP.
Pozostałe tematy związane z konfiguracją protokołu EIGRP
Wiadomości Hello umożliwiają wykrycie innych urządzeń sieciowych, a następnie nawiązanie z nimi relacji sąsiedztwa. Domyślnie wymieniane są pomiędzy sąsiadami zgodnie z następującymi przedziałami czasowymi:
Hello Timers – Określa odstępy czasowe w wysyłaniu wiadomości Hello. Czas Hello timer wynosi:
5sekunddla sieci typu Point to Point czy Ethernet.
60Sekunddla sieci typu NBMA, których pasmo wynosi 1544 Kbps lub mniej.
Dead Interval– Określa czas, po upływie którego sąsiedni ruter zostanie uznany za nieosiągalny (W przypadku otrzymania wiadomości hello licznik czasu Dead Interval zostaje zresetowany). Czas Dead Interval wynosi:
15sekunddla sieci typu Point to Pointczy Ethernet.
180Sekunddla sieci typu NBMA, których pasmo wynosi 1544 Kbps lub mniej.
Domyślnie czas Hold Timers stanowi trzykrotność wartości czasu Hello (Zachowanie takiej zależności nie jest konieczne, lecz zalecane).
Widomości Hello są wysyłane na adres multicast-owy 224.0.0.10w przypadku protokołu IPv4, adres Link-local multicast FF02::Aw przypadku protokołu IPv6oraz adres unicast address w sytuacji nawiązania statycznej relacji sąsiedztwa.
Wiadomości Hello nie wymagają potwierdzenia przez wiadomość Acknowledgment.
Update packets (Unicast / Multicast)
Wiadomości aktualizacyjne (Update) są wymieniane pomiędzy sąsiednimi urządzeniami w następujących przypadkach:
Podczas nawiązywania nowej relacji sąsiedztwa, kiedy to wiadomości Full Update, są wymieniane pomiędzy sąsiednimi urządzeniami za pomocą adresacji unicast. Wyjątekod tej zasady stanowi sytuacja, w której, w krótkim okresie czasu router po nawiązaniu wielu relacji sąsiedztwa, stosuje wiadomości multicast-owe do rozgłaszania aktualizacji. Np. w monecie startu rozbudowanej topologii protokołu DMVPN.
Pouzyskaniu pełnej zbieżności, kiedy to wiadomości aktualizacyjne Partial Update są wysyłane multicast-owo pomiędzy sąsiadami.
Gdy ruter nie otrzyma potwierdzenia Acknowledgment, na wysłaną wiadomość aktualizacyjną Update, ponowi probe wysłania wiadomość aktualizacyjnej, tym razem za pomocą adresu unicast.
W topologiipoint-to-point jak i w przypadku statycznej relacji sąsiedztwa, kiedy to wiadomości aktualizacyjne są wysyłane za pomocą adresacji unicast.
Protokół EIGRP wykorzystuje dwa pojęcie dotyczące wiadomości aktualizacyjnych (Update):
Partial– Obejmuje wiadomości aktualizacyjne zawierające informacje, o zmianach zaszłych w topologii sieciowej.
Bounded– Określa wiadomości aktualizacyjne wysyłane do tych sąsiadów, których dotyczy dana aktualizacja.
Wiadomości aktualizacyjne zawsze wymagają potwierdzenia, za pomocą wiadomość Acknowledgment.
Query packets (Unicast / Multicast)
Wiadomości Query:
Angażują sąsiednie urządzenia w proces poszukiwania najlepszej trasy prowadzącej do sieci docelowej.
Są wysyłane za pomocą adresów multicast-owychw sieciachwielodostęp-owych, z wyjątkiem sytuacji, w której sąsiedni router nie potwierdzi otrzymania wiadomości Query za pomocą wiadomości Acknowledgment.
Są wysyłane za pomocą adresów unicast-owychw sieciach typu Point-to-Point jak i w przypadku nawiązania statycznej relacji sąsiedztwa pomiędzy urządzeniami sieciowymi.
Zawsze wymagają potwierdzenia, za pomocą wiadomość Acknowledgment.
Reply packets (Unicast)
Wiadomości Replaystanowią odpowiedź na otrzymaną wiadomość Query.
Wiadomości Replaysą wysyłane za pomocą adresacji unicast.
Acknowledgment packets (Unicast)
Wiadomości Acknowledgment stanowią odpowiedź, potwierdzającą otrzymanie innej wiadomości protokołu EIGRP.
W przypadku szesnastokrotnegonie otrzymania wiadomości potwierdzającej (Acknowledgment) ruter zresetuje relację sąsiedztwa.
SIA-Query i SIA-Replay (Unicast)
Wiadomości SIA są wykorzystywane w procesie „Diffusing Computation”, w celu sprawdzania czy sąsiednie urządzenie nadal pracuje nad pierwotnym zapytaniem Query.
Po otrzymaniu wiadomości SIA-Query, router natychmiast odpowie wiadomością SIA-Replay, dzięki czemu sąsiednie urządzenie zresetuje czas „Active Timer”, unikając zerwania relacji sąsiedztwa.
Wiadomości EIGRP wymieniane pomiędzy router-ami w procesie nawiązywania relacji sąsiedztwa
Router A rozpoczyna proces nawiązywania relacji sąsiedztwa, poprzez nadanie wiadomości powitalnej Hello. Na wszystkich interfejsach sieciowych aktywnych względem konfigurowanej instancji protokołu EIGRP.
Jeśli otrzymana przezrouter B wiadomość powitalna Hello, spełnia wymagania protokołu EIGRP względem lokalnego urządzenia. Relacja sąsiedztwa zostanie nawiązana pomiędzy routerem A a routerem B.
Wymieniane pomiędzy ruterami wiadomości Hello zawierają: numer ASN konfigurowanej instancji protokołu EIGRP, wartość K-Value, wykorzystywane wartości czasów (Hello Timer, Hold Time), wersję protokołu EIGRP oraz dodatkowe informacje dotyczące wersji systemu Cisco IOS.
Router B wysyła aktualizację (Full Update) zawierającą pełną zawartość własnej tablicy topologii (Topology Table).
Router Apotwierdza otrzymanie aktualizacji (Update packet) za pomocą wiadomości Acknowledges.
Router A wysyła aktualizację (Full Update) zawierającą pełną zawartość własnej tablicy topologii (Topology Table).
Router B potwierdza otrzymanie aktualizacji (Update packet) za pomocą wiadomości Acknowledges.
Urządzenia rozpoczynają proces wzajemnej wymiany wiadomości Hello, w odstępach czasowych (Hello Timer).
Warunki nawiązania relacji sąsiedztwa
Aby routery mogły nawiązać ze sobą relację sąsiedztwa, muszą spełniać następujące kryteria:
Wymagania dotyczące relacji sąsiedztwa
EIGRP
OSPF
Sąsiedzi muszą być wstanie wysyłać pomiędzy sobą pakiety IP
Tak
Tak
Adresy IP muszą należeć do tej samej sieci
Tak
Tak
Interfejsy nie mogą działać w trybie pasywnym
Tak
Tak
Sąsiedzi muszą należeć do tego samego systemu autonomicznego ASN
(EIGRP) bądź procesu „process-ID”
(OSPF)
Tak
Nie
Czasy hello oraz Hold (EIGRP), Dead (OSPF) muszą się zgadzać
Nie
Tak
Sąsiedzi muszą przejść proces autentykacji (Jeżeli przynajmniej jedno z
urządzeń takiego wymaga)
Tak
Tak
Sąsiedzi muszą należeć do tej samej strefy Area (OSPF).
N/A
Tak
Wartość IP MTU musi się zgadzać
Nie
Tak
Wartość K-value musi być taka sama
Tak
N/A
Wartość Router ID musi być unikalna
Przeważnie nie
Tak
Wymagania dotyczące procesu nawiązywania relacji sąsiedztwa dla protokołu EIGRP / OSPF
W przypadku kryterium „Adresy IP muszą należeć do tej samej sieci” logika postępowania protokołu OSPF różni się od logiki postępowania protokołu EIGRP. OSPF porównuje całą wartość adresu oraz maski sąsiedniego urządzenia, natomiast EIGRP patrzy jedynie na to czy adres IP sąsiada należy do tej samej sieci co lokalny interfejs. Przykładowo sąsiednie urządzenie z skonfigurowanym adresem [ip address 192.168.10.2 255.255.255.252] nawiąże relacje sąsiedztwa z interfejsem o adresie [ip address 192.168.10.1 255.255.255.0] w przypadku protokołu EIGRP, ale nie OSPF.
W sytuacji skonfigurowania dwóch adresów IP na jednym interfejsie sieciowym (Main and Secondary IP address). Adres zawarty w otrzymanej wiadomości hello musi przynależeć do przynajmniej jednej ze skonfigurowanych sieci IP (Głównej bądź zapasowej). Jeżeli jednak na jednym z urządzeń zabraknie sieci która względem sąsiada została skonfigurowana jako sieć główna, relacja sąsiedztwa nie zostanie nawiązana. Ponieważ urządzenie te będzie nadawało wiadomości powitalne Hello, jedynie z głównego adresu IP, znajdującego się w tym przypadku w sieci innej niż sąsiednie urządzenie. Poniższy przykład prezentuje poprawną konfigurację:
* R1 1.1.1.1 255.255.255.0 (Primary IP), 11.11.11.1 255.255.255.0 (Secondary IP).
* R2 11.11.11.2 255.255.255.0 (Primary IP), 1.1.1.2 255.255.255.0 (Secondary IP).
Blokowanie procesu nawiązywania relacji sąsiedztwa
Kiedy komenda [network sieć dzika-maska] zostanie wydana w trybie konfiguracji protokołu EIGRP, nastąpi dopasowanie podanej w komendzie sieci, do adresów IP skonfigurowanych na wszystkich aktywnych interfejsach sieciowych, przy użyciu logiki listy (ACL). Tym samym ruter:
Rozpocznie systematyczne wysyłanie wiadomości powitalnych Hello, na multicast-owy adres IP 224.0.0.10.
Doda omawianą sieć, do tablicy topologii (Topology Table).
Rozpocznie rozgłaszanie informacji o danej sieci, do innych sąsiadów.
Zdarza się, że w sieci bezpośrednio przyległej do konfigurowanego urządzenia, nie znajduje się żaden ruter. W takim wypadku aby ograniczyć wysyłanie zbędnych wiadomości powitalnych, jednocześnie nie rezygnują z rozgłaszania danej sieci, można skorzystać z funkcji interfejsu pasywnego (Passive Interface), konfigurowanego za pomocą komendy [passive-interface interfejs] z poziomu konfiguracji protokołu EIGRP.
Funkcja pasywnego interfejsu (Passive Interface) blokuje proces wysyłania wiadomości powitalnych na określonym interfejsie sieciowym, jednocześnie nie blokując rozgłaszania informacji o danej sieci. Dzięki czemu interfejs nie tylko nie wysyła wiadomości powitalnych, ale również ignoruje przychodzące wiadomości Hello, czym nie dosusza do nawiązania relacji sąsiedztwa pomiędzy urządzeniami znajdującymi się w konfigurowanej sieci.
Konfiguracja statycznej relacji sąsiedztwa (Unicast Neighbor)
W celu zredukowania nadmiernej liczby wiadomości multicast-owych, zwiększenia poziomu bezpieczeństwa czy konfiguracji sieci NBMA (np. Frame-Relay). Istnieje możliwość nawiązania statycznej relacji sąsiedztwa za pomocą komendy [neighbor adres-IP interfejs-wyjściowy] wydanej na obydwóch urządzeniach należących do tej samej sieci, w trybie konfiguracji protokołu EIGRP.
Konfiguracja statycznej relacji sąsiedztwa, nie dodaje wskazanej w komendzie sieci, do procesu rozgłaszania protokołu EIGRP. W takiej sytuacji nadal istnieje konieczność użycia komendy [network sieć dzika-maska].
Po skonfigurowaniu statycznej relacji sąsiedztwa, system IOS automatycznie zablokuje możliwość dynamicznego nawiązania relacji sąsiedztwa na interfejsie sieciowym, do którego należy wskazany adres IP (Sąsiada).
Statycznie skonfigurowane relacje sąsiedztwa mogą zostać wyświetlane za pomocą komendy [show ip eigrp neighbors detail].
Manipulowanie wartościami czasów Hello oraz Hold Timers
Jedną z najważniejszych cech protokołów routingu dynamicznego, jest funkcja zbieżności (convergence), dzięki której router po utracie jednej z tras, może znaleźć inną drogę prowadzącą do tej samej sieci docelowej. Im ruter szybciej wyszuka nowe połączenie a następnie doda je do tablicy routingu, tym krótszy będzie przestój w działaniu sieci.
Czas zbieżności jest między innymi zależny od tego jak szybko zostanie wykryta utrata połączenia z siecią docelową. Ponieważ bez wykrycia faktu istnienia problemu nie można go naprawić. W przypadku protokołu EIGRP utrata łączności pomiędzy sąsiadami jest wykrywana za pomocą wiadomości Hello. Oczywiście przy założeniu, że interfejs łączący sąsiednie urządzenia jest w stanie up/up, w innym przypadku router od razu wykryje problem z łącznością.
Domyślnie wiadomości Hello są wymieniane pomiędzy sąsiadami, w odstępie czasowym 5sekund. W przypadku nieotrzymania wiadomości Hello w przeciągu 15sekund (Hold Timers), ruter uzna że sąsiednie urządzenie nie jest już dostępne, a tym samym usunie je z tablicy sąsiedztwa (Neighbour Table).
Zmniejszenie domyślnych wartości czasu Hello oraz Hold Timers może umożliwić szybsze wykrywanie problemów.
Domyślny czasHello Timers – Dla sieci Ethernetwynosi 5 sekund, natomiast dla sieci NBMAwynosi 60 sekund.
Domyślny czasHold Timers – Dla sieci Ethernetwynosi 15 sekund, natomiast dla sieci NBMAwynosi 180 sekund.
Domyślnie czas Hold Timers stanowi trzykrotność wartości czasu Hello (Zachowanie takiej zależności nie jest konieczne, lecz zalecane przez Cisco).
W celu uzyskania szybszej zbieżności protokołu EIGRP, przy jednoczesnym zmniejszeniu zużycia procesora CPU, Cisco zaleca stosowanie protokołu BFD (Bi-directional Forwarding Detection). Wykorzystuje on wsparcie sprzętowe (Hardware), w celu wymiany wiadomości Keepalive, w czasie nie dłuższym niż 999 milisekund. Dzięki takiemu rozwiązaniu poszczególne wiadomości Keepalive nie muszą być przetwarzane przez procesor obydwóch urządzeń, jak ma to miejsce w przypadku domyślnej metody wykorzystującej wiadomości Hello.
Zmiana wartości czasu Hello Time oraz wartości czasu Hold Timers,jest dokonywana względem określonego interfejsu sieciowego. Należy przy tym pamiętać, aby wprowadzone zmiany zostały wdrożone na wszystkich urzadzeniach należących do tej samej sieci. Niezastosowanie się to tej zasady może doprowadzić do braku jednolitej wymiany wiadomości pomiędzy sąsiadami. A tym samym:
Po wysłaniu pierwszej wiadomości Hello wraz z nowymi ustawieniami czasów, inne urządzenia dostosują się do wprowadzonych zmian, prowadząc wymianę wiadomości powitalnych w nowo ustalonej częstotliwości. Jednak zmiana ta będzie stosowana tylko i wyłącznie w przypadku komunikacji sąsiednich urządzeń z urządzeniem którw wprowadziłoomawiane zmiany, tymczasem wymiana wiadomości pomiędzy innymi sąsiadami nie ulegnie zmianie.
Należy przy pamiętać, że system Cisco IOS nie chroni administratora przed wpisaniem wartości czasu Hello większej niż wartość Hold Timers, co może doprowadzić do systematycznego zrywania relacji sąsiedztwa pomiędzy routerami (Flapowania).
Nawiązywanie relacji sąsiedztwa w sieciach WAN
Frame Relay Neighborship – W przypadku połączenia Frame Relay relacja sąsiedztwa protokołu EIGRP zostaje nawiązana pomiędzy głównym odziałem HQ a innymi oddziałami (Spoke).
MPLS VPN Neighborship – W przypadku połączenia MPLS VPN relacja sąsiedztwa protokołu EIGRP zostaje nawiązana pomiędzy ruterami brzegowymi (CE– Customer Edge) a routerami dostawcy ISP (PE–Provider Edge).
Metro Ethernet Neighborship – W przypadku połączenia Metro Ethernet relacja sąsiedztwa protokołu EIGRP zostaje nawiązana pomiędzy wszystkimi oddziałami w topologii Full-mesh, bądź w inny sposób zależny od konfiguracji połączenia WAN (Metro Ethernet).
WarstwaManagement Plane – Nadzoruje proces zarządzania systemem Cisco IOS, za pomocą protokołu SSH, Telnet, HTTP czy HTTPS. Umożliwiając zdalną kontrolę oraz monitoring urządzenia, jak i jego systemu.
WarstwaControl Plane – Nadzoruje proces wymiany danych związanych z sieciami oraz trasami do nich prowadzącymi. Pomiędzy sąsiednimi urządzeniami sieciowymi, za pomocą protokołów routingu dynamicznego. Na podstawie zebranych informacji tworzy wspólną dla wszystkich protokołów tablicę RIB(Routing Information Base), przechowująca informacje o trasach routingu z najmniejszą metryką jak i najniższą wartością dystansu administracyjnego (AD) protokołu który daną trasę rozgłasza.
WarstwaData, Forwarding Plane– Kieruje przepływem pakietów nadchodzących do rutera.
Metody przełączania pakietów
Process Switching(Stosowany jedynie w starszych ruterach Cisco) – Stanowi najstarszą, najwolniejszą metodę kontroli przepływu danych, w której wszystkie nadchodzące pakiety są pojedynczo przetwarzane na poziomie systemu operacyjnego IOS, przez procesor (CPU). Proces ten znacząco zmniejsza wydajności urządzenia, przez co jest używany w ostateczności lub podczas rozwiązywania problemów sieciowych związanych z przepływem pakietów (Troubleshooting-u).
Komenda [show processes cpu] wyświetla listę aktywnych procesów obecnie przetwarzanych przez procesor CPU. Znajdujący się na tej liście proces „IP Input” określa ilość odwołań procesu przełączania pakietów do procesora CPU.
W przypadku metody Process Switching funkcja Load-balancing działa zgodnie z zasadą (Per-packet), kierującąc każdy następujący pakiet inną drogą.
Konfiguracja metody Process Switching, jest możliwa za pomocą komendy [ip router-cache], wydanej w trybie konfiguracji globalnej.
Router Cache Switching / Fast Switching (Flow-based Switching / Demand-Based Switching / Router once, Switch many / NetFlow Switching) – Wykorzystuje procesor routingu (RP) do określenia drogi docelowej względem pierwszego nadesłanego pakietu, dalsza część komunikacji jest przetwarzana przez silnik przełącznika (SE). Należy przy tym pamiętać, że dla pakietu z innym adresem docelowym (IPv4 czy IPv6), procesor routingu musi przeprowadzić nowe poszukiwanie interfejsu docelowego.
W przypadku metody Fast Switching funkcja Load-balancing działa zgodnie z zasadą (Per-destination), kierującąc każdy następujący przepływ (Flow) inną drogą, na podstawie docelowego adresu IP.
Topology Based Switching(CEF – Cisco Express Forwarding) – Wykorzystuje procesor routingu (RP) wraz z informacjami warstwy trzeciej w celu stworzenia wydajnej, sprzętowej tablicy FIB(Forwarding Information Base). Zawierającej trasy pobrane z tablicy routingu, w celu osiągnięcia szybkiego przepływu nadchodzących pakietów. Dzięki temu rozwiązaniu procesor routingu(RP) jest używany jedynie w sytuacji zmiany topologii sieciowej, bądź w przypadku odebrania pakietu kierowanego bezpośrednio do lokalnego urządzenia.
W przypadku metody Cisco Expres Forwarding funkcja Load-balancing działa zgodnie z zasadą (Per-destination), kierującąc każdy następujący przepływ (Flow) inną drogą, na podstawie docelowego adresu IP.
Konfiguracja metody CEF, jest możliwa za pomocą komendy [ip cef], wydanej w trybie konfiguracji globalnej.
Interfejsy routera
Poszczególne stany interfejsów rutera oznaczają:
Line Status
Protocol Status
Description
Administratively Down
Down
Interfejs został wyłączony komendą „Shutdown”.
Down
Down
Interfejs ma problemy na poziomie warstwy pierwszej lub
Interfejs po drugiej stronie połączenia została wyłączony za pomocą komendy „Shutdown”.
Up
Down
Interfejs ma problemy na poziomie warstwy drugiej.
Up
Up
Interfejs ma problemy na
poziomie warstwy trzeciej, bądź też działa prawidłowo.
Znaczenia stanów interfejsów
Problemy związane z CEF
CEF Routing Loop
Problem zwany (Cisco Express Forwarding routing loops and sub-optimal routing) występuje w przypadku:
Skonfigurowania statycznej trasy routingu skierowanej na interfejs wielo-dostępowy (Multi-Access Interface).
Nawiązania relacji CEF na podstawie odpowiedzi (Proxy Address Resolution Protocol).
IP CEF Load Sharing
Wstęp do funkcji CEF Load Sharing
To ile oraz jakie trasy zostaną dodane do funkcji równoważenia obciążenia sieciowego, nie zależy od funkcji CEF a od konfiguracji protokołów routingu dynamicznego.
Aby funkcji Load Sharing mogła zostać aktywowana, funkcja CEF musi być włączona na konfigurowanym urządzeniu.
W celu sprawdzenia stanu funkcji CEF należy wykorzystać komendę [show ip cef].
Wyświetlenie następującego komunikatu [%CEF not running] oznacza że funkcja CEF nie została aktywowana.
Per-Destination Load Balancing (Fast Switching, CEF) – Domyśla metoda równoważonego obciążenia wykorzystana przez funkcję CEF. Kieruje ruchem sieciowym zgodnie z logika „Source-destination host pair”, dzięki czemu pakiety kierowane z jednego adresu źródłowego do jednego adresu docelowego nie zostaną rozdzielone pomiędzy dwoma interfejsami.
Per-Packet Load Balancing (Process Switching) – Umożliwia równoważne obciążenie ruchu sieciowego, nadchodzącego z jednego adresu źródłowego do jednego adresu docelowego, korzystając przy tym z logiki „Round-robin method”. Dzięki której równoważenie obciążenia sieciowego jest bardziej stabilne, ponieważ obydwie trasy są równomiernie utylizowane (Logika „Round-robin” kieruje jeden pakiet pierwszą trasą, drugi drugą trasą, trzeci znowuż pierwszą i tak dalej…). Niestety przy jednoczesnym narażeniu sieci na powstanie problemów związanych z rutingiem asymetrycznym (Asymmetric Routing), czy problemów związanych otrzymywaniem pakietów poza kolejnością (Out-of-order packets). Metoda Per-Packet Load Balancing:
Jest polecana w przypadku wykorzystania pojedynczego adresu docelowego dla którego domyślne rozwiązanie Per-Destination Load Balancing nie sprawdza się (Ponieważ utylizowana będzie jedynie jedna trasa).
Nie jest polecana w przypadku ruchu VoIP dla którego istotne jest otrzymywanie segmentów sieciowych zgodnie z kolejnością w jakiej zostały nadane.
W przypadku metody "Per-packet load balancing" wszystkie interfejsy które przekierowują ruch do wskazanego miejsca docelowego muszą mieć aktywowaną funkcję CEF.
W przypadku sieci docelowej posiadającej więcej niż jedną trasę docelową, ta mająca obsłużyć następny przepływ (Flow) tudzież następny pakiet, będzie oznaczona gwiazdką (*). Co jest widoczne w wydruku komendy [show ip route sieć].
Algorytmy funkcji Load-Balance
Funkcja CEF wykorzystuje jeden z poniższych algorytmów, w celu zapewnienia równoważonego obciążenia względem wielu tras routingu. Obecnie wykorzystywany algorytm można zmienić za pomocą komendy [ip cef load-sharingalgorithm algorytm] wydanej w trybie konfiguracji globalnej systemu IOS.
Original Algorithm – Domyślny algorytm wykorzystywany w systemie Cisco IOS.
UniversalAlgorithm – Umożliwia każdemu ruterowi znajdującemu się w tej samej sieci, na podjęcie innej niezależnej decyzji o podziale obciążenia, względem każdej pary adresów źródłowych jak i docelowych.
Tunnel Algorithm – Został zaprojektowany w celu zapewnienia równoważonego obciążenia dla pary adresów źródłowych i docelowych.
Include-ports Algorithm – Został wzbogacony o możliwość prowadzenia równoważonego obciążenia z wykorzystaniem portów warstwy czwartej (Layer 4).
Konfiguracja funkcji CEF
Podstawowa konfiguracja funkcji CEF
(config)#[no] ip cef
Dezaktywuje / Aktywuje funkcję CEF na konfigurowanym ruterze.
(config)# ip route-cache
Aktywuje funkcję “Process Switching” na konfigurowanym ruterze.
(config)# interface interfejs
Przechodzi do poziomu konfiguracji określonego interfejsu sieciowego.
(config-if)#[no]ip route-cache cef
Dezaktywuje / Aktywuje funkcję CEF na konfigurowanym interfejsie sieciowym.
Określa jaki algorytm funkcji CEF będzie wykorzystywany. * original– Ustawia algorytm (Original), oparty na logice haszowania adresu źródłowego z adresem docelowym. * tunnel– Ustawia algorytm (Tunnel), wykorzystywany na połączeniach tunelowych. * universal– Ustawia algorytm (Universal), oparty na logice haszowania adresu źródłowego z adresem docelowym jak i dodatkową wartością ID. * include-ports – Ustawia algorytm (Include-ports), oparty na logice haszowania portów warstwy czwartej.
(config)# interface interfejs
Przechodzi do poziomu konfiguracji określonego interfejsu sieciowego.
(config-if)# no ip load-sharing per-destination
Aktywuje metodę “Per-destination load balancing” dla funkcji CEF.
(config-if)# ip load-sharing per-packet
Aktywuje metodę “Per-packet load balancing” dla funkcji CEF.
# show ip route adres-IP
Wyświetla trasy routingu, prowadzące do wskazanej w komendzie sieci. W przypadku funkcji Load-Balance trasa oznaczona gwiazdą (*) będzie obsługiwała następny przepływ danych.
Wykorzystywany adres IP: IPv4224.0.0.10, IPv6 FF02::A.
Główne cechy protokołu EIGRP
Transport– W komunikacji ze swoimi sąsiadami, EIGRP wykorzystuje protokół IP (Protocol number88).
Metric– Przy wyliczaniu metryki, protokół EIGRP wykorzystuje informacje o najniższejprzepustowościjak i wartość sumowanegoopóźnienia. Ponadto istnieje opcjonalna możliwość uwzględnienia dodatkowych wartości takich jak Load czy Reliability. Wartość MTU oraz ToS nigdy nie jest brana pod uwagę przy wyliczaniu metryki.
Fast Convergence– Posiada proces szybkiego przetwarzania zmian zachodzących w sieci.
Update Destination Address – Wykorzystuje wiadomości multicast-owe kierowane na adres IPv4 224.0.0.10 (EIGRPv4) oraz adres IPv6FF02::A (EIGRPv6), oczekując przy tym odpowiedzi na adres unicast-owy. Istnieje opcjonalna możliwość aby wszystkie wiadomości protokołu EIGRP były kierowane na adres unicast (Np. przy konfiguracji statycznej relacji sąsiedztwa, co jest koniczne w przypadku niektórych topologii sieciowych).
Full or Partial Updates – Pełna wiadomość konfiguracyjna (Full Update) jest wysyłana pomiędzy sąsiadami zaraz po nawiązaniu relacji sąsiedztwa, następnie wymieniane są jedynie aktualizacje częściowe (Partial Update).
Authentication– Wspiera algorytm szyfrujący MD5.
Manual Router Summarization – Wspiera funkcję manualnej sumaryzacji tras routingu.
AutomaticSummarization – Wspiera funkcję automatycznej sumaryzacji tras routingu.
VLSM/ Classless– Przesyła adres sieci wraz z maską, w każdej wiadomości aktualizacyjnej.
Router Tags – Wspiera funkcję oznaczania, tagowania (Tags) re-dystrybuowanych tras routingu.
Next-hop Field – Umożliwia prezentowanie (Advertisement) tras routingu z innym adresem następnego przeskoku, niż adres IP routera, który dostarczył informacje o danej sieci docelowej.
Multiprotocol – Wspiera wiele protokołów warstwy trzeciej, takich jak IPX, AppleTalk, IPv4oraz IPv6.
Unequal Load Balance – Umożliwia stosowanie równoważnego obciążenia pomiędzy trasami z nierówną metryką.
DUAL– Wykorzystuje algorytm DUAL(Diffusing Update Algorithm) w celu poszukiwania najlepszej trasy prowadzącej do sieci docelowej (Pozostałe protokoły wektora odległości (Distance vector) wykorzystują algorytm Bellmana-Forda).
RTP– Wykorzystuje własny protokół warstwy czwartej zwany RTP (Reliable Transport Protocol).
Hop-count– Zwiększa limit maksymalnej drogi z 15przeskoków (RIP, IGRP) do 255przeskoków.
Elementy składowe protokołu EIGRP
Neighbor Discovery and Maintenance – Nawiązuje relację sąsiedztwa pomiędzy routerami wspierającymi protokół EIGRP, z wykorzystaniem wiadomości powitalnych Hello.
RTP (Reliable Transport Protocol) – Unikalny protokół warstwy czwartej, stworzony przez Cisco na potrzeby protokołu EIGRP, łączyw sobie zarówno elementy protokołu UDPoraz protokołu TCP.
DUAL(Diffusing Update Algorithm) – Algorytm prowadzący poszukiwania najlepszej trasy, prowadzącej do sieci docelowej.
Tablice wykorzystywane przez protokół EIGRP
Tablica Neighbor Table – Zawiera informację o sąsiednich urządzeniach, wykrytych za pomocą wiadomości Hello.
Tablica Topology Table – Zawiera trasy routingu pozyskane przez protokół EIGRP od sąsiednich urządzeń, z którymi nawiązana została relacja sąsiedztwa jak i informacje o sieciach bezpośrednio przyległych.
Tablica routingu(Routing Table) – Stanowi lokalną tablicę routingu, do której przekazywane są wszystkie trasy z najniższą wartością metryki, pobrane z tablicy topologii protokołu EIGRP.
Podstawowe operacje protokołu EIGRP
Neighbor Discovery – Protokół EIGRP wykorzystuje wiadomości powitalne Hello w celu nawiązania relacji sąsiedztwa z innymi routerami należącymi do tej samej sieci (Dynamicznie bądź statycznie).
Topology exchange – Protokół EIGRP rozpoczyna wymienne całej zawartości tablicy topologii zaraz po nawiązaniu nowej relacji sąsiedztwa, następnie aktualizację będą wymieniane jedynie w przypadku zajścia zmian w topologii sieciowej.
Choosing routers – Po uzupełnieniu lokalnej tablicy topologii, protokół EIGRP rozpoczyna proces poszukiwania najkrótszej trasy dotarcia do każdej z wykrytych sieci.
RTP & RID
Protokół RTP (Reliable Transport Protocol)
Protokół EIGRP w celu wysyłania wiadomości Hello, Update oraz innych wiadomości protokołu EIGRP, pomiędzy sąsiednimi urządzeniami. Wykorzystuje w warstwie czwartejmodelu OSI protokół RTP. Stworzony przez Cisco, specjalnie na potrzeby EIGRP. Nawiązuję on komunikację pomiędzy urządzeniami z wykorzystaniem zarówno protokołu TCP jak i UDP.
Określanie wartości RID (Router ID) względem protokołu EIGRP
W przypadku protokołu EIGRP 32-bitowa wartość Router ID jest określana na podstawie:
Wartości skonfigurowanej za pomocą komendy [eigrp router-id0-255.0-255.0-255.0-255].
Największej wartości adresu IPv4 dla aktywnego (up/up) interfejsu LoopBack.
Największej wartości adresu IPv4 dla aktywnego (up/up) interfejsu Non-LoopBack.
W przypadku protokołu EIGRP wartość RID (Router ID) ma znaczenie podczas propagacji tras zewnętrznych pomiędzy sąsiednimi urządzeniami (W sytuacji wystąpienia duplikacji wartości RID, sąsiednie rutery z tą samą wartością RID nie będą mogły wymieniać pomiędzy sobą tras zewnętrznych (External routes).
Kontrola pasma w sieciach WAN
W przypadku niektórych rozwiązań WAN, jeden fizyczny interfejs może przenosić ruch sieciowy wielu połączeń wirtualnych (Np. Frame Relay). W takim przypadku pasmo jednego interfejsu jest dzielone na wiele połączeń wirtualnych, co powinno być uwzględnione w konfiguracji protokołu EIGRP.
Aby ograniczyć wykorzystanie pasma przez protokół EIGRP, system Cisco IOS domyślnie ogranicza ilość przesyłanych wiadomości protokołu EIGRP do 50% wartości pasma określonego za pomocą komendy [bandwidth]. Aby zmienić tą wartość należy wykorzystać komendę [ip bandwidth-precent eigrp ASN1-999999(50)(%)] w trybie konfiguracji interfejsu sieciowego.
Gorem ipsum dolor sit amet, consectetuer adipiscing elit, sed diam nonummy nibh euismod tincidunt ut laoreet dolore magna aliquam erat volutpat. Ut wisi enim ad minim veniam, quis nostrud exerci tation ullamcorper suscipit lobortis nisl ut aliquip ex ea commodo consequat. Duis autem vel eum iriure dolor in hendrerit in vulputate velit esse molestie consequat, vel illum dolore eu feugiat nulla facilisis at vero eros et accumsan et iusto odio dignissim qui blandit praesent luptatum zzril delenit augue duis dolore te feugait nulla facilisi.
Może przepuszczać pakiety kierowane do nieistniejącej sieci, zawartej w zsumaryzowanym wpisie.
Funkcja automatycznej sumaryzacji protokołu EIGRP (Auto-summary), tworzy wpisy oparte o sieci klasowe.
Domyślnie wszystkie trasy zsumaryzowane przez protokół EIGRP, posiadają dystans administracyjny AD równy 5.
EIGRP Path Manipulation
Sumaryzacja tras routingu może zastać wykorzystana do zrównoważenia obciążenia sieciowego pomiędzy dwiema drogami o nierównej metryce.
Zakładając że jedno z połączeń stanowi link serialowy, który powinien być utylizowany w mniejszym stopniu, a trasę docelową sieć 10.0.0.0/8, rozgłaszaną przez ruter A oraz ruter B.
Sumaryzację w takim przypadku można zastosować rozgłaszając za pomocą rutera A, trasę 10.0.0.0255.128.0.0 oraz za pomocą rutera B trasę 10.128.0.0255.128.0.0.
Sumaryzacja tras routingu
Domyślnie po stworzeniu trasy zsumaryzowanej, ruter dodaje nowo stworzony wpis do tablicy routingu, z adresem następnego przeskoku prowadzącym na interfejs Null. Zabieg ten ma na celu uniknięcie powstania pętli sieciowej, związku z tym dotyczy jedynie urządzenia lokalnego. Sąsiednie urządzenia otrzymują prawidłową trasę zsumaryzowaną z podanym adresem następnego przeskoku. Przykładowy w pis w tablicy routingu, zawierający trasę zsumaryzowaną, wygląda następująco [192.168.0.0/16 is a summary, 00:01:28, Null0] (AD5).
Funkcja automatycznej sumaryzacji (Auto-summary) protokołu EIGRP, działa w przypadku:
Sieci bezpośrednio przyległych do konfigurowanego urządzenia.
Sieci dodanych do rozgłaszania za pomocą komendy [network sieć].
Sieci z maską mniej szczegółową, od maski sieciowej przypisanej do interfejsu sieciowego, na którym ma być rozgłaszana dana trasa zsumaryzowana.
Problemy związane z auto-sumaryzacją dotyczą sieci „Discontiguous Network”.
Contiguous Network – Topologia, w której jedna sieć klasowa, nie jest rozdzielona przez inną sieć.
Discontiguous Network – Topologia, w której jedna sieć klasowa, jest rozdzielona przez inną sieć.
Przykładowa topologia obrazująca problem związany z auto-sumaryzacją
Konfiguracja sumaryzacji tras routingu
(config-router)#interface interfejs
Przechodzi do poziomu konfiguracji określonego interfejsu sieciowego.
(config-if)#ip summary-address eigrp ASN sieć maska [1-255(5)(AD)]
Tworzy wpis sumaryzujący określone w komendzie trasy routingu. Opcjonalnie umożliwia określenie wartości Dystansu Administracyjnego (Wartość AD nie jest rozgłaszana do sąsiednich urządzeń, związku z tym wpływa jedynie na działanie urządzenia lokalnego).
(config)#router eigrp ASN
Przechodzi do poziomu konfiguracji protokołu EIGRP.
(config-router)#[no] auto-summary
Wyłącza / Włącza funkcję auto-sumaryzacji.
(config-router)#summary-metric sieć maska 1-255(5)(AD)
Zmienia domyślną wartość Dystansu Administracyjnego (AD), względem określonej trasy sumaryzowanej (Wartość AD nie jest rozgłaszana do sąsiednich urządzeń, związku z tym wpływa jedynie na działanie urządzenia lokalnego).
Dodanie nowej komendy sumaryzacyjnej, resetuje relację sąsiedztwa pomiędzy ruterami znajdującymi się na konfigurowanym interfejsie sieciowym.
W nowszych wersjach systemu Cisco IOS (15.0 ->) funkcja auto-sumaryzacji jest domyślnie wyłączona.
Domyślnie wszystkie trasy zsumaryzowane, posiadają dystans administracyjny AD równy 5.
Sumaryzacja trasy domyślnej
(config-router)#interface interfejs
Przechodzi do poziomu konfiguracji określonego interfejsu sieciowego.
Tworzy wpis sumaryzujący trasę domyślną. Opcjonalnie umożliwia określenie wartości Dystansu Administracyjnego (Wartość AD nie jest rozgłaszana do sąsiednich urządzeń, związku z tym wpływa jedynie na działanie urządzenia lokalnego).
(config)#router eigrp ASN
Przechodzi do poziomu konfiguracji protokołu EIGRP.
(config-router)#[no] auto-summary
Wyłącza / Włącza funkcję auto-sumaryzacji.
(config-router)#summary-metric sieć maska 1-255(5)(AD)
Zmienia domyślną wartość Dystansu Administracyjnego (AD), względem określonej trasy sumaryzowanej (Wartość AD nie jest rozgłaszana do sąsiednich urządzeń, związku z tym wpływa jedynie na działanie urządzenia lokalnego)
Pozostałe tematy związane z konfiguracją protokołu EIGRP
Określa jakie sieci będą rozgłaszane przez konfigurowany ruter: * connected– Rozgłasza sieci bezpośrednio przyległe do rutera. * summary– Rozgłasza sieci zsumaryzowane. * static– Rozgłasza trasy statyczne (Trasy te muszą być re-dystrybuowane przez protokół EIGRP). * redistributed– Rozgłasza sieci re-dystrybuowane. * receive-only – Zaprzestaje rozgłaszania jakichkolwiek tras routingu.
Ruter skonfigurowany jako urządzenie brzegowe Stub, w odpowiedzi na otrzymane zapytanie Query odeśle wiadomość inaccessible.
#show ip protocols [| include Stub]
Wyświetla szczegółowe informacje na temat konfiguracji protokołu EIGRP jak i innych protokołów routingu dynamicznego. W tym informacje o konfiguracji strefy stub.
Pozostałe tematy związane z konfiguracją protokołu EIGRP