Il routing
Funzione di instradamento nei Router IP I Router IP hanno la funzione di instradare i datagrammi in rete: ricevono un datagramma da una interfaccia, eseguono alcune operazioni e rilanciano il datagramma stesso su un altra interfaccia. 1 2 3 IP IP Ogni datagramma attraversa un cammino composto da router e sottoreti.
Tabelle di instradamento (1/2) Il meccanismo per l instradamento in IP è basato sulla presenza in ogni host e in ogni router di una tabella di instradamento: contiene informazioni relative alle destinazioni conosciute Una tabella di instradamento (routing table) contiene delle entry (righe) del tipo (N, M, NH, I) dove: N è l indirizzo della rete di destinazione, M la maschera di rete associata ad N NH è l indirizzo del prossimo router (next-hop router) lungo la strada che porta alla destinazione I è l interfaccia del router verso cui rilanciare i datagrammi diretti a N
Tabelle di instradamento (2/2) La tabella di instradamento specifica quindi solo un passo lungo il cammino verso la destinazione quindi il router non conosce il cammino completo che il datagramma dovrà compiere Al fine di mantenere piccole le tabelle di instradamento e realizzare un instradamento efficiente, le tabelle contengono solo informazioni sulle reti e non sui singoli nodi
Esempio Rete 11.0.0.0 20.0.0.5 130.11.0.6 213.2.97.7 eth0 R1 Rete Rete 20.0.0.0 R2 130.11.0.0 R3 eth1 Rete 213.2.97.0 11.0.0.5 20.0.0.6 130.11.0.7 213.2.98.12 Rete 213.2.98.0 Tabella di instradamento di R2 Destinazione N Maschera M Next hop NH Interfaccia I 20.0.0.0 255.0.0.0 d.c. (20.0.0.6) 130.11.0.0 255.255.0.0 d.c. (130.11.0.6) 11.0.0.0 255.0.0.0 20.0.0.5 213.2.97.0 255.255.255.0 130.11.0.7 213.2.98.0 255.255.255.0 130.11.0.7 eth0 eth1 eth0 eth1 eth1
Router di default (default gateway) Router verso cui è inviato il traffico diretto ad una destinazione non presente nella tabella di routing Non obbligatorio ma molto utilizzato sia dagli hosts che dai router. Il default gateway è presente all ultima riga della tabella di instradamento ed è rappresentato con tutti zero sia nel campo N che nel campo M Destinazione N Maschera M Next hop NH 20.0.0.0 255.0.0.0 d.c. (20.0.0.6) 130.11.0.0 255.255.0.0 d.c. (130.11.0.6) 0.0.0.0 0.0.0.0 20.0.0.5 Interfaccia I eth0 eth1 eth0
Longest Prefix Matching Per valutare se un host con indirizzo X appartiene ad una sottorete con indirizzo Y/M si effettua l operazione di matching, cioè si verifica che: X and M = Y and M Quando all interno di un router si effettua l operazione di instradamento il matching va effettuato per tutte le righe della tabella di routing: se il matching dà esito positivo per più righe si attua la regola del Longest Prefix Matching, si utilizza la riga che ha il maggior numero di bit in comune con XandM
Routing statico e routing dinamico (1/2) I router devono conoscere i possibili percorsi verso le reti remote, ciò è possibile mediante Le informazioni ricevute dagli altri router (Routing Dinamico) La configurazione eseguita dall amministratore (Routing Statico)
Routing statico e routing dinamico (2/2) Il Routing Statico è una tecnica non scalabile Le route statiche devono essere configurate manualmente In caso di cambi di topologia di rete è necessario che l amministratore apporti le opportune variazioni alla configurazione delle route statiche Elevata complessità gestionale in caso di reti di grandi dimensioni Spesso i due tipi di routing, Statico e Dinamico, operano congiuntamente
Configurazione di una route statica Il comando per configurare una route statica è R1(config)#ip route Dest_IP_Add SubNet_Mask A/B Due possibili alternative Soluzione A: è specificata l interfaccia di uscita (è possibile solo in caso di link punto-punto) Soluzione B: è specificato l indirizzo IP del nexthop router (soluzione obbligatoria in caso di rete ethernet) Una particolare route statica è la route di default: ip route 0.0.0.0 0.0.0.0 A/B
Costruzione della tabella di instradamento Le righe della tabella di routing (route) possono avere diverse origini: Route direttamente connesse (C) Route statiche (S,S*) Route dinamiche (RIP R, OSPF O, etc )
Esempio
Configurazione di una route statica Il comando per configurare una route statica è R1(config)#ip route Dest_IP_Add SubNet_Mask A/B Due possibili alternative Soluzione A: è specificata l interfaccia di uscita (è possibile solo in caso di link punto-punto) Soluzione B: è specificato l indirizzo IP del next-hop router (soluzione obbligatoria in caso di rete ethernet) Una particolare route statica è la route di default: ip route 0.0.0.0 0.0.0.0 {next-hop-address outgoing interface]}
Esercitazione Packet Tracer: Routing Statico (1/2) Configurare indirizzi interfacce router Configurare hosts Aggiungere rotte statiche per raggiungibilità reti Verificare raggiungibilità (ping tra PC) PC0 R1 PC2 192.168.0.0/24 PC1 Net_A R0 R3 192.168.1.0/24 Net_B PC3 R2
Esercitazione Packet Tracer: Routing Statico (2/2) Verificare raggiungibilità tra i router (ping tra R0 R3 e R1 R2) e da router a PC Cosa accade? PC0 R1 PC2 192.168.0.0/24 PC1 Net_A R0 R3 192.168.1.0/24 Net_B PC3 R2