P2/1 Concetti di routing

1.0 Introduzione

1.0.1 benvenuto

1.0.1.1. concetti di routing. Un host in rete può comunicare direttamente solo con altri host appartenenti alla stessa rete, usualmente tramite switch di layer 2. Per comunicare con host di altre reti, deve utilizzare uno o più router: device di rete specializzati nel smistare datagrammi tra reti diverse.

1.0.1.2 Attività: ci serve una mappa ? Osservare come sono fatte le istruzioni di Google maps.

1.1 configurazione iniziale di un router

1.1.1 funzioni di un router

1.1.1.1 caratteristiche di una rete. Abbiamo:

  • topology,

  • speed 1,

  • cost,

  • security,

  • availability,

  • scalability,

  • reliability.

1.1.1.2 perché il routing? Compito dei router consiste nel trovare il modo più efficiente di consegnare i pacchetti di dati in trasmissione tra diverse reti.

1.1.1.3 i router sono computer. La maggior parte dei device di rete sono computer, dotati di:

  • central processing unit (CPU),

  • sistema operativo (OS)

  • memoria e storage (RAM; ROM; NVRAM, Flash, hard drive).

Un router è un computer specializzato per l’instradamento dei pacchetti di dati.

La RAM si divide in volatile e non volatile 2. Abbiamo:

  • RAM, volatile; per IOS, tabelle di routing e ARP, buffers, file di configurazione;

  • ROM, non volatile; bootstrap, diagnostica, IOS di emergenza per diagnostica;

  • NVRAM, non volatile; startup config.file;

  • Flash, non volatile; IOS, altri file di sistema.

1.1.1.4 i router collegano le reti. Di conseguenza hanno più interfacce, ognuna collega una rete, o un altro router.

Le interfacce possono essere specializzate per connettere LAN, o per WAN.

1.1.1.5 i router scelgono il path migliore. Le funzioni principali di un router sono:

  • determinare il migliore percorso per inviare i pacchetti;

  • inoltrare i pacchetti verso la destinazione.

Per fare ciò usa una routing table su cui riscontra l’indirizzo del destinatario del pacchetto. Questa tabella indica su quale interfaccia poi inoltrare il pacchetto.

Inoltre il router ricostruisce la frame che ingloba il pacchetto quando la inoltra sulla interfaccia opportuna. In pratica si ha:

  • deincapsulamento del pacchetto IP;

  • confronto con la routing table;

  • incapsulamento del pacchetto IP secondo la nuova interfaccia di inoltro;

  • invio della frame.

I router usano route 3 statiche. E/o protocolli di routing dinamici per apprendere la presenza di reti remote con cui costruire la routing table.

1.1.1.6 meccanismi di inoltro dei pacchetti. Sono tre:

  • process switching, ogni pacchetto è analizzato;

  • fast switching, costruisce una cache di next hop;

  • Cisco express forwarding, costruisce una cache di tutti i possibili next hop 4 e una tabella delle adiacenze.

1.1.1.7 attività: identificare componenti di un router.

1.1.1.8 pachet tracer: usare traceroute per scoprire la rete.

1.1.2 connettere device

1.1.2.1 connessioni a una rete.

1.1.2.2 default gateway. È il router cui vengono inviati i pacchetti diretti a destinazioni che non sono nella stessa rete del mittente.

Anche i router hanno un default gateway, detto Gateway of Last Resort.

1.1.2.3 documentare gli indirizzi di rete. come minimo è necessario registrare le seguenti info:

  • nome dei device,

  • le relative interfacce,

  • gli indirizzi associati alle interfacce.

  • le relative subnet mask,

  • i relativi default gateway.

Usualmente si:

  • disegna un topology diagram,

  • compila un addressing table.

1.1.2.4 abilitare l’indirizzo IP nell’host. Può essere statico, nel caso di server o device di servizio (es.: stampanti), o dinamico tramite DHCP.

1.1.2.5 i LED dei device. Sono indicatori luminosi indicanti un qualche parametro della interfaccia cui sono associati.

1.1.2.6 accesso da console. Storicamente si effettua da porta seriale RS-232 del PC a porta seriale RJ-45 del device. Con PC senza RS-232, si può usare una porta USB tramite adattatore RS-232 o verso una porta mini USB del device.

1.1.2.7 abilitare IP in uno switch. serve per gestire lo switch da remoto

S1(config)# interface vlan 1
S1(config-if)# ip address 192.168.10.2 255.255.255.0
S1(config-if)# no shutdown
S1(config-if)# exit
S1(config)# ip default-gateway 192.168.10.1

1.1.2.8 attività - documentare uno schema di indirizzamento.

1.1.2.9 packet tracer - documentare la rete

1.2 decisioni per il routing

1.2.1 instradare pacchetti tra le reti

1.2.1.1 la funzione di router switching. Questa funzione consiste nel ricevere un pacchetto da una interfaccia, ed inoltrarla in un’altra interfaccia.

Nel fare ciò, le frame sono deincapsulate dalla interfaccia in ingresso, e successivamente incapsulate dalla interfaccia in uscita. Eventualmente per un diverso media.

Nota. I MAC address servono solo se il media è condiviso, ad es. Ethernet. Nel caso di media non condiviso, come ad es. il link seriale, non vi è MAC address, perché vi sono solo due interfacce, una ad ogni estremità del filo.

1.2.1.2 inviare un pacchetto. Per prima cosa il mittente verifica se il destinatario è nella stessa rete. Fa ciò estraendo 5 il proprio indirizzo di rete, quello del destinatario, e confrontandoli. Dopo di che invia direttamente, o tramite il default gateway, a seconda del risultato.

Per inviare fisicamente, il mittente usa la sua ARP table per trovare il MAC address. Se la ARP table non ha il MAC address cercato, lo si richiede con il protocollo ARP (ARP request e successiva ARP reply).

Nel caso di IPv6 il processo è analogo, ma si usano i messaggi neighbor solicitation e neighbor advertisement. La relativa tabella è la neighbor cache.

1.2.1.3 inoltro al prossimo salto. il router esegue questi passi:

  • esamina il MAC address della frame, se è il proprio la copia nel buffer d’ingresso;

  • controlla il campo Ethernet type, se è 0x800, la frame contiene un pacchetto IP;

  • il router deincapsula la frame ricavando il pacchetto IP;

  • si controllano le reti in connessione diretta, se negativo si controllano le reti remote per definire su quale interfaccia instradare;

  • si effettua il framing sulla nuova interfaccia; se è Ethernet, si cerca il MAC address del prossimo router (ARP cache, …); se è seriale si incapsula con relativo protocollo di supporto 6;

  • si invia sul fisico.

1.2.1.4 packet routing. come il precedente

1.2.1.5 arrivo a destinazione. come il precedente, ma questa volta l’interfaccia di inoltro del router è verso l’host destinatario del messaggio.

Quindi all’inoltro del pacchetto in rete, il destinataio:

  • esamina il MAC address della frame, è il proprio, quindi lo copia nel buffer d’ingresso;

  • controlla il campo Ethernet type, se è 0x800, la frame contiene un pacchetto IP;

  • il destinatario deincapsula la frame ricavando il pacchetto IP;

  • il pacchetto IP viene passato al sistema operativo del destinatario.

1.2.1.6 attività - legare gli indirizzamenti layer 2 e layer 3.

1.2.2 determinazione del percorso

1.2.2.1 decisioni di routing. Possibili decisioni per il path:

  • reti connesse direttamnte;

  • reti remote;

  • percorso non determinabile, se esiste un gateway of last resort, si usa, altrimenti si butta il pacchetto.

1.2.2.2 migliore percorso. Quando vi sono più percorsi possibili, è necessario valutare il migliore. Si usa una metrica che valuta la distanza dalla destinazione.

Ogni routing dynamic protocol ha le sue metriche:

  • RIP conta i salti;

  • OSPF costo Cisco basato sulla larghezza di banda cumulativa;

  • EIGRP larghezza di banda, ritardo, carico e affidabilità.

1.2.2.3 bilanciamento del carico. Se un router ha più percorsi con uguali metriche per la stessa destinazione, intrada i pacchetti utilizzando a rotazione i vari percorsi disponibili, usualmente secondo un poitica di sharing alla pari (equal cost load balancing). EIGRP è in grado di attuare politiche di bilanciamento del carico anche con percentuali diversificate (unequal cost load balancing).

