Protokoły routingu dynamicznego, mogą wysyłać wiadomości uwierzytelniane za pomocą hasła zapisanego w postaci czystego tekstu bądź zahaszowanej wartości. W przypadku opcji drugiej, wykorzystywany jest algorytm SHAbądź MD5.
Zasady działania procesu uwierzytelniania (Plain Text Authentication)
Ruter nadaje wiadomość do swojego sąsiada, wraz z kluczem (Hasłem) oraz numer ID klucza (Niektóre protokoły korzystają z wielu kluczy związku z tym wykorzystują numerowanie poszczególnych z nich. W przypadku, w którym dany protokół nie wspiera wielu kluczy, numer posiada wartość 0).
Sąsiednie urządzenie porównuje otrzymany klucz ze swoim własnym kluczem zapisanym w pamięci wewnętrznej:
Jeżeli obydwa klucze są takie same, ruter przyjmie wiadomość aktualizacyjną.
Jeżeli obydwa klucze nie są takie same, ruter nie przyjmie wiadomości aktualizacyjnej.
Protokoły routingu umożliwiające korzystanie z autentykacji za pomocą czystego tekstu są następujące:
Zasady działania procesu uwierzytelniania (Hashing Authentication)
Ruter wysyła wiadomość do swojego sąsiada, wraz z zahaszowaną wartość wygenerowaną za pomocą algorytmu MD5 bądź też algorytmu SHA.
Po odebraniu wiadomości, sąsiednie urządzenie za pomocą algorytmu haszującego (MD5 bądź SHA) generuje własną za-haszowaną wartość na podstawie hasła zapisanego w pamięci urządzenia, a następnie porównuje otrzymaną wartość z tą nadesłaną w wiadomości.
Jeżeli obydwie wartości są takie same, ruter przyjmie wiadomość aktualizacyjną.
Jeżeli obydwie wartości nie są takie same, ruter nie przyjmie wiadomości aktualizacyjnej.
Protokoły routingu umożliwiające korzystanie z autentykacji za pomocą wartości zahaszowanej (MD5) są następujące:
Głównym powodem wykorzystywania redystrybucji jest potrzeba połączenia sieci wykorzystujących różne protokoły routingu bądź różne instancje tego samego protokołu. Ponadto przyczynę redystrybucji może stanowić:
Wymiana sieci pomiędzy różnymi protokołami IGP.
Wymiana sieci pomiędzy takimi samymi protokołami IGP.
Wymiana sieci pomiędzy protokołem IGP a protokołem BGP.
Wymagania dotyczące redystrybucji
Proces redystrybucji może zaistnieć pomiędzy dwoma protokołami routingu, na jednym ruterze. Obydwa protokołu muszą być aktywne ponadto muszą posiadać po przynajmniej jednym aktywnym interfejsie sieciowym.
Proces redystrybucji należy aktywować na obydwóch protokołach routingu za pomocą komendy [redistribute].
Działanie redystrybucji
System Cisco IOS wspiera proces redystrybucji, poprzez wykorzystanie tablicy routingu. Pobiera on trasy rozgłaszane przez określony protokół routingu, aby następnie przekazać je do tablicy redystrybucji, skąd pobierane są przez inny protokół routingu, a następnie rozgłaszane dalej z poziomu jego własnej tablicy topologii.
W przypadku niektórych protokołów routingu (EIGRP), przed rozpoczęciem procesu redystrybucji należy określić metrykę, względem rozgłaszanych tras.
Problemy związane z redystrybucją tras routingu (Loop Problems with Multiple Redistribution Points)
Loop Problems with Multiple Redistribution Points
Opis problemu
Wykorzystanie dwóch bądź większej liczby punktów redystrybucyjnych, pomiędzy dwoma protokołami routingu, może doprowadzić do powstania problemu pętli domenowych (Domain Loop Problem). Przez który droga do sieci X z rutera R2 przechodzić będzie przez sąsiednią instancję routingu, chodź powinna przez domenę wewnętrzną.
Powyższy problem może wystąpić w przypadku, redystrybucji protokołu RIP (AD 120) do protokołu OSPF (AD 110).
Problem związany z redystrybucją tras routingu nie dotyczy scenariuszy wykorzystujących protokół EIGRP z domyślnymi ustawieniami tego protokołu.
Rozwiązanie problemu za pomocą większej wartości metryki
Najprostszą
metodą umożliwiającą uniknięcie problemu związanego z redystrybucją tras
routingu, jest zastosowanie znacząco większej wartości metryki w procesie
redystrybucji jednego protokołu routingu do drugiego. Oraz znaczące jej mniejszej
w przypadku redystrybucji w drugą stronę.
Protokół OSPF rozwiązuje problem związany z redystrybucją tras routingu, poprzez preferowanie tras wewnętrznych.
Rozwiązanie problemu za pomocą dystansu administracyjnego
Zmieniając wartość Dystansu Administracyjnego dla tras wewnętrznych (Internal) oraz zewnętrznych (External), administrator może manipulować pierwszeństwem w dodawaniu tras jednego protokołu routingu przed drugim. W tym miejscu warto przypomnieć, że redystrybuowane są jedynie sieci znajdujące się w tablicy routingu, jeżeli więc ruter RD1 otrzyma tę samą sieć rozgłaszaną pomocą protokołu A oraz protokołu B wybierze ten z mniejszą wartością AD, następnie dodając wybraną trasę do tablicy routingu skąd może być dalej rozgłaszana.
Porównanie wartości Dystansu Administracyjnego tras zewnętrznych do tras wewnętrznych:
Wartość Dystansu Administracyjnego jest konfigurowana na lokalnym ruterze (Nie ulega propagacji na inne urządzenia).
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)
Problemy związane z redystrybucją tras routingu (Loop Problems with More
that Two Routing Domains)
Loop Problems with More that Two Routing Domains
Przyczyny powstawania problemu związanego z pętlą domenową (Domain Loop
Problem)
Ruter R2rozgłasza sieć X z domeny RIPdo domeny EIGPRz wartością AD równą 170.
Ruter RD1Rozgłasza sieć Xz domenyEIGPRdo domenyOSPFz wartością AD równą 110 (E2).
Ruter RD2otrzymuje dwie trasy zewnętrzne prowadzące do sieci X, pierwszą z domeny OSPFz wartościąAD równą 110oraz drugą z domeny EIGRPz wartością AD równą 170.
Ruter RD2dodaje sieć X z trasą prowadzącą przez domenę OSPF, dodatkowo rozgłaszając sieć X do domeny EIGRP z wartością AD równą 170.
Ruter R3otrzymuje dwie trasy zewnętrzne EIGRPz wartością AD równą 170.
Rozwiązanie problemu za pomocą dystansu administracyjnego
Rozwiązaniem problemu pętli domenowych może być zmiana wartości Dystansu Administracyjnego względem rozgłaszanych tras.
Zwiększając na ruterze RD1 oraz ruterze RD2 wartość dystansu administracyjnego dla trasy prowadzącej do sieci X, rozgłaszanej przez protokół OSPF, do wartości wyższej niż ta rozgłaszana przez domenę EIGRP (170). Administrator zmusi lokalne urządzenie do wybrania bardziej optymalnej trasy przez domenę EIGRP.
Wartość Dystansu Administracyjnego można skonfigurować względem konkretnej sieci za pomocą komendy [distance AD {adres-IP(IP rutera rozgłaszającego daną sieć) maska / RID(W przypadku protokołu OSPF wartość RID rutera rozgłaszającego daną sieć) 0.0.0.0} ACL] wydanej w trybie konfiguracji danego protokołu routingu.
Przykładowa konfiguracja wygląda następująco:
RD2 (config)#router ospf 1 – Przechodzi do poziomu konfiguracji protokołu OSPF.
RD2 (config-router)#distance 171(Większa wartość AD)1.1.1.1 0.0.0.0 ACL – W przypadku protokołu OSPF adres rutera rozgłaszającego daną sieć zostaje zastąpiony przez wartość RID a maska składa się z samych zer.
RD2 (config-router)#ip access-list standard ACL
RD2 (config-std-nacl)#permit 172.20.0.0 255.255.255.0(Adres i maska sieci X)
! g
konfigurację należy wykonać na ruterze RD1 oraz R2.
Rozwiązanie problemu za pomocą filtrowania tras routingu
Rozwiązaniem
problemu pętli domenowych może być filtracja tras routingu.
W
przypadku redystrybucji tras routingu z domeny OSPF do EIGRP należy zastosować
dodatkowe filtrowanie wszelkich tras rozgłaszanych przez protokół RIP, za
pomocą np. router mapy.
Rozwiązanie problemu za pomocą tagowania tras routingu
Rozwiązaniem
problemu pętli domenowych, może być filtracja tras routingu na podstawie
tag-ów.
Aby
usprawnić proces filtrowania, wszelkie trasy redystrybuowane np. z domeny RIP
do domeny EIGPR na ruterze R2, mogą zostać otagowane. Następnie filtracja tras
na ruterze RD1 oraz RD2 będzie wykonywana jedynie w stosunku do tras
odpowiednio otagowanych.
Domyślne nadchodzące do rutera pakiety są de-enkapsulowane do poziomu ramki Ethernet-owej, sprawdzane pod kontem wartości FCS a następnie kierowane do interfejsu wyjściowego na podstawie tablicy CEF. Funkcja PBR umożliwia zmianę domyślnego zachowania rutera dzięki czemu nadchodzące pakiety będą rozpatrywane zgodnie z innymi niż domyślne kryteriami (Proces działania jest następujący: Interfejs wejściowy->PBR->de-enkapsulacja->…).
Logika działanie funkcji PBR z wykorzystaniem opcji Default:
Określa Interfejs bądź adres IP następnego przeskoku, dla sieci wskazanych komendą [match]. Poniższe opcje decydują o kolejności sprawdzania adresu następnego przeskoku: * brak – Wpierw rozpatrywane zostają wpisy PBR a następnie zawartość tablicy routingu. * default – Wpierw rozpatrywana zostaje zawartość tablicy routingu a następnie wpisy PBR. * recursive – Zarówno opcja pierwsza jak i druga wymagają aby adres następnego przeskoku znajdował się w sieci bezpośrednio przyległej do rutera. Natomiast opcja „recursive” nie posiada takiego obostrzenia.
# show route-map[nazwa-router-mapy]
Wyświetla określoną / wszystkie skonfigurowane na danym urządzeniu Router Mapy.
Funkcja PBR była wykorzystywana onegdaj prze protokół QoS.
Przypisywanie wpisu funkcji PBR do interfejsu
(config-route-map)# interface interfejs
Przechodzi do poziomu konfiguracji określonego interfejsu sieciowego.
(config-if)# ip policy route-map nazwa-PBR
Przypisuje wpis funkcji PBR do konfigurowanego interfejsu sieciowego (Komenda nie uwzględnia pakietów wygenerowanych przez lokalne urządzenie).
(config-if)# ip local policy route-map nazwa-PBR
Przypisuje wpis funkcji PBR do konfigurowanego interfejsu sieciowego (Komenda uwzględniapakiety wygenerowane przez lokalne urządzenie).
Konfiguracja funkcji PBR z wykorzystaniem śledzenia Track
(config)# route-map nazwa-PBR permit
Tworzy nową router mapę, wykorzystaną przez funkcję PBR.
(config-route-map)# set ip next-hop verify-availability [adres-IP(Adres następnego przeskoku) 1-65535(Numer sekwencyjny) track track-ID]
Określa Interfejs bądź adres następnego przeskoku, przy jednoczesnym sprawdzeniu jego dostępność za pomocą protokołu IP SLA.
# show route-map[nazwa-router-mapy]
Wyświetla określoną / wszystkie skonfigurowane na danym urządzeniu Router Mapy.
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.
Prefix lista umożliwia określenie zakres prefix-ów, względem zdefiniowanej sieci, dzięki czemu administrator może określić nie tylko sieć ale i konkretne prefix-y bądź zakres prefix-ów.
W przypadku konfiguracji Prefix listy, długość prefix-u (prefix length) jest określana za pomocą jednego, bądź dwóch z poniższych wyrażeń:
Za pomocą wpisu „prefix-length”.
Za pomocą opcjonalnej wartości „ge-value”, która oznacza „Greater-than-or-equal-to”.
Za pomocą opcjonalnej wartości „le-value”, która oznacza „Less-than-or-equal-to”.
Dopuszcza (Permit) bądź blokuje (Deny) trasy routingu, dotyczące wskazanej w komendzie sieci. Przykładowa komenda [ip prefix-list nazwa permit 192.168.0.0/16] dopuszcza trasy należące do sieci sieci 192.168.0.0/16.
(config)#ip prefix-list nazwa-prefix-listy[seq 1-4294967294(ID sekwencji)]{deny / permit} sieć/prefix-length le max-prefix
Dopuszcza (Permit) bądź blokuje (Deny) trasy routingu, dotyczące wskazanej w komendzie sieci, której maska mieści się w zakresie od prefix-length do max-prefix. Przykładowa komenda [ip prefix-list nazwa permit 192.168.0.0/16 le 24] dopuszcza trasy routingu, posiadające prefix z zakresu od 16do 24, dla sieci 192.168.0.0/16.
Dopuszcza (Permit) bądź blokuje (Deny) trasy routingu, dotyczące wskazanej w komendzie sieci, której maska mieści się w zakresie od mini-prefix do 32. Przykładowa komenda [ip prefix-list nazwa permit 192.168.0.0/16ge 24] dopuszcza trasy routingu, posiadające prefix z zakresu od 24 do 32, dla sieci 192.168.0.0/16.
Dopuszcza (Permit) bądź blokuje (Deny) trasy routingu, dotyczące wskazanej w komendzie sieci, której maska mieści się w zakresie od mini-prefix do max-prefix. Przykładowa komenda [ip prefix-list nazwa permit 192.168.0.0/16ge 24 le 26] dopuszcza trasy routingu, posiadające prefix z zakresu od 24 do 26, dla sieci 192.168.0.0/16.
(config)#ip prefix-list nazwa-prefix-listy[seq1-4294967294(ID sekwencji)]{deny / permit}0.0.0.0/0 le 32
Dopuszcza bądź blokuje pozostałe trasy routingu (Implicit Permit / deny).
Komendy SHOW
# show ip prefix-list [nazwa-prefix-listy]
Wyświetla wszystkie / określoną w komedzie prefix listę.
# show ip prefix-list [nazwa-prefix-listy]detail
Wyświetla wszystkie / 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 ip prefix-list [nazwa-prefix-listy]summary
Wyświetla wszystkie / określoną w komedzie prefix listę, wraz z podsumowaniem dotyczącym ilości dopasowań całej prefix listy.
Wyświetla o-tagowania tras routingu, w formie adresu IPv4 (dotted-decimal).
(config)# route-tag list nazwa-tag-listy{deny / permit / seq}tag(dotted-decimal)dzika-maska
Tworzy listę dopuszczającą (Permit) bądź odrzucającą (Deny), określony w komendzie zakres, o-tagowania zapisanego w formacie adresu IPv4 (dotted-decimal).
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.
W procesie redystrybucji tras sieciowych pomiędzy różnymi protokołami routingu dynamicznego, przypisywana jest im domyślna, bądź statycznie zdefiniowana wartość metryki. Opcjonalnym narzędziem umożliwiający bardziej szczegółowe zarządzanie wartościami metryki, jest router mapa. Umożliwia ona zdefiniowanie wartości, rozgłaszanej metryki, jak i opcjonalnego tagowania tras względem określonej trasy bądź wielu tras routingu.
Ponad to ruter mapa udostępnia następujące funkcjonalności:
Filtrowanie rozgłaszanych sieci na podstawie adresu, maski oraz innych parametrów.
Przypisywanie wartości metryki do konkretnych sieci.
Określanie rodzaju trasy zewnętrznej np. E1 bądź E2.
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 interface interfejs…
Określa trasy zawierające podany w komendzie interfejs, jako interfejs następnego przeskoku.
(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)# match ip next-hop {ACL-ID/ prefix-list nazwa-prefix-listy}
Określa trasy zawierające adres następnego przeskoku (Next-hop), zawarty 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)# match ip route-source {ACL-ID /nazwa-prefix-listy}
Określa trasy rozgłaszane przez określony ruter, posiadający wartość RID określoną za pomocą listy ACL bądź Prefix liście. Konfiguracja Prefix listy, została opisana w następującym artykule.
(config-route-map)# match metric metryka [+- wartość]
Określa trasy z zdefiniowaną wartością, bądź z wskazanym zakresem (+-) metryki.
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)# set metric metryka({[OSPF, RIP] wartość metryki/[EIGRP] bandwidth delay reliability Loading mtu})
Przypisuje do określonych za pomocą komendy [match] tras routingu, wartość rozgłaszanej metryki.
(config-route-map)# set metric-type {type-1 / type-2}
Przypisuje do określonych za pomocą komendy [match] tras routingu, rodzaj rozgłaszanej trasy.
(config-route-map)# set tag{0-255.0-255.0-255.0-255…(tag)(dotted-decimal)/ 0-4294967295…(tag)(intiger)}
Przypisuje do określonych za pomocą komendy [match] tras routingu, wskazaną wartość o-tagowania. Konfiguracja tagowania tras routingu, została opisana w następującym artykule.
# show route-map[nazwa-router-mapy]
Wyświetla określoną / wszystkie skonfigurowane na danym urządzeniu Router Mapy.
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)# descryption opis
Przypisuje opis do obecnie edytowanego wpisu router mapy.
(config-route-map)# continue router-map-sequence
Przechodzi do konfiguracji nowego wpisu obecnie edytowanej router mapy.
Przypisywanie router mapy
(config)# ruter protokół [ASN]
Przechodzi do poziomu konfiguracji określonego w komendzie protokołu routingu.
Przypisuje określoną w komendzie Router mapę, do konfigurowanej instancji protokołu EIGRP.
(config-route)#router ospf Proces-ID
Przechodzi do poziomu konfiguracji protokołu OSPF.
(config-router)#distribute-list router-map nazwa-router-mapy in [interfejs]
Blokuje możliwość dodania określonej sieci do tablicy routingu, względem wszystkich protokołów routingu dynamicznego. W przypadku protokołu OSPF filtracja ta nie wpływa ani na struktury LSA ani na algorytm SPF, ponieważ dotyczy jedynie procesu aktualizacji tablicy routingu (Jest to najmniej zalecana metoda filtracji tras routingu, mogąca doprowadzić do powstania dziur w topologii).
Komendy SHOW
# show route-map[nazwa-router-mapy]
Wyświetla określoną / wszystkie skonfigurowane na danym urządzeniu Router Mapy.
# show ip route adres-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.