Upload
doannga
View
233
Download
1
Embed Size (px)
Citation preview
22.3.2016
1
Rutiranje – osnove
RIP v1 i v2
dr Nenad Krajnović[email protected]
2
Šta je rutiranje?
• Proces prosleđivanja datagrama od jednog do drugog rutera u složenoj mreži sa ciljem dovođenja datagrama do odredišne mreže
• Rutiranje se obavlja na osnovu tabele rutiranja
• Tabela rutiranja je baza podataka o dostupnosti pojedinih mreža
• Rutiranje obavljaju ruteri
3
Funkcije rutera
Ruter - usmerava IP datagrame sa jednog interfejsa na drugi u zavisnosti od odredišne IP adrese u zaglavlju IP datagrama i podataka u tabeli rutiranja.
• Ruter može biti:– Namenski (dedicated) - računar koji obavlja isključivo rutiranje.– Improvizovani (embedded) - računar opšte namene koji i rutira.
• Bez obzira na realizaciju, svaki ruter mora da poštuje standarde!• RFC 1812 - Specifikacija tehničkih zahteva za IPv4 rutere (dopunjena u RFC
2644).• Rutiranje se obavlja na osnovu informacija u tabelama rutiranja.• Tabele rutiranja moraju da budu uvek ažurne.• Razmenu sadržaja tabela rutiranja obavljaju protokoli za dinamičko rutiranje
saobraćaja.• Tabele rutiranja mogu da se formiraju i ručno u nekim slučajevima
22.3.2016
2
4
Prosleđivanje datagrama (forwarding)
• Dekapsulacija (izdvajanje) iz data-link layer paketa (npr. Ethernet paketa).• Analiza ispravnosti zaglavlja IP datagrama na osnovu kontrolne sume.• Analiza opcija za IP (source routing, record route, etc.)• Izdvajanje odredišne adrese iz IP datagrama (npr. 147.91.8.55)• Donošenje odluke o daljoj putanji datagrama na osnovu odredišne adrese i tabele
rutiranja.• Ako je odredište sam ruter, dalju obradu datagrama vrši oper. sistem rutera.• Ako je odredište van rutera, po potrebi se vrši fragmentacija datagrama radi
prilagođenja njegove dužine mrežnoj tehnologiji interfejsa na koji se upućuje.• Datagram se potom prosleđuje (forwarding) na određeni interfejs rutera radi daljeg
usmeravanja kroz mrežu ka sledećem čvoru (next hop)• Donošenje odluke o izlaznom interfejsu na osnovu podataka u tabeli rutiranja.• Provera access liste na ruteru/interfejsu da se proveri da li datagram može da bude
prosleđen ili treba da bude odbačen.• Ruter umanjuje vrednost TTL polja (TTL=TTL-1) pre njegovog prosleđivanja (ako je
TTL=0 datagram se odbacuje).• Na samom interfejsu pozivaju se funkcije data-link sloja, datagram se enkapsulira u
data-link paket i dalje prenosi korišćenjem odgovarajućeg protokola (Ethernet, PPP, HDLC ...) – određuje se MAC adresa za enkapsulaciju paketa
5
Slanje paketa sa računara
• Prvo mora da se utvrdi da li je odredište paketa lokalna mreža ili neka druga mreža
IP address: 10.5.7.14Netmask: 255.255.255.0Default gateway: 10.5.7.1
10.5.7.0/24
10.5.7.1
Odredišna IP adresa:192.168.1.10
11000000 10101000 00000001 00001010
11111111 11111111 11111111 00000000
11000000 10101000 00000001 00000000
192.168.1.0
Operacija: logičko I
≠
6
Slanje paketa sa računara
• Ako je lokalna mreža, posredstvom ARP protokola se utvrđuje MAC adresa odredišnog računara
• Ako je udaljena mreža, ARP-om se određuje MAC adresa rutera (default gateway-a) i njemu se šalje paket
22.3.2016
3
7
Rutiranje - opšti princip rada
B160.99.10/24
A147.91.8.0/23
C194.106.162.0/23
Ka drugim mrežama
a b
c
d147.91.8.0/23 a
160.99.1.0/24 b
194.106.162.0/23 c
default d
8
Analiza tabele rutiranja
• Tabelu rutiranja ruter pretražuje pre prosleđivanja datagrama.
• Ruta ka odredištu može da bude:– Preciznija (more specific)– Manje precizna (less specific)
• Pravilo: datagram se prosleđuje najpreciznijom putanjom.
• Primer za odredišnu adresu 10.91.12.6:– Ruta 10.91.12/2410.91.12/24 je preciznija od rute 10.91.8/2110.91.8/21
– Ruta 10.91/1610.91/16 manje precizna od rute 10.91.12/2410.91.12/24
– Ruta 10.91.12.6/3210.91.12.6/32 je u svakom slučajuje u svakom slučaju najpreciznija!
9
Primer za odredišnu adresu 10.91.12.610.91.12.6
00001010 01011011 0000110000001010 01011011 00001100 0000000000000000 10.91.12/2410.91.12/24
00001010 0101101100001010 01011011 00000000 0000000000000000 00000000 10.91/1610.91/16
00001010 01011011 0000100001010 01011011 00001000 00000000000 00000000
00001010 01011011 00001100 0000011000001010 01011011 00001100 00000110 10.9110.91.12.6.12.6//3232
10.9110.91.8.8//2121
22.3.2016
4
10
Analiza tabele rutiranja (2)
• Ako u tabeli rutiranja postoji eksplicitna putanja do odredišta (putanja sa prefiksom /32), datagram se upućuje tom putanjom!
• Ako u tabeli rutiranja postoji zapis čijih se vodećih m bita poklapa sa vodećim bitima odredišne adrese, datagram ide tamo.
• Ako u tabeli ne postoji adresa čiji se vodeći biti poklapaju sa odredišnom adresom, datagram ide ka default gateway putanji.
11
Izbor najpreciznije rute u tabeli (longest match routing rule)
• U tabeli može da se nalazi nekoliko ruta koje se preklapaju, tj. gde za jedno odredište postoji više ruta koje se poklapaju
• Ruter će uvek da izabere najprecizniju rutu (poklapa se najveći broj bita)
12
Izbor najpreciznije rute u tabeli (longest match routing rule)
• Primer – ako je sadržaj tabele rutiranja:DestinationDestination Next hopNext hop InterfaceInterface
10.91.8.0 /21 10.91.254.9 Serial010.91.8.0 /21 10.91.254.9 Serial0
10.91.12.0 /22 10.91.254.13 Serial110.91.12.0 /22 10.91.254.13 Serial1
0.0.0.0 /0 10.91.250.1 Ethernet00.0.0.0 /0 10.91.250.1 Ethernet0
• Saobraćaj za 10.91.8.110.91.8.1 treba poslati na Serial0Serial0 interfejs• Saobraćaj za 10.91.14.110.91.14.1 treba poslati na Serial1Serial1 interfejs• Saobraćaj za 10.91.1.110.91.1.1 treba poslati na Ethernet0Ethernet0 interfejs
22.3.2016
5
13
Primer jedne mreže sa ruterima
147.91.9.0/26
147.91.8.0/24
Eth1: 147.91.9.1/26Eth1: 147.91.9.1/26
Eth0: 147.91.8.77/24Eth0: 147.91.8.77/24
serial0serial0
147.91.9.32147.91.9.32
147.91.9.30147.91.9.30
147.91.9.31147.91.9.31
14
Primer analize tabele rutiranja
Destination Gateway Netmask Interface0.0.0.0 147.91.9.32 0.0.0.0 Ethernet1
147.91.8.0 147.91.8.77 255.255.255.0 Ethernet0
147.91.9.0 147.91.9.1 255.255.255.192 Ethernet1
147.91.9.64 147.91.9.31 255.255.255.192 Ethernet1
147.91.9.251 147.91.9.30 255.255.255.255 Ethernet1
147.91.241.0 0.0.0.0 255.255.255.0 Serial0
• Odredište =147.91.9.251 => interfejs Ethernet1; sledeća stanica: 147.91.9.30.
• Odredište =147.91.9.67 => interfejs Ethernet1; sledeća stanica: 147.91.9.31.
• Odredište =147.91.8.1 => interfejs Ethernet0, datagram se isporučuje direktno
• Odredište =147.91.9.2 => interfejs Ethernet1, datagram se isporučuje direktno
• Odredište =147.91.241.1 => interfejs Serial0, datagram se isporučuje direktno
• Odredište =15.1.68.2 => interfejs Ethernet1, sledeća stanica: 147.91.9.32.
15
• Šta se dobija agregacijom ruta:– Čuva se memorija rutera– Minimizuje se količina routing informacija koje se razmenjuju između
rutera
• Princip: nekoliko ruta koje imaju isti next hop se mogu sažeti u jednu rutu sa manjom mrežnom maskom
• Primer:
Sažimanje (agregacija) ruta (Route Aggregation)
10.91.8.0 10.91.8.0 -- 10.91.11.25510.91.11.255
10.91.8 10.91.8 /24/2410.91.9 10.91.9 /24/2410.91.1010.91.10/23/23
10.91.8 /2210.91.8 /22 10.91.8/24
10.91.9/24
10.91.10/23
AA BB
22.3.2016
6
16
Uobičajene greške kod agregacije rutaUobičajene greške kod agregacije ruta
10.91.8 /2210.91.8 /2210.91.8/24
10.91.9/24
10.91.11/24
10.91.10/24
0.0.0.0 /00.0.0.0 /0
AABB
CC DD
Black hole:Black hole:
10.91.10/2410.91.10/24
SAVET – Nikada ne treba agregirati one mrežekoje vam ne pripadaju ili nisu direktno dostupne !!!
17
Ispravna konfiguracija
10.91.8 /2310.91.8 /23
10.91.11/2410.91.11/24 10.91.8/24
10.91.9/24
10.91.11/24
10.91.10/24
10.91.10/2410.91.10/24
0.0.0.0 /00.0.0.0 /0
AABB
CC DD
18
Statičko i dinamičko rutiranje
• Sa porastom mreže potrebno je redovno ažurirati tabelu rutiranja.• Ažuriranje može da bude ručno (static) ili naučeno dinamički:• Statičke rute:
– Unete od strane administratora rutera.– Idealne za ISP-a kada povezuje single-homed korisnika.– Loše rešenje za velike mreže.
• Dinamičko rutiranje:– Tabela rutiranja se ažurira pomoću informacija dobijenih od drugog rutera.– Protokoli rutiranja – koriste se za razmenu informacija o rutama između
rutera.– Loše rešenje za slabo kontrolisane mreže gde korisnici mogu da oglase
đubre.
VAŽNO!VAŽNO! –– PProtorotokoli rutiranja ne rutiraju paketekoli rutiranja ne rutiraju pakete –– oni oni samo razmenjuju informacije o rutiranju i rutamasamo razmenjuju informacije o rutiranju i rutama
Saobraćaj se rutiraSaobraćaj se rutira od straneod strane IP IP slojasloja!!!!!!
22.3.2016
7
19
Statičke rute
• Ručno ih konfiguriše administrator rutera.
• Ne treba ih izbegavati kada daju efikasno rešenje!
• Nisu uvek fleksibilne ali rade šta treba!
• Tipična primena u mrežama ISP-a.
•• Uvek je bolje saobraćaj za Uvek je bolje saobraćaj za neiskusne korisnike rutirati neiskusne korisnike rutirati pomoću statičkih ruta nego pomoću statičkih ruta nego im dozvoliti da oni im dozvoliti da oni oglašavaju koješta!oglašavaju koješta!
POPPOP--11
POPPOP--22
KorisniciKorisnici
10.91.8 /2410.91.8 /2410.91.9 /2610.91.9 /26
10.91.9.64 /2710.91.9.64 /27
10.91.1 /2310.91.1 /23
10.91.4 /2210.91.4 /22
StatiStatičkečke ruterute
DDinamičkoinamičko
oglašavanjeoglašavanje
10.91.8/2310.91.8/23
20
Dinamičko rutiranje
POPPOP--11 POPPOP--22
10.91 /1610.91 /16
OglašavanjeOglašavanje
AAnnouncennounce
10.91/1610.91/16
PrihvatanjePrihvatanje
AcceptAccept
10.91/1610.91/16
Saobraćaj sada može da se rutira kaSaobraćaj sada može da se rutira ka::
10.91/1610.91/16
Pravila za oglašavanje i prihvatanje ruta su osnovniPravila za oglašavanje i prihvatanje ruta su osnovnideo protokola za dinamičko rutiranje saobraćajadeo protokola za dinamičko rutiranje saobraćaja!!
21
Interno rutiranje
• Rutiranje saobraćaja unutar autonomnog sistema.• Prosleđivanje datagrama precizno ka odredišnom računaru.• Sa stanovišta internog rutiranja, Internet je graf čiji su čvorovi
pojedini povezani računari unutar AS.• Podaci koji se prenose su adrese odredišnog računara/mreže,
adresa rutera ka odredištu i faktor cene (metric).• Faktor cene (metrika) zavisi od tehničkih parametara mreže
(protok na linku, broj linkova između dve tačke i slično)• Protokoli koji se koriste mogu se podeliti u dve kategorije:
– Distance vector - faktori cene pridružuju se pojedinim mrežama (RIPv1, RIPv2, IGRP, EIGRP).
– Link-state - faktori cene pridružuju se interfejsima rutera ka mreži (OSPF).
22.3.2016
8
22
Eksterno rutiranje
• Rutiranje saobraćaja između autonomnih sistema.• Prosleđivanje datagrama od polaznog ka odredišnom AS.• Sa stanovišta eksternog rutiranja, Internet je graf čiji su čvorovi
pojedini AS.• Prosleđivanje datagrama precizno ka odredišnom računaru
obavljaju protokoli internog rutiranja.• Podaci koji se prenose su liste IP adresa dostupnih mreža unutar
jednog AS.• Postoji više protokola za razmenu informacija o rutiranju (GGP,
EGP, BGP), od čega se danas koristi isključivo BGP-4.• Parametri za izbor najbolje rute nisu tehničke prirode već su
administrativni
23
24
RIPv1
• Nastao je na Berkeley-u, prilikom razvoja koda za Unix
• Spada u grupu Distance Vector protokola (Bellman-Ford algoritam)
• Specificiran u okviru RFC-a 1058 (jun 1988, Charles Hedrick)
• Spada u grupu Interior Gateway protokola (IGP)
22.3.2016
9
25
Distance Vector algoritam - Princip rada
• Ako računaru W stigne poruka o putanji do odredišne mreže D, tada - ako putanja do D ne postoji u tabeli, upisuje se u tabelu, sa faktorom cene: d(W,R)+d(R,D) = d(R,D)+1
• Ako podatak o D već postoji u tabeli, pri čemu putanja vodi preko R, a poruka stigne sa rutera R, tekuća informacija se menja bez obzira na tekući faktor cene.
• Ako poruka stigne sa R’, tada se informacija menja ako je: d(W,R’) < d(W,R).
DDDD
RRRRR’R’R’R’
WWWW
26
RIP – osnovne karakteristike
• Koristi Distance Vector algoritam za propagiranje informacija o rutama
• Za “beskonačnu vrednost” uzeta je vrednost 16.
• Zašto 16? Autori su smatrali da RIP nije dobar protokol za veće mreže!
• Cena svakog linka je 1 ali je administratorima ostavljena mogućnost da promene cenu.
27
RIP – osnovne karakteristike
• Classful protokol, tako da ne prenosi informacije o subnet maski već samo mrežnu adresu.
• Za svako odredište se čuva samo jedna ruta.
• Ako ima više ruta za isto odredište, čuva se ona ruta koja ima najmanju metriku.
22.3.2016
10
28
RIP – osnovne karakteristike
• Oglašava kompletnu tabelu rutiranja na svakih 30 sekundi.
• Ako se neki ruter ne oglasi 6 puta uzastopno (180 sekundi), tada se proglašava da nije dostupan i sve njegove rute se brišu.
• Oglašavanje se šalje kao IP broadcast poruka.
29
RIP – osnovne karakteristike
• U cilju što bržeg propagiranja izmena, svaki ruter mora da šalje update poruku čim dođe do promene u njegovoj tabeli rutiranja.
• Koristi Split Horizon i Split Horizon with Poison Reverse (prilikom konfigurisanja se bira koji od ovih algoritama se koristi).
30
RIP protokol
• U tabeli rutiranja se čuvaju sledeći podaci: – Mrežna adresa sa subnet maskom (ruta)
– IP adresa sledećeg rutera
– Oznaka interfejsa preko koga se šalje paket
– Metrika – cena koštanja
– Timer – vreme proteklo od kad je poslednji put informacija dobijena (osvežena)
22.3.2016
11
31
Format UDP+RIP paketa
Must be zero (2)Must be zero (2)
Must be zero (2)Must be zero (2)Address family identifier (2)Address family identifier (2)
Version=1 (1)Version=1 (1)Command (1)Command (1)
IP address (4)IP address (4)
Must be zero (4)Must be zero (4)
Must be zero (4)Must be zero (4)
Metric (4)Metric (4)
Length (2)Length (2) Checksum (2)Checksum (2)
Destination port = 520Destination port = 520Source port = 520Source port = 520
UDP RIPv1
32
Format RIP paketa
• Za transport se koristi UDP protokol
• Source i destination port su uvek 520.
• Paket se šalje kao IP broadcast paket mreže na koju je priključen (ne koristi se opšta broadcast adresa 255.255.255.255).
33
Format RIP paketa
• Command:– 1 – request – zahtev odredišnom sistemu da
pošalje svoju tabelu rutiranja;
– 2 – response – odgovor na upit ili samostalno generisanje update poruke svakih 30 sekundi;
– 3 – traceon – napušteno korišćenje (obsolete);
22.3.2016
12
34
Format RIP paketa
• Command:– 4 – traceoff - napušteno korišćenje (obsolete);
– 5 – reserved – rezervisano za korišćenje od strane firme Sun Microsystems; ostali sistemi mogu da ignorišu ovu komandu;
35
Format RIP paketa
• Version – verzija RIP protokola; u ovom slučaju je verzija 1
• Address family Identifier – protokol je inicijalno dizajniran da može da prenosi informacije za razne protokole (IP, IPX,...)
• Ovde ćemo razmatrati rad RIP-a za IP protokol tako da je u polju tipa broj 2.
36
Format RIP paketa
• Podaci – blok od 4 x 4 bajta predstavlja jedan zapis o ruti; u okviru jednog UDP paketa može da bude do 25 takvih zapisa.
• Prvih 4 bajta predstavljaju mrežnu adresu (32 bita) odredišne mreže.
• Poslednjih 4 bajta u bloku predstavljaju metriku; to je broj od 1 do 15; ako je 16 to znači da mreža nije dostupna.
22.3.2016
13
37
Format RIP paketa
• Maksimalno dozvoljena veličina RIP dela paketa (bez IP i UDP zaglavlja) je 512 bajtova.
• Ako ta veličina nije dovoljno za smeštanje svih potrebnih podataka, generiše se novi RIP paket bez bilo kakvih posebnih oznaka.
38
Format RIP paketa
• U okviru zapisa koji predstavlja rutu, može da se pojavi adresa:– Host-a,
– Mreže – u skladu sa klasnim adresiranjem,
– Podmreže,
– 0.0.0.0 – default ruta.
39
Interpretacija informacija
147.91.8.0/24147.91.8.0/24
147.91.8.1/24147.91.8.1/24
147.91.15.1/24147.91.15.1/24
147.91.22.1/24147.91.22.1/24
147.91.8.3/24147.91.8.3/24
147.91.18.3/24147.91.18.3/24
147.91.15.0 – 1147.91.22.0 - 1147.91.16.6 – 3147.91.0.0 - 5
22.3.2016
14
40
Interpretacija informacija
• U primeru sa slike, kompletna mreža je u adresnom opsegu 147.91.0.0/16 što predstavlja B klasu.
• B klasa je podeljena na podmreže sa subnet maskom /24.
• Svi interfejsi na ruteru moraju da budu sa subnet maskom dužine /24!
41
Interpretacija informacija
• Rute 147.91.15.0 i 147.91.22.0 predstavljaju podmreže i tako se i interpretiraju.
• Ruta 147.91.0.0 je adresa klase B i interpretira se kao 147.91.0.0/16.
• Ruta 147.91.16.6 ima host deo koji je različit od nule tako da se posmatra kao host ruta (147.91.16.6/32).
42
Formiranje tabele rutiranja147.91.15.0 – 1147.91.22.0 - 1147.91.16.6 – 3147.91.0.0 - 5
147.91.8.3/24147.91.8.3/24
Ruta interfejs metrikaNext
hop
147.91.15.0/24 eth0 2 147.91.8.1
147.91.22.0/24 eth0 2 147.91.8.1
147.91.8.0/24 eth0Directly
connected147.91.8.3
147.91.16.6/32 eth0 4 147.91.8.1
147.91.0.0/16 eth0 6 147.91.8.1
22.3.2016
15
43
Formiranje tabele rutiranja
• Za svaku rutu se proverava da li pripada istoj adresnoj klasi (ovde je to B klasa) kao i interfejs rutera preko koga je primljeno oglašavanje.
• Ako jeste, uzima se subnet maska prijemnog interfejsa i koristi se za sve rute koje su tuda stigle.
• Ako host deo rute nije nula, tada se to proglašava za host rutu i stavlja se subnet maska /32.
44
Formiranje tabele rutiranja
• Ako adresa nije iz iste adresne klase kao i adresa tog interfejsa, tada se subnet maska definiše u skladu sa pravilima classfuladresiranja.
45
Formiranje tabele rutiranja
• Uz izabranu rutu se pridružuje interfejs preko koga je primljeno oglašavanje.
• Uz svaku rutu se pridružuje i IP adresa
rutera koji je poslao to oglašavanje.
• Ova adresa se dobija iz zaglavlja IP
datagrama sa RIP paketom.
22.3.2016
16
46
Formiranje tabele rutiranja147.91.15.0 – 1147.91.22.0 - 1147.91.16.6 – 3154.22.35.0 - 5
147.91.8.3/24147.91.8.3/24
Ruta interfejs metrikaNext
hop
147.91.15.0/24 eth0 2 147.91.8.1
147.91.22.0/24 eth0 2 147.91.8.1
147.91.8.0/24 eth0Directly
connected147.91.8.3
147.91.16.6/32 eth0 4 147.91.8.1
154.22.0.0/16154.22.0.0/16 eth0eth0 66 147.91.8.1147.91.8.1
47
Tajmeri
• Za svaku rutu se definišu dva tajmera:– Timeout timer
– Garbage-collection timer
• Timeout tajmer odbrojava vreme od trenutka kada je poslednji put ta ruta primljena kroz oglašavanje. Ako istekne 180 sekundi (6 perioda oglašavanja) a da navedena ruta nije dobijena, ona se proglašava za nevažeću.
48
Tajmeri
• Kada se ruta proglasi za nevažeću, ona se više ne koristi za rutiranje saobraćaja.
• Aktivira se Garbage-collection tajmer koji odbrojava 120 sekundi u toku kojih ruter mora da oglasi datu rutu sa metrikom 16.
• Posle isticanja dodatnih 120 sekundi ruta se definitivno briše iz tabele rutiranja.
22.3.2016
17
49
Brisanje rute
• Do brisanja rute može doći iz dva razloga:– Isteklo je 180 sekundi od poslednjeg
oglašavanja,
– primljeno je oglašavanje za navedenu rutu sa metrikom 16.
50
Prednosti
• Jednostavan je za implementaciju tako da se bez problema može koristiti i na računarima (a ne samo na ruterima).
• Nema ograničenja po pitanju broja rutera u mreži.
• Uređaji mogu samo da slušaju RIP oglašavanje bez potrebe da se oni oglašavaju (tipično za servere).
51
Mane
• Velika količina saobraćaja na mreži.
• Spora konvergencija kada dođe do promene topologije.
• Loša sigurnost protokola.
• Ograničena maksimalna veličina mreže.
• Koristi classful adrese.
• Ne omogućava load balancing.
22.3.2016
18
52
Sigurnost
• Svako može da pošalje RIP update poruku i da se proglasi za ruter.
• U zavisnosti od metrike koja će biti oglašena, može da privuče na sebe kompletan saobraćaj na mreži.
• Moguće je lako podmetnuti lažne podatke (lažna ruta, lažna source IP adresa,...).
RIPv2
• Nastao kao pokušaj da se RIPv1 protokol popravi i prilagodi novim potrebama
• Definisan u okviru RFC-a 2453
• Ima status IETF standarda
RIPv2 - Osnovne karakteristike
• Classless protokol
• Koristi isti distance vector algoritam kao i RIPv1
• Zadržana je maksimalno moguća kompatibilnost sa RIPv1 protokolom
• Koristi se isti format paketa
• Za prenos dodatnih informacija (subnet, next hop) koriste se polja koja su bila prazna
22.3.2016
19
RIPv2 - Osnovne karakteristike
• Uveo je autentifikaciju oglašavanja u cilju sprečavanja lažnih paketa
• Umesto broadcast-a, koristi multicast slanje poruka o rutama
• Zadržan je max broj hop-ova od 15 u cilju zadržavanja kompatibilnosti sa RIPv1
Format UDP+RIPv2 paketa
Must be zero (2)Must be zero (2)
Route Tag (2)Route Tag (2)Address family identifier (2)Address family identifier (2)
Version=2 (1)Version=2 (1)Command (1)Command (1)
IP address (4)IP address (4)
Subnet mask (4)Subnet mask (4)
Next hop (4)Next hop (4)
Metric (4)Metric (4)
Length (2)Length (2) Checksum (2)Checksum (2)
Destination port = 520Destination port = 520Source port = 520Source port = 520
UDP RIPv2
Format RIPv2 paketa
• Vrednost zajedničkih polja sa RIPv1 se nije menjala
• U jednom RIPv2 paketu mogu da budu podaci za 1 do 25 ruta
• Route tag definiše tip rute:– Internal – ruta unutar RIPv2 domena
– External – ruta ubačena u RIPv2 iz nekog drugog protokola
22.3.2016
20
RIPv2 - Autentifikacija
• Za potrebe autentifikacije oglašavanja koristi se jedno (uvek prvo) kompletno polje za oglašavanje rute (20 bajtova)
• Ako se koristi autentifikacija tada polje address family identifier ima vrednost 0xFFFF
• Ako se koristi autentifikacija može biti do 24 rute u jednom paketu
Route Tag (2)Route Tag (2)Address family identifier (2)Address family identifier (2)
IP address (4)IP address (4)
Subnet mask (4)Subnet mask (4)
Next hop (4)Next hop (4)
Metric (4)Metric (4)
Format RIPv2 paketa sa autentifikacijomMust be zero (2)Must be zero (2)
Authentication Type (2)Authentication Type (2)Addr. family identifier=0xFFFFAddr. family identifier=0xFFFF
Version=2 (1)Version=2 (1)Command (1)Command (1)
Authentication (4)Authentication (4)
AuthenticationAuthentication (4)(4)
AuthenticationAuthentication (4)(4)
AuthenticationAuthentication (4)(4)
RIPv2 - Autentifikacija
• Prema RFC-u, definisan je samo jedan tip autentifikacije (tip 2)
• Autentifikacija se sastoji u prenosu jedne reči u clear text formatu
• Prazna mesta do kraja polja se popunjavaju sa 0x00
• Neophodno poklapanje šifre na prijemnoj i predajnoj strani
22.3.2016
21
RIPv2 - Polje subnet mask
• Sadrži informaciju o tome kolika je dužina mrežnog prefiksa za tu rutu
• Svaka ruta ima svoju dužinu mrežnog prefiksa
RIPv2 - Polje next hop
• Sadrži IP adresu prvog sledećeg rutera kome treba poslati paket u cilju dostizanja krajnjeg odredišta
• Ako polje ima vrednost 0.0.0.0 to znači da se za next hop uzima IP adresa izvora RIP paketa (iz zaglavlja IP datagrama)
RIPv2 - Način rada
• Svakih 30 sekundi se kompletna tabela rutiranja šalje preko mreže
• Sve se šalje na multicast adresu 224.0.0.9
• Korišćenje multicast-a u cilju smanjenja opterećenja računara u mreži
• Zadržane su vrednosti za tajmere koje su se koristile kod RIPv1
22.3.2016
22
RIPv2 - Način rada
• Ako ruter sa RIPv2 protokolom primi RIPv1 upit, mora da odgovori u RIPv1 formatu.
• Ako je na ruteru aktivirano slanje samo RIPv2 paketa, tada se ne odgovara na ovakav upit.
RIPv2 - Prednosti
• Omogućio classless način rutiranja saobraćaja
• Uveo autentifikaciju prilikom slanja update paketa
• Korišćenje multicast adrese za oglašavanje
RIPv2 - Mane
• Zadržao maksimalnu veličinu mreže do 15
• Relativno slab mehanizam autentifikacije
22.3.2016
23
67
Cisco IOS – konfigurisanje RIPv1
• Posle 180 sekundi od poslednjeg oglašavanja proglašava rutu za nevažeću.
• Posle 240 sekundi od poslednjeg oglašavanja briše rutu iz tabele.
68
Cisco IOS – konfigurisanje RIPv1
• Da bi se koristio RIP, neophodno je aktivirati RIP na ruteru:
Router(config)# router rip
Router(config-router)# network IP_adresa_mreže
• Pošto RIP poštuje classful adresiranje, navodi se adresa mreže u skladu sa klasama!
• RIP će se koristiti samo na interfejsima čija je adresa iz navedene mreže!
69
Cisco IOS – konfigurisanje RIPv1
• IOS dozvoljava da se svi tajmeri koji se koriste kod RIP-a mogu menjati.
• Ako se bilo šta menja, to mora da se uradi na SVIM ruterima u mreži.
• Default vrednosti za tajmere treba menjati samo ako ste sigurni šta ćete postići time.
22.3.2016
24
70
Cisco IOS – konfigurisanje RIPv1
• Prilikom konfigurisanja mora se definisati o kojoj verziji RIP protokola se radi:
Router(config-router)# version {1 | 2}
71
Cisco IOS – konfigurisanje RIPv1
• Default ponašanje rutera je da i šalje i prima RIP pakete na svim interfejsima koji imaju IP adresu iz opsega rada RIP protokola.
• IOS dozvoljava da se na svakom interfejsu eksplicitno postavi da li će da šalje RIP pakete, prima RIP pakete ili i jedno i drugo (default).
72
Cisco IOS – konfigurisanje RIPv1
• Upravljanjem slanjem/prijemom RIP paketa:
Router(config-if)# ip rip { send | receive } version 1
22.3.2016
25
73
Cisco IOS – konfigurisanje RIPv1
• Za određenu vrstu interfejsa ima smisla isključiti split horizon algoritam (npr. frame relay).
• To se radi za svaki interfejs posebno:
Router(config-if)# ip split-horizon
Router(config-if)# no ip split-horizon
74
Cisco IOS – konfigurisanje RIPv1
• Da bi ruter mogao da generiše default rutu, neophodno je to eksplicitno konfigurisati:
Router(config-router)# default-information originate
75
Cisco IOS – konfigurisanje RIPv1
• Da bi se proverila konfiguracija RIP protokola koristi se komanda:
Router# show ip protocols
22.3.2016
26
76
Cisco IOS – konfigurisanje
• Da bi se dobio sadržaj tabele rutiranja unosi se komanda:
Router> show ip route
77
Cisco IOS - primeri
147.91.8.1/24
147.91.15.1/24
147.91.15.2/24147.91.9.1/24
Interface ethernet0ip address 147.91.8.1
255.255.255.0ip broadcast-address
147.91.8.255!Interface serial0
encapsulation pppip address 147.91.15.1
255.255.255.0! Router rip
network 147.91.0.0
Interface ethernet0ip address 147.91.9.1
255.255.255.0ip broadcast-address
147.91.9.255!Interface serial1
encapsulation pppip address 147.91.15.2
255.255.255.0! Router rip
network 147.91.0.0
78
Cisco IOS - primeri
147.91.8.1/24
147.91.15.1/24
147.91.15.2/24147.91.9.1/24
Interface ethernet0ip address 147.91.8.1 255.255.255.0ip broadcast-address 147.91.8.255
!Interface serial0
encapsulation pppip address 147.91.15.1 255.255.255.0
! Router rip
network 147.91.0.0
Interface ethernet0ip address 147.91.9.1 255.255.255.0ip broadcast-address 147.91.9.255
!Interface serial0
encapsulation pppip address 147.91.15.2 255.255.255.0
!Interface serial1
encapsulation pppip address 195.178.34.2 255.255.255.252
! Router rip
network 147.91.0.0default-information originate
!ip route 0.0.0.0 0.0.0.0 195.178.34.1 2
INTERNET
195.178.34.2/30
22.3.2016
27
Aktiviranje RIPv2 protokola
• Da bi se koristio RIPv2, neophodno je aktivirati RIPv2 na ruteru:
Router(config)# router rip
Router(config-router)# version 2
Router(config-router)# network mrežna_adr.
• RIPv2 će se koristiti samo na interfejsima čija je adresa iz navedene mreže!
Tajmeri
• IOS dozvoljava da se svi tajmeri koji se koriste kod RIPv2 mogu menjati.
• Ako se bilo šta menja, to mora da se uradi na SVIM ruterima u mreži.
• Default vrednosti za tajmere treba menjati samo ako ste sigurni šta ćete postići time.
Slanje i prijem oglašavanja
• Default ponašanje rutera je da i šalje i prima RIP pakete na svim interfejsima koji imaju IP adresu iz opsega rada RIPv2 protokola.
• IOS dozvoljava da se na svakom interfejsu eksplicitno postavi da li će da šalje RIPv2pakete, prima RIPv2 pakete ili i jedno i drugo (default).
22.3.2016
28
Izbor režima rada
• Upravljanjem slanjem/prijemom RIP paketa:
Router(config-if)# ip rip { send | receive } version 2
Split horizon
• Za određenu vrstu interfejsa ima smisla isključiti split horizon algoritam (npr. frame relay).
• To se radi za svaki interfejs posebno:
Router(config-if)# ip split-horizon
Router(config-if)# no ip split-horizon
Default ruta
• Da bi ruter mogao da generiše default rutu, neophodno je to eksplicitno konfigurisati:
Router(config-router)# default-information originate
22.3.2016
29
Autentifikacija
• Zbog slabosti clear text mehanizma autentifikacije, Cisco je uveo i MD5 (Message Digest 5) mehanizam autentifikacije
• Administratoru je ostavljeno da izabere način autentifikacije
Ključevi za autentifikaciju
• Da bi se koristila autentifikacija, moraju da se definišu ključevi koji će se koristiti
Router(config)# key chain name_of_chain
Router(config-keychain)# key number
Router(config-keychain-key)# key-string text
Router(config-keychain-key)# accept-lifetime start_time { infinite | end_time | duration seconds }
Router(config-keychain-key)# send-lifetime start_time { infinite | end_time | duration seconds }
Izbor autentifikacije
• Aktiviranje autentifikacije na interfejsu:
Router(config-if)# ip rip authentication
keychain name_of_chain
Router(config-if)# ip rip authentication
mode { text | md5 }
22.3.2016
30
Sumarizacija ruta
• Po default-u, ruter će sam da uradi sumarizaciju ruta (na classful masku) na granici između dve classful mreže
172.16.0.0/16CC
Routing table
172.16.0.0/16
172.16.2.0/24AA BB
172.16.2.0/24 172.16.1.0/24 192.168.5.0/24
Sumarizacija ruta
• Da bi sumarizacija bila aktivna na nekom interfejsu, split horizon mehanizam mora da bude isključen
• Pored automatske sumarizacije, može da se eksplicitno definiše i granica sumarizacije ruta
Sumarizacija ruta
eth0
interface Ethernet0ip address 10.1.1.1 255.255.255.0ip summary-address rip 10.2.0.0 255.255.0.0no ip split-horizon
!router ripnetwork 10.0.0.0
10.2.4.0/2310.2.0.0/16
22.3.2016
31
Sumarizacija ruta
• Postoje ograničenja za sumarizaciju
• Nije dozvoljena sumarizacija na mrežni prefiks koji je kraći od prefiksa u classful adresiranju
ip summary-address rip 10.0.0.0 252.0.0.0
Sumarizacija ruta
• Sumarizacija nije uvek korisna tako da može da se i isključi:
Router(config-router)# no auto-summary
Rutiranje – osnove
RIP v1 i v2
dr Nenad Krajnović[email protected]