• Non ci sono risultati.

Fausto Marcantoni

N/A
N/A
Protected

Academic year: 2021

Condividi "Fausto Marcantoni"

Copied!
36
0
0

Testo completo

(1)

Laurea in

INFORMATICA

INTERNET e RETI di CALCOLATORI A.A. 2021/2022 Capitolo 4 – Instradamento e Algoritmi di instradamento

Fausto Marcantoni fausto.marcantoni@unicam.it

Reti di elaboratori

L'utilizzo dei contenuti della lezione sono riservati alla fruizione personale degli studenti iscritti ai corsi dell’Università di Camerino. Sono vietate la diffusione intera o parziale di video o immagini della lezione, nonché la modifica dei contenuti senza il consenso, espresso per iscritto, del titolare o dei titolari dei diritti d'autore e di immagine.

The contents of this lesson are subject to copyright and intended only for personal use by students enrolled in courses offered by the University of Camerino. For this reason, any partial or total reproduction, adaptation, modification and/or transformation of the contents of this lesson, by any means, without the prior written authorization of the copyright owner, is strictly prohibited.

Dichiarazione di copyright

Copyright notice

1

Fausto Marcantoni

(2)

Fausto Marcantoni

Che cosa fa il livello di rete?

Capitolo 4d – Instradamento e Algoritmi di instradamento

Il ruolo dello strato di rete è quello di trasportare pacchetti da un host che spedisce ad uno che riceve

Funzioni:

Determinazione del percorso (algoritmi di routing)

Inoltro

Chiamata di set-up

3

Reti di elaboratori

Routing e Forwarding (1/3)

I termini “instradamento” (routing) e “inoltro”

(forwarding) sono spesso usati (erroneamente) in modo intercambiabile:

“Instradamento” fa riferimento al processo globale, che copre l’intera rete, e determina i percorsi da

estremo a estremo che i datagrammi IPseguiranno dalla sorgente alla destinazione

“Inoltro” fa riferimento all’azione eseguita localmente nel router per il trasferimento di un datagramma

dall’interfaccia di un link di ingresso all’opportuna interfaccia di un link di uscita.

3

Fausto Marcantoni

(3)

Fausto Marcantoni

Routing e Forwarding (2/3)

Routing

Determina le destinazioni raggiungibili da ogni nodo

Calcola il percorso migliore

Inserisce le informazioni locali in ogni nodo

Forwarding

Inoltra i pacchetti “nodo per nodo” utilizzando le informazioni locali

E’ indipendente su ogni nodo

Non è ha conoscenza della rete (globalmente)

Forwarding e routing

Ambedue necessari per l’operatività di una rete

Routing: può essere “manuale” (demandato all’amministratore) o

“dinamico”

Capitolo 4d – Instradamento e Algoritmi di instradamento 5

Reti di elaboratori

Routing e Forwarding (3/3)

routing e forwarding dipendono fortemente dalla forwarding table (o tabella di inoltro) 5

Fausto Marcantoni

(4)

Fausto Marcantoni

Principi di instradamento (1/2)

protocollo di instradamento

: per trasferire i datagrammi dall’host sorgente all’host di destinazione, lo strato di rete deve determinare il percorso (path) o rotta (route) che i datagrammi devono seguire

Un host è “direttamente” attaccato a un router, il

cosiddetto router di default (o default Gateway detto anche router di primo rilancio, o first-hop router)

Il problema di instradare un pacchetto dall’host sorgente all’host destinazione si riduce al problema di instradare il pacchetto dal router sorgente (il gateway) al router destinazione

Capitolo 4d – Instradamento e Algoritmi di instradamento 7

Reti di elaboratori

Principi di instradamento (2/2)

Il nucleo di ciascun protocollo di instradamento è un algoritmo (l’algoritmo di instradamento) che determina il percorso da seguire per ciascuno datagramma

Dato un gruppo di router, con i link che li collegano, un algoritmo di instradamento trova un “buon/migliore” percorso dalla sorgente alla destinazione

Tipicamente, un “buon” percorso è quello che ha il

“minimo costo”

7

Fausto Marcantoni

(5)

Fausto Marcantoni

Teoria dei grafi

Capitolo 4d – Instradamento e Algoritmi di instradamento 9

Per formulare i problemi di instradamento si utilizza la teoria dei grafi Un grafo G=(N,E) è un insieme N di nodi e un insieme E (edge) di archi Per ogni arco (x,y) tra i nodi x e y denotiamo c(x,y) il suo costo Se la coppia (x,y) non appartiene ad E c(x,y)=∞

Grafi non orientati-bidirezionali c(x,y)=c(y,x) y è adiacente o vicino (neighbor) a x se (x,y)∈E

Reti di elaboratori

Astrazione grafica

Il problema di trovare il costo minimo richiede:

il primo link sul percorso collegato alla sorgente

l’ultimo link sul percorso collegato alla destinazione

per ogni i>0 di N i link i e i-1-mo collegati allo stesso nodo sul percorso

per il percorso di minor costo, la somma dei costi dei link sul percorso è la minima tra quelle di tutti i percorsi possibili fra sorgente e

destinazione 9

Fausto Marcantoni

(6)

Fausto Marcantoni

Astrazione grafica

Capitolo 4d – Instradamento e Algoritmi di instradamento

Il problema di trovare il costo minimo richiede:

In un grafo G=(N,E) il percorso è una sequenza di nodi (x1, x2, x3, …, xn)

Il costo di un percorso e la somma di tutti i singoli costi

c(x1, x2)+c(x2, x3)+c(x3, x4)+…+c(xn-1, xn)

percorso minimo – least-cost path

Percorso minimo tra u e w (u,x,y,w)

11

Reti di elaboratori

Routing Algorithms: Tassonomie (1/4)

algoritmi di instradamento statici

Tabelle manuali

I paths cambiano raramente

algoritmi di instradamento dinamici

modificano i percorsi di instradamento non appena varia il carico di traffico in rete o la topologia

Un algoritmo dinamico può funzionare sia periodicamente sia come risposta diretta alle variazioni di topologia o dei costi dei link Mentre gli algoritmi dinamici sono più reattivi alle variazioni nella rete, essi sono anche più suscettibili a problemi come routing loop (percorsi ciclici) e oscillazioni nei percorsi.

Negli altri, se cade un link cade un instradamento verso determinati percorsi

11

Fausto Marcantoni

(7)

Fausto Marcantoni

Routing Algorithms: Tassonomie (2/4)

algoritmi sensibili al carico

I costi dei link variano dinamicamente per riflettere lo stato attuale di congestione del link in questione

Se a un link attualmente in congestione viene associato un alto costo, un algoritmo di instradamento tenderà a scegliere percorsi che evitano quel link in congestione

algoritmi insensibili al carico

Quelli di Internet oggi

Il costo di un link tipicamente non riflette il suo attuale (o recente) livello di congestione

RIP OSPF e BGP ne sono alcuni esempi

Capitolo 4d – Instradamento e Algoritmi di instradamento 13

Reti di elaboratori

Routing Algorithms: Tassonomie (3/4)

Algoritmi di instradamento globali

Calcola il percorso di minor costo fra una sorgente e una destinazione usando conoscenze sulla rete complete (globali)

L’algoritmo prende come input la connettività fra tutti i nodi e tutti i costi dei link

L’algoritmo ottiene in qualche modo queste informazioni prima di eseguire effettivamente il calcolo (flooding)

Il calcolo del percorso può essere eseguito in un posto (un algoritmo di instradamento globale centralizzato) o replicato in più siti

Si chiamano algoritmi link state (basati sullo stato dei link), poiché l’algoritmo deve essere a conoscenza del costo di ciascun link nella rete

13

Fausto Marcantoni

(8)

Fausto Marcantoni

Routing Algorithms: Tassonomie (4/4)

Algoritmi di instradamento decentralizzati

Il calcolo del percorso di minor costo è eseguito in modo iterativo e distribuito

Nessun nodo ha informazioni complete sul costo di tutti i link della rete. Ciascun nodo comincia con la sola conoscenza del costo dei link a esso direttamente collegati

Attraverso un processo interattivo di calcolo e scambio di

informazioni con i nodi a esso vicini un nodo calcola gradualmente il percorso di minor costoverso una destinazione o un gruppo di destinazioni

Si chiamano algoritmi distance vector (vettore delle distanze)

Quello che si conosce è solo:

il nodo vicino a cui si deve inviare un pacchetto allo scopo di raggiungere una data destinazione lungo il percorso di minor costo

il costo del percorso da se stesso alla destinazione

Capitolo 4d – Instradamento e Algoritmi di instradamento 15

Reti di elaboratori

Principio del Distance Vector

1) Io conosco la destinazione E a

costo 0

2) Io conosco A,0 ed E,1 arrivata dalla

porta A1

2) Io conosco F,0 ed E,1 arrivata dalla

porta F1 3) Io conosco la

destinazione A a costo 0 ed E a

costo 1

3) Io conosco la destinazione F a costo 0 ed E a

costo 1 4. Io conosco le destinazioni C,0, A,1 (arrivata dalla porta C1), F,1 (arrivata dalla porta C2), ed E,2 (arrivata dalle porte C1 e C2 allo stesso costo)

15

Fausto Marcantoni

(9)

Fausto Marcantoni

Distance Vector in pillole

esiste una certa serie di destinazioni raggiungibili