1.2.2.4 distanza amministrativa. Un router può utilizzare più protocolli dinamici per aggiornare la sua tabella d’indirizzamento, ed avere anche percorsi configurati staticamente.

In tal caso lo stesso percorso può essere presentato da più protocolli, ognuno con metriche diverse (ad es. RIP vs EIGRP: hop count vs bandwidth+delay+…). Perciò Cisco IOS usa la distanza amministrativa (AD) per decidere quale percorso installare nella tabella di routing.

La AD è un numero che indica la credibilità del percorso: più è basso, maggiore è la credibilità. Valgono i seguenti valori di AD;

  • connesso: 0;

  • statico: 1;

  • EIGRP summary route: 5;

  • External BGP: 20;

  • Internal EIGRP: 90;

  • EIGRP: 100

  • OSPF: 110

  • IS_IS: 115,

  • RIP: 120;

  • External EIGRP: 170;

  • Internal BGP: 200.

1.2.2.5 attività - indovina l’attività da fare per inoltrare il pacchetto.

1.2.2.6 attività - indica la AD per la sorgente della route.

1.3 Operazioni del router

1.3.1 analisi della routing table

1.3.1.1 la routing table. Tabella in RAM che memorizza info riguardo:

  • route connesse direttamente: reti su interfacce del router;

  • route remote: reti su interfacce di altri router.

1.3.1.2 sorgenti della routing table. Il seguente comando visualizza la routing table:

R# show ip route

Ogni voce indica:

  • modalità con cui è stata appresa,

  • quale interfaccia utilizzare;

  • da quanto tempo è stata appresa.

Modalità di apprendimento della route;

  • L locale: interfaccia configurata e attiva, indirizzo IP;

  • C interfaccia connessa direttamente: configurata e attiva,

  • S configurata manualmente, interfaccia attiva;

  • D appresa tramite EIGRP;

  • O appresa tramite OSPF;

  • R appresa tramite RIP;

  • B appresa tramite BGP;

1.3.1.3 record di routing di reti remote hanno la sequente struttura di cui questo è un esempio:

D   10.1.1.0/24  [90/2170112] via 209.165.200.226, 00:00:05, Serial0/0/0
  • tipo di apprendimento, nell’esempio la D;

  • rete target, nell’esempio 10.1.1.0/24;

  • AD e metrica [90/2170112];

  • indirizzo IP del prossimo salto 209.165.200.226;

  • tempo trascorso dall’apprendimento 00:00:05;

  • interfaccia di uscita per il prossimo salto Serial0/0/0.

1.3.1.4 attività - interpretare il contenuto di un record di routing table.

1.3.2 route connesse direttamente

1.3.2.1 interfacce connesse direttamente. Inizialmente la routing table è vuota.

Una interfaccia viene aggiunta alla tabella come connessa direttamente quando sono soddisfatte tutte le eguenti condizioni:

  • ha un indirizzo assegnato (IPv4 e/o IPv6);

  • attivata (comando «no shutdown»);

  • sente una portante dal supporto fisico.

1.3.2.2 record di routing table per connessione diretta si presenta come il seguente esempio:

C 192.168.10.0/24 is directly connected, GigabitEthernet0/0
L 192.168.10.1/32 is directly connected, GigabitEthernet0/0

Essendo direttamente connessa, non vi sono metrica e IP del next hop.

1.3.2.3 esempi di connessioni dirette. Vanno configurate come segue:

R1(config)# interface gigabitethernet 0/0
R1(config-if)# description Link to LAN 1
R1(config-if)# ip address 192.168.10.1 255.255.255.0
R1(config-if)# no shutdown

Altro esempio:

R1(config)# interface serial 0/0/0
R1(config-if)# description Link to R1
R1(config-if)# ip address 2019.165.200.225 255.255.255.252
R1(config-if)# clock rate 128000
R1(config-if)# no shutdown

1.3.2.4 esempi di connessioni dirette IPv6. Analoghe a IPv4:

R1(config)# interface gigabitethernet 0/0
R1(config-if)# description Link to LAN 1
R1(config-if)# ipv6 address 2001:db8:acad:1::1/64
R1(config-if)# no shutdown

La route table IPv6 si visualizza con il comando:

R1# show ipv6 route

Si noti che c’è sempre una route per il multicast routing:

FF00::/8

E una singola entry, si visualizza con:

R1# show ipv6 route 2001:db8:acad:1::/64

1.3.2.4 packet tracer - investigare route connesse direttamente.

1.3.3 route apprese staticamente

1.3.3.1 route statiche vengono configurate manualmente. Non sono modificate automaticamente se la topologia della rete cambia.

A favore: sicurezza ed efficienza.

Svantaggio: gestione completamente manuale.

Tipicamente si usano per:

  • route verso reti specifiche;

  • route di default.

Per configurare si usa il comando:

R(config)# ip route network-mask {next-hop-ip | exit-interface}

Una default static route si configura con:

R(config)# ip route 0.0.0.0 0.0.0.0 {next-hop-ip | exit-interface}

Una default static route viene segnalata con S* nella routing table.

1.3.3.2 esempi di route statiche Default static route su seriale:

R1(config)# ip route 0.0.0.0 0.0.0.0 Serial0/0/0

Route statica verso 192/168/10.0/24 tramite seriale, e 192.168.11.0/24 tramite next op:

R1(config)# ip route 192.168.10.0 255.255.255.0 Serial0/0/0
R1(config)# ip route 192.168.11.0 255.255.255.0 209.165.200.225

1.3.3.3 esempi di route statiche IPv6 Default static route su seriale:

R1(config)# ipv6 route ::/0 Serial0/0/0

La routing table IPv6 non evidenzia la default route con un *.

Route statica tramite next hop:

R1(config)# ipv6 route 2001:db8:acad:1::/64 2001:db8:acad:3::1

Route statica tramite interfaccia di uscita:

R1(config)# ipv6 route 2001:db8:acad:2::/64 s0/0/0

1.3.4 protocolli di routing dinamici

1.3.4.1 routing dinamico. usati tra router per scambiare info riguardo la raggiungibilità di reti. Eseguono:

  • scoperta di reti;

  • manutenzione della routing table.

1.3.4.2 protocolli di routing IPv4. I protocolli dinamici permettono ai router di cambiare autonomamente percorso se vi sono guasti su un link o se cambia la topologia di rete, senza interventi di configurazione manuali.

Per sapere quali protocolli di routing sono supportati dal router si usa il comando (nota bene: in modalità global configuration):

R1(config)# router ?

1.3.4.3 esempi di routing dinamico IPv4. Default route ricevuta da EIGRP

D*EX 0.0.0.0/0 [170/2297856] via 2019.165.200.226, 00:07:29, Serial0/0/0

1.3.4.4 protocolli di routing IPv6. Per visualizzare i supportati si usa il comando:

R1(config)# ipv6 router ?

Usualmente vi sono:

  • RIPng;

  • OSPFv3;

  • EIGRP per IPv6.

Nota. il routing degli indirizzi IPv6 deve essere abilitato con il comando:

R1(config)# ipv6 unicast-routing

1.3.4.5 esempi di protocolli di routing IPv6. la routing table per IPv6 si visualizza con il comando:

R1# show ipv6 route

1.4 sommario

1.4.1 conclusioni

1.4.1.1 attività - realmente potremmo usare una mappa!.

1.4.1.2 capitolo 1: concetti di routing.


1

Qui per velocità si intende larghezza di banda, ovvero bit trasmessi per secondo. Fisicamente sarebbe corretto pensare alla velocità di trasmissione del segnale nel mezzo … ma non è così.

2

Non volatile: l’informazione sopravvive allo spegnimento del sistema.

3

Route spesso viene tradotta come rotta. È la direzione da seguire per l’inoltro.

4

È la Forwarding Information Base (FIB).

5

L’indirizzo della rete si determina con una operazione di AND fra l’indirizzo IP e la subnet mask.

6

HDLC, PPP, ed altri. L’indirizzo fisico (data link destination addres) equivale ad un broadcast perché vi è un solo ricevitore dall’altra parte del filo.