queste destinazioni si possono raggiungere, in una certa direzione, attraverso un certo nodo X (quello da cui è arrivato l'annuncio)

il costo di raggiungimento in questa direzione è ricavabile sommando, al costo riportato nell'annuncio, il costo di

attraversamento del link tra il nodo in esame e il nodo adiacente X

se, infine, ogni nodo annuncerà non solo le adiacenze, ma anche il costo per il raggiungimento delle stesse, ognuno sarà in grado di ricavare, dalla topologia, il percorso migliore verso ogni destinazione

Capitolo 4d – Instradamento e Algoritmi di instradamento

ogni nodo comunica, solamente ai propri vicini, tutte le informazioni della rete in suo possesso

17

Reti di elaboratori

Distance Vector - vantaggi e svantaggi

Vantaggi:

semplice da implementare;

non richiede grandi capacità elaborative e memoria occupata sul router

Svantaggi:

possono innescarsi dei loop a causa di particolari variazioni della topologia;

Lenta convergenza (arrivo ad uno stato stabile);

vedono la rete dalla prospettiva dei vicini. E’ quindi difficile capirne e prevederne il comportamento su reti grandi. Nessun nodo ha una mappa della rete;

Metrica basata sui salti e non sulla banda;

Il hop-count-limit limita la dimensione della rete: il numero di hop ammesso dovrà essere inferiore all’hop-count-limit.

Inviano l’intera tabella di routing per cui ho un alto consumo di banda

17

Fausto Marcantoni

(10)

Fausto Marcantoni

Principio del Link State

Capitolo 4d – Instradamento e Algoritmi di instradamento

1.Io nodo E, conosco i link E- A ed E-F 2.Io nodo A, conosco i link A- E ed A-C

3.Io nodo F, conosco i link F- C ed F-E

19

Reti di elaboratori

Link State in pillole

Ogni nodo comunicherà lo stato delle sue adiacenze (che avrà imparato attraverso un meccanismo a parte) a tutti i nodi della rete attraverso un qualche meccanismo di “broadcast”

Ogni nodo della rete sarà quindi in grado di ricostruire la topologia nell'intorno del nodoche ha inviato il messaggio

Se il procedimento verrà ripetuto da tutti gli altri nodi, ogni nodo riceverà queste informazioni topologiche e, facendone l'unione, sarà in grado di ricostruire l'intera topologia della rete

Se, infine, ogni nodo annuncerà non solo le adiacenze, ma anche il costoper il raggiungimento delle stesse, ognuno sarà in grado di ricavare, dalla topologia, il percorso migliore verso ogni destinazione

ogni nodo comunica, a tutti i nodi della rete, solamente le informazioni dei link adiacenti in suo possesso

19

Fausto Marcantoni

(11)

Fausto Marcantoni

Link State - vantaggi e svantaggi

Capitolo 4d – Instradamento e Algoritmi di instradamento 21

Vantaggi:

Le informazioni vengono inviate in maniera non periodica ma al variare della topologia (triggered updates) quindi pochi aggiornamenti.

Usa lo Shortest Path per la determinazione del cammino minimo;

visione totale della rete (registrata nelle “topology table”);

convergenza veloce;

non suscettibili di routing loops;

consumano poca banda.

Svantaggi:

Complessi da configurare;

Richiede molta memoria e grandi capacità elaborative

richiedono una struttura gerarchica che suddivida in aree più piccole e gestibili la rete riducendo la dimensione della “topology table”;

Reti di elaboratori

Link state

condizione iniziale:

Ogni router monitora e mantiene aggiornato lo stato dei suoi link incidenti

passo 1:

• ogni router invia in broadcast lo stato dei propri link

 Scopo: fornire ad ogni router della rete una vista dell'intero grafo che rappresenta la topologia della rete

 necessario meccanismo di flooding affidabile passo 2

• ogni router calcola i cammini minimi tra esso stesso e tutti gli altri nodi della rete

• tutti utilizzano lo stesso algoritmo per calcolare i cammini minimi

 Problema principale: scalabilità 21

Fausto Marcantoni

(12)

Fausto Marcantoni

Link state

Capitolo 4d – Instradamento e Algoritmi di instradamento 23

Ogni router monitora e mantiene aggiornato lo stato dei suoi link incidenti

• implementata mediante un semplice HELLO PROTOCOL

 ogni nodo invia un HELLO PACKETlungo tutti i suoi link, periodicamente

 se si riceve il pacchetto dal vicino si presume che sia vivo e che il link non sia guasto

 possibili perdite di pacchetti: l'assenza di uno (o di un piccolo numero) di pacchetti può non essere significativa

• frequenza di invio dei pacchetti

 Invio di pacchetti con regolarità in modo che il numero atteso dei pacchetti in un intervallo di tempo sia

approssimativamente sempre uguale

 HELLO INTERVAL: tempo che intercorre tra l'invio di due pacchetti consecutivi

Reti di elaboratori

Link state - simulazione

R4 R1

R6

R7 R3 R5

R2

ogni router invia in broadcast lo stato dei propri link, con lo scopo di fornire ad ogni router della rete una vista dell'intero grafo che rappresenta la topologia della rete

23

Fausto Marcantoni

(13)

Fausto Marcantoni

Link state - simulazione

Capitolo 4d – Instradamento e Algoritmi di instradamento 25

R4 R1

R6

R7 R3 R5

R2 ogni router mantiene il suo “link state” (LS)

una lista di tutti i link diretti verso i vicini e del loro costo

R1-R2 R1-R4 R1-R5

Reti di elaboratori

Link state - simulazione

R4 R1

R6

R7 R3 R5

R2

una lista di tutti i link diretti verso i vicini e del loro costo

invia in broadcast lo stato dei propri link, con lo scopo di fornire ad ogni router della rete una vista dell'intero grafo che rappresenta la topologia della rete

R1-R2 R1-R4 R1-R5

R1-R2 R1-R4 R1-R5 R1-R2

R1-R4 R1-R5

25

Fausto Marcantoni

(14)

Fausto Marcantoni

Link state - simulazione

Capitolo 4d – Instradamento e Algoritmi di instradamento 27

R4 R1

R6

R7 R3 R5

R2

alla ricezione di un nuovo messaggio LS, un router lo propaga a sua volta a tutti i suoi vicini, a parte quello da cui ha ricevuto il messaggio.

R1-R2 R1-R4 R1-R5

R1-R2 R1-R4 R1-R5 R1-R2

R1-R4 R1-R5

R1-R2 R1-R4 R1-R5

R1-R2 R1-R4 R1-R5

R1-R2 R1-R4 R1-R5

R1-R2 R1-R4 R1-R5

R1-R2 R1-R4 R1-R5

Reti di elaboratori

Link state - simulazione

R4 R1

R6

R7 R3 R5

R2

una lista di tutti i link diretti verso i vicini e del loro costo

invia in broadcast lo stato dei propri link, con lo scopo di fornire ad ogni router della rete una vista dell'intero grafo che rappresenta la topologia della rete

R1-R2 R1-R4 R1-R5

R1-R2 R1-R4 R1-R5 R1-R2

R1-R4 R1-R5

R2-R3 R2-R5 R2-R1

R5-R1 R5-R2 R5-R4 R5-R1

R5-R2 R5-R4

R5-R1 R5-R2 R5-R4

R4-R1 R4-R5 R4-R6

R3-R2 R£-R7 R7-R3

R7-R6

27

Fausto Marcantoni

(15)

Fausto Marcantoni

Link state - simulazione

Capitolo 4d – Instradamento e Algoritmi di instradamento 29

R4 R1

R6

R7 R3 R5

R2

alla fine, tutti i router possono costruire un grafo della intera rete

R1-R2 R1-R4 R1-R5 R7-R3 R7-R6 R2-R3 R2-R5 R2-R1

…….

R1-R2 R1-R4 R1-R5 R7-R3 R7-R6 R2-R3 R2-R5 R2-R1

…….

R1-R2 R1-R4 R1-R5 R7-R3 R7-R6 R2-R3 R2-R5 R2-R1

…….

R1-R2 R1-R4 R1-R5 R7-R3 R7-R6 R2-R3 R2-R5 R2-R1

…….

Reti di elaboratori

Link state - simulazione

R4 R1

R6

R7 R3 R5

R2

alla fine, tutti i router possono costruire un grafo della intera rete

R4 R1

R 6 R 7 R 3 R 5

R 2 R4

R1

R 6 R 7 R 3

R 5 R 2

R4 R1

R6 R7 R3

R5 R2

R4 R1

R 6 R 7 R 3 R 5 R 2

R4 R1

R 6 R 7 R 3

R 5 R 2

R4 R1

R 6 R 7 R 3 R 5 R 2

R4 R1

R 6 R 7 R 3 R 5 R 2

29

Fausto Marcantoni

(16)

Fausto Marcantoni

Link state

Capitolo 4d – Instradamento e Algoritmi di instradamento 31

dopo che i router hanno ricostruito lo stato globale dell'intera rete si possono applicare al grafo risultante un qualsiasi algoritmo per il calcolo dei cammini minimi

SSSP: single source shortest path

interessa trovare i cammini minimi dal router a tutti gli altri router della rete.

Algoritmi SSSP, Shortest Path algorithms

 Dijkstra: pesi sugli archi strettamente positivi

 Bellman-Ford: può gestire anche pesi negativi Link state utilizza l'algoritmo di Dijkstra’s shortest path tree (SPT)

Reti di elaboratori

11

7 8

4 4

8

1 2

R7

R0 R8

R1

7

9

6 10 2

14

R6 R5

R2 R3

R4 Calcola uno shortest path first tree

31

Fausto Marcantoni

(17)

Fausto Marcantoni Capitolo 4d – Instradamento e Algoritmi di instradamento 33 11

7 8

4 4

8

1 2

R7

R0 R8

R1

7

9

6 10 2

14

R6 R5

R2 R3

R4

8 4

R7 R0

R1

8 4

8

R7 R0

R1 R2

7 8

4

8

1 R7

R0 R8

R1

R6 R2

Reti di elaboratori

11

7 8

4 4

8

1 2

R7

R0 R8

R1

7

9

6 10 2

14

R6 R5

R2 R3

R4

7 8

4

8

1 R7

R0 R8

R1

R6 R2

8 4

8

1 2

R7

R0 R8

R1

6

R6 R5

R2

33

Fausto Marcantoni

(18)

Fausto Marcantoni Capitolo 4d – Instradamento e Algoritmi di instradamento 35 11

7 8

4 4

8

1 2

R7

R0 R8

R1

7

9

6 10 2

14

R6 R5

R2 R3

R4

8 4

8

1 2

R7

R0 R8

R1

6

R6 R5

R2

8 4

8

1 2

R7

R0 R8

R1

7

10 2

R6 R5

R2 R3

R4

Reti di elaboratori

8 4

8

1 2

R7

R0 R8

R1

7

10 2

R6 R5

R2 R3

R4 0 14

4 12 19

21

9 11 8

soluzione finale appare come un albero di cammini minimi dalla sorgente (R0) a tutti gli altri nodi

35

Fausto Marcantoni

(19)

Fausto Marcantoni

dei link

Capitolo 4d – Instradamento e Algoritmi di instradamento

Passo N B C D E F

1 AD 2,A 4,D 2,D inf

0 A 2,A 5,A 1,A inf inf

Percorsi di minor costo da A a tutte le destinazioni

2 ADE 2,A 3,E 4,E

3 ADEB 3,E 4,E

4 ADEBC 4,E

5 ADEBCF

Destinazione Verso Costo

F D 4

C D 3

B 2

E D 2

D 1

Tabella d’instradamento di A

37

Reti di elaboratori

Dijkstra's Shortest Path

http://optlab-server.sce.carleton.ca/POAnimations2007/DijkstrasAlgo.html http://computer.howstuffworks.com/routing-algorithm3.htm

https://www.cs.usfca.edu/~galles/visualization/Dijkstra.html

Dijkstra's Shortest Path Calculator

https://it.wikipedia.org/wiki/Algoritmo_di_Dijkstra https://www.youtube.com/watch?v=SeQomfq19P8

37

Fausto Marcantoni

(20)

Fausto Marcantoni

Confronto Ls e DV : complessità

LS

Il numero complessivo di nodi dove cercare in tutte le iterazioni e n(n+1)/2  O(n2)

Quando cambia un costo di un link deve essere inviato a tutti i nodi

Potenzialmente soffre di oscillazioni

DV

Può convergere lentamente in funzione dei costi dei link

Soffre del problema del conteggio infinito

Quando cambia un costo del link si propagherà il risultato solo se esso si tradurrà in una variazione del percorso di minor costo per uno dei nodi collegati a quel link.

Capitolo 4d – Instradamento e Algoritmi di instradamento 39

Reti di elaboratori

Implementazione del flooding

 ogni router invia informazione su tutti i suoi link di uscita

 anche il prossimo router invia informazioni su tutte le porte di uscita o eccetto che al router da cui ha ricevuto l'informazione

o necessità di ricordare i messaggi precedenti, e sopprimere i duplicati!

39

Fausto Marcantoni

(21)

Fausto Marcantoni

Implementazione del flooding

Capitolo 4d – Instradamento e Algoritmi di instradamento 41

Flooding affidabile:

 assicurare che tutti i nodi ricevano le notifiche di link-state

 assicurare che tutti i nodi usino gli aggiornamenti più recenti Difficoltà

 perdita di pacchetti

 arrivi fuori ordine Soluzioni

o acknowledgments e ritrasmisssioni o numeri di sequenza

Reti di elaboratori

Implementazione del flooding

Cambio nella topologia

 fallimento di link oppure di nodi

 recovery di link oppure di nodi Cambi di configurazione

 cambi nel costo dei link

 costi possono essere dinamici: frequenti i cambi Periodicamente

 refresh delle notifiche link-state

 ogni (ad esempio) 30 minuti, correzioni di possibili dati corrotti Quando inizia il flooding

41

Fausto Marcantoni

(22)

Fausto Marcantoni

Virtualizzazione di una rete con GNS3

Capitolo 4d – Instradamento e Algoritmi di instradamento 43

Virtualizzazione di una rete con GNS3

Routing protocol: RIP

Reti di elaboratori

Configure NAT Internet

PC1> ip dhcp

DDORA IP 192.168.122.205/24 GW 192.168.122.1 PC1>

PC1> show ip

NAME : PC1[1]

IP/MASK : 192.168.122.205/24 GATEWAY : 192.168.122.1 DNS : 192.168.122.1 DHCP SERVER : 192.168.122.1 DHCP LEASE : 2912, 3600/1800/3150 MAC : 00:50:79:66:68:00 LPORT : 20004

RHOST:PORT : 127.0.0.1:20005 MTU : 1500

PC1>

43

Fausto Marcantoni

(23)

Fausto Marcantoni

Change ip NAT internet

Capitolo 4d – Instradamento e Algoritmi di instradamento 3.45

root@gns3vm:~# root@gns3vm:~# cd /var/lib/libvirt/dnsmasq/

root@gns3vm:/var/lib/libvirt/dnsmasq# ls -al total 16

drwxr-xr-x 2 root root 4096 Nov 22 11:32 . drwxr-xr-x 7 root root 4096 Nov 22 10:29 ..

-rw-r--r-- 1 root root 0 Nov 22 11:21 default.addnhosts -rw--- 1 root root 619 Nov 22 11:21 default.conf -rw-r--r-- 1 root root 0 Nov 22 11:21 default.hostsfile -rw-r--r-- 1 root root 183 Nov 22 11:32 virbr0.status root@gns3vm:/var/lib/libvirt/dnsmasq#

root@gns3vm:/var/lib/libvirt/dnsmasq# cat default.conf

##WARNING: THIS IS AN AUTO-GENERATED FILE. CHANGES TO IT ARE LIKELY TO BE

##OVERWRITTEN AND LOST. Changes to this configuration should be made using:

## virsh net-edit default

## or other application using the libvirt API.

##

## dnsmasq conf file created by libvirt strict-order

user=libvirt-dnsmasq

pid-file=/run/libvirt/network/default.pid except-interface=lo

bind-dynamic interface=virbr0

dhcp-range=192.168.122.2,192.168.122.254,255.255.255.0 dhcp-no-override

dhcp-authoritative dhcp-lease-max=253

dhcp-hostsfile=/var/lib/libvirt/dnsmasq/default.hostsfile addn-hosts=/var/lib/libvirt/dnsmasq/default.addnhosts root@gns3vm:/var/lib/libvirt/dnsmasq#

Reti di elaboratori

Topologia 45

Fausto Marcantoni

(24)

Fausto Marcantoni Capitolo 4d – Instradamento e Algoritmi di instradamento 3.47 https://www.cisco.com/c/dam/global/it_it/solutions/small-business/pdf/net_found/2600_ds.pdf

Cisco 2600 Series Modular Access Router Family

Reti di elaboratori

Config slots R1 - R2 - R3 47

Fausto Marcantoni

(25)

Fausto Marcantoni

basic command

Capitolo 4d – Instradamento e Algoritmi di instradamento 3.49

R1# show running-config / sh run R1# conf t

R1(config)# interface eth 0/0

R1(config-int)# ip address 192.168.x.y 255.255.255.0 R1(config-int)# no shutdown

R1(config-int)#exit R1(config)#exit R1#

R1# show ip interface brief / sh ip int bri R1# write memory / wr mem

Overwrite the previous NVRAM configuration?[confirm] Y/N R1#

Reti di elaboratori

configure interface R1 - eth0/0 dhcp clinet

interface Ethernet0/0 ip address dhcp ip nat outside

ip virtual-reassembly half-duplex

!

interface Ethernet1/0

ip address 10.3.1.1 255.255.255.0 ip nat inside

ip virtual-reassembly half-duplex

NAT outside

NAT inside 49

Fausto Marcantoni

(26)

Fausto Marcantoni

configure interface R1 - eth0/0 static IP

Capitolo 4d – Instradamento e Algoritmi di instradamento 3.51

interface Ethernet0/0

ip address 192.168.122.2 255.255.255.0 ip nat outside

ip virtual-reassembly half-duplex

!

interface Ethernet1/0

ip address 10.3.1.1 255.255.255.0 ip nat inside

ip virtual-reassembly half-duplex

NAT outside

NAT inside

Reti di elaboratori

configure interface R1 - dhcp / static

interface Ethernet0/0

ip address dhcp

ip nat outside

ip virtual-reassembly half-duplex

!

interface Ethernet1/0

ip address 10.3.1.1 255.255.255.0

ip nat inside

ip virtual-reassembly half-duplex

NAT outside

NAT inside 51

Fausto Marcantoni

(27)

Fausto Marcantoni

enable nat inside/outside

Capitolo 4d – Instradamento e Algoritmi di instradamento 3.53

interface Ethernet0/0 ip address dhcp

ip nat outside

ip virtual-reassembly half-duplex

!

interface Ethernet1/0

ip address 10.3.1.1 255.255.255.0

ip nat inside

ip virtual-reassembly half-duplex

NAT outside

NAT inside

Reti di elaboratori

enable nat inside/outside

ip nat inside source list 1 interface Ethernet0/0 overload

!

access-list 1 permit any

ip nat pool Net192 192.168.122.100 192.168.122.200 prefix-lenght 24

! definisce il NAT pool chiamato prova-pool con un range di indirizzi pubblici da utilizzare x internet

ip nat inside source list 1 pool Net192 [overload]

!indica che ogni pacchetto ricevuto sulla inside interface e ammesso dalla acl-1 avrà una corrispondenza tra l'indirizzo privato "source" e un indirizzo pubblico "out" del NAT pool "Net192". La keyword "overload" abilita il NAT ad associare più indirizzi privati su un singolo ip pubblico del pool, in questo caso il router mantiene una ulteriore informazione dai protocolli di livello superiore (per esempio, i numeri di porta TCP o UDP) per tradurre dall’indirizzo globale il corretto indirizzo locale.

show ip nat translations

53

Fausto Marcantoni

(28)

Fausto Marcantoni

verify ip configuration

Capitolo 4d – Instradamento e Algoritmi di instradamento 3.55

R1#show ip interface brief

Interface IP-Address OK? Method Status Protocol

Ethernet0/0 192.168.122.35 YES DHCP up up Ethernet1/0 10.3.1.1 YES NVRAM up up NVI0 unassigned YES unset administratively down down R1#

show interface show interface 0/0 show ip interface

Reti di elaboratori

configure interface R2

interface Ethernet0/0

ip address 10.3.1.2 255.255.255.0 half-duplex

!

interface Ethernet1/0

ip address 10.2.1.1 255.255.255.0 half-duplex

!

interface Ethernet1/1

ip address 10.1.1.1 255.255.255.0 half-duplex

!

interface Ethernet1/2

ip address 10.4.1.1 255.255.255.0 half-duplex

55

Fausto Marcantoni

(29)

Fausto Marcantoni

configure DHCP Server R2 (1/2)

Capitolo 4d – Instradamento e Algoritmi di instradamento 3.57

ip dhcp pool Aule

network 10.2.1.0 255.255.255.0 default-router 10.2.1.1

dns-server 8.8.8.8 lease 30

class Aule

address range 10.2.1.100 10.2.1.200

!

ip dhcp pool Laboratorio

network 10.1.1.0 255.255.255.0 default-router 10.1.1.1

dns-server 8.8.8.8 lease 30

class Laboratorio

address range 10.1.1.150 10.1.1.250

Reti di elaboratori

configure DHCP Server R2 (1/2)

ip dhcp class Aule

!

ip dhcp class Laboratorio

show ip dhcp binding

show ip dhcp server statistics

ip dhcp ip dhcp -x ip dhcp -r 57

Fausto Marcantoni

(30)

Fausto Marcantoni

configure interface R3

Capitolo 4d – Instradamento e Algoritmi di instradamento 3.59

interface Ethernet0/0

ip address 10.4.1.2 255.255.255.0 half-duplex

!

interface Ethernet1/0

ip address 10.5.1.1 255.255.255.0 half-duplex

!

interface Ethernet1/1

ip address 10.6.1.1 255.255.255.0 ip helper-address 10.5.1.2

half-duplex

Reti di elaboratori

configure dhcp relay interface R3

interface Ethernet1/1

ip address 10.6.1.1 255.255.255.0

ip helper-address 10.5.1.2

half-duplex

Command Description

ip helper-address a.b.c.d This command is executed in interface configuration mode to enable a Layer 3 interface to receive BOOTP DHCP Request and forward them to a specified DHCP server.

59

Fausto Marcantoni

(31)

Fausto Marcantoni

Install dhcp server e http server

Capitolo 4d – Instradamento e Algoritmi di instradamento 3.61

sudo yum install httpd sudo yum install dhcpd sudo systemctl enable dhcpd sudo systemctl enable httpd sudo systemctl start httpd sudo systemctl stop httpd sudo systemctl status httpd sudo systemctl start dhcpd sudo systemctl stop dhcpd sudo systemctl status dhcpd

Reti di elaboratori

configure DHCPD server on Centos 7

subnet 10.5.1.0 netmask 255.255.255.0 { range 10.5.1.100 10.5.1.200;

option subnet-mask 255.255.255.0;

option broadcast-address 10.5.1.255;

option routers 10.5.1.1;

option domain-name-servers 8.8.8.8, 8.8.4.4;

default-lease-time 600;

max-lease-time 7200;

}

subnet 10.6.1.0 netmask 255.255.255.0 { range 10.6.1.100 10.6.1.200;

option subnet-mask 255.255.255.0;

option broadcast-address 10.6.1.255;

option routers 10.6.1.1;

option domain-name-servers 8.8.8.8, 8.8.4.4;

default-lease-time 600;

max-lease-time 7200;

}

configure DHCPD server on Centos 7 61

Fausto Marcantoni

(32)

Fausto Marcantoni

enable routing RIP on R1

Capitolo 4d – Instradamento e Algoritmi di instradamento 3.63

router rip version 2

network 10.0.0.0 network 192.168.122.0

default-information originate

!

ip forward-protocol nd

ip route 0.0.0.0 0.0.0.0 192.168.122.1

!

ip default-gateway 192.168.122.1

Reti di elaboratori

enable routing RIP on R1

router rip version 2

network 10.0.0.0 network 192.168.122.0

default-information originate

!

ip forward-protocol nd

ip route 0.0.0.0 0.0.0.0 192.168.122.1

!

Per propagare una default route, l'edge router deve essere configurato con:

●Una default static route utilizzando il comando ip route 0.0.0.0 0.0.0.0 {ip-address | exit-intf}

●Il comando default-information originate nella modalità di configurazione del router. Ciò indica all'edge router di essere la fonte delle informazioni sulla default route e di diffondere la default static route negli updates del routing

63

Fausto Marcantoni

(33)

Fausto Marcantoni

enable routing RIP on R2 - R3

Capitolo 4d – Instradamento e Algoritmi di instradamento 3.65

router rip version 2

network 10.0.0.0

Reti di elaboratori

verify routing on R1

R1#sh ip route

Codes: C - connected, S - static, R - RIP, M - mobile, B - BGP D - EIGRP, EX - EIGRP external, O - OSPF, IA - OSPF inter area N1 - OSPF NSSA external type 1, N2 - OSPF NSSA external type 2 E1 - OSPF external type 1, E2 - OSPF external type 2

i - IS-IS, su - IS-IS summary, L1 - IS-IS level-1, L2 - IS-IS level-2 ia - IS-IS inter area, * - candidate default, U - per-user static route o - ODR, P - periodic downloaded static route

Gateway of last resort is 192.168.122.1 to network 0.0.0.0

C 192.168.122.0/24 is directly connected, Ethernet0/0 10.0.0.0/24 is subnetted, 6 subnets

C 10.3.1.0 is directly connected, Ethernet1/0

R 10.2.1.0 [120/1] via 10.3.1.2, 00:00:20, Ethernet1/0 R 10.1.1.0 [120/1] via 10.3.1.2, 00:00:20, Ethernet1/0 R 10.6.1.0 [120/2] via 10.3.1.2, 00:00:20, Ethernet1/0 R 10.5.1.0 [120/2] via 10.3.1.2, 00:00:20, Ethernet1/0 R 10.4.1.0 [120/1] via 10.3.1.2, 00:00:20, Ethernet1/0 S* 0.0.0.0/0 [1/0] via 192.168.122.1

R1#

65

Fausto Marcantoni

(34)

Fausto Marcantoni

verify routing on R2

Capitolo 4d – Instradamento e Algoritmi di instradamento 3.67

R2#sh ip route

Codes: C - connected, S - static, R - RIP, M - mobile, B - BGP D - EIGRP, EX - EIGRP external, O - OSPF, IA - OSPF inter area N1 - OSPF NSSA external type 1, N2 - OSPF NSSA external type 2 E1 - OSPF external type 1, E2 - OSPF external type 2

i - IS-IS, su - IS-IS summary, L1 - IS-IS level-1, L2 - IS-IS level-2 ia - IS-IS inter area, * - candidate default, U - per-user static route o - ODR, P - periodic downloaded static route

Gateway of last resort is 10.3.1.1 to network 0.0.0.0

R 192.168.122.0/24 [120/1] via 10.3.1.1, 00:00:03, Ethernet0/0 10.0.0.0/24 is subnetted, 6 subnets

C 10.3.1.0 is directly connected, Ethernet0/0 C 10.2.1.0 is directly connected, Ethernet1/0 C 10.1.1.0 is directly connected, Ethernet1/1

R 10.6.1.0 [120/1] via 10.4.1.2, 00:00:00, Ethernet1/2 R 10.5.1.0 [120/1] via 10.4.1.2, 00:00:00, Ethernet1/2 C 10.4.1.0 is directly connected, Ethernet1/2

R* 0.0.0.0/0 [120/1] via 10.3.1.1, 00:00:03, Ethernet0/0 R2#

Reti di elaboratori

verify routing on R3

R3#sh ip route

Codes: C - connected, S - static, R - RIP, M - mobile, B - BGP D - EIGRP, EX - EIGRP external, O - OSPF, IA - OSPF inter area N1 - OSPF NSSA external type 1, N2 - OSPF NSSA external type 2 E1 - OSPF external type 1, E2 - OSPF external type 2

i - IS-IS, su - IS-IS summary, L1 - IS-IS level-1, L2 - IS-IS level-2 ia - IS-IS inter area, * - candidate default, U - per-user static route o - ODR, P - periodic downloaded static route

Gateway of last resort is 10.4.1.1 to network 0.0.0.0

R 192.168.122.0/24 [120/2] via 10.4.1.1, 00:00:17, Ethernet0/0 10.0.0.0/24 is subnetted, 6 subnets

R 10.3.1.0 [120/1] via 10.4.1.1, 00:00:17, Ethernet0/0 R 10.2.1.0 [120/1] via 10.4.1.1, 00:00:17, Ethernet0/0 R 10.1.1.0 [120/1] via 10.4.1.1, 00:00:17, Ethernet0/0 C 10.6.1.0 is directly connected, Ethernet1/1

C 10.5.1.0 is directly connected, Ethernet1/0 C 10.4.1.0 is directly connected, Ethernet0/0 R* 0.0.0.0/0 [120/2] via 10.4.1.1, 00:00:19, Ethernet0/0 R3#

67

Fausto Marcantoni

(35)

Fausto Marcantoni

troubleshooting

Capitolo 4d – Instradamento e Algoritmi di instradamento 3.69

troubleshooting

Etimologia: ← voce ingl.; propr. ‘caccia (shooting) ai guasti (trouble)’.

(inform.) analisi sistematica del funzionamento di un sistema hardware o software, alla ricerca di eventuali guasti o errori

Reti di elaboratori

Cisco Discovery Protocol (CDP)

show cdp neighbors

Cisco Discovery Protocol (CDP) is a Link-Layer Cisco proprietary protocol that allows Cisco devices to communicate regardless of IP connectivity. It is used primarily to communicate protocol addresses and device capabilities. CDP sends frames that contain Type Length Values (TLVs), which are different properties of the port and/or connection.

R2#sh cdp nei R2#sh cdp neighbors

Capability Codes: R - Router, T - Trans Bridge, B - Source Route Bridge S - Switch, H - Host, I - IGMP, r - Repeater

Device ID Local Intrfce Holdtme Capability Platform Port ID R3 Eth 1/2 156 R S I 2610 Eth 0/0 R1 Eth 0/0 151 R S I 2610 Eth 1/0 R2#

69

Fausto Marcantoni

(36)

Fausto Marcantoni

Configurazioni

Capitolo 4d – Instradamento e Algoritmi di instradamento 3.71

R1_i1_startup-config.cfg

R2_i2_startup-config.cfg

R3_i3_startup-config.cfg

71

Fausto Marcantoni

Riferimenti

Documenti correlati

Steinemann Fernwärme offre il proprio supporto, avva- lendosi della sua esperienza di oltre 30 anni nell‘attenta progettazione e pianificazione di impianti di teleriscal-

Il suo contributo è tipicamente trascurabile per velocità di trasmissione di 10 Mbit/s o superiore (per esempio, per reti LAN); però può essere di centinaia di millisecondi

 Vengono scambiati messaggi http (messaggi del protocollo di livello applicativo) tra il browser (client http) e il Web server (server http).  La connessione TCP

 Se il numero di sequenza del pacchetto è uguale alla base della finestra del receiver allora questo pacchetto ed i successivi in sequenza salvati vengono inviati allo

۞ Le informazioni di instradamento riguardanti strade che coinvolgono più di un sistema autonomo sono scambiate mediante gli Exterior Gateway Protocols (EGP) tra i border

Data una determinata topologia della rete, il numero di host da gestire in ogni rete, e lo spazio di indirizzi assegnato per l’indirizzamento, la definizione di un piano

L'unità di informazione (MAC PDU) del livello data link è detta trama o frame e permette di separare il flusso dei dati in unità più piccole e quindi più facilmente controllabili

Ad esempio, un programma può usare una stampante senza conoscere i dettagli precisi di funzionamento della stampante fisicamente disponibile, in realtà ad usare la stampante non è