Marco Listanti Antonio Cianfrani
Introduzione
A.A. 2013/2014
La rete Internet
sottoreti
router
terminali
Gli apparati di rete
La pila protocollare TCP/IP
Interfaccia di sottorete IP
Trasporto (TCP/UDP) Servizi Applicativi
I protocolli applicativi (HTTP, FTP, TELNET) definiscono modalità e
formati per lo scambio di messaggi di ogni dimensione e scopo
TCP offre un servizio di
trasferimento dati orientato alla
connessione, recuperando i segmenti persi e riordinandoli in sequenza. Il servizio offerto da UDP è senza connessione
IP è responsabile dell’instradamento dei pacchetti in rete
Interfaccia di sottorete: indica genericamente i protocolli propri della sotto-rete (Ethernet, PPP,…)
Apparati e pila protocollare
Ethernet IP
TCP UDP
... ... ... ...
ATM PPP FDDI
IP
FDDI IP
TCP UDP
... ... ... ...
Ethernet ATM Atm IP
switch ATM
terminale terminale
PPP IP
ATM Net Ethernet
CDN
FDDI
router router router
I router IP
Router: generalità
Il router ha le stesse componenti base di un PC (CPU, memoria, system bus e interfacce input/output)
Come tutti i computer essi necessitano di un sistema operativo per il supporto delle applicazioni denominato IOS
(Internetwork Operating System)
L’IOS supporta i file di configurazione, che contengono istruzioni e parametri per controllare il flusso di traffico
tali parametri servono ad effettuare il setup dei protocolli di rete e dei protocolli di routing abilitati sul router
I componenti principali interni di un router sono la RAM, la NVRAM, la flash memory, la ROM e le interfacce.
Componenti interne di un Router (1/4)
CPU
esegue istruzioni del sistema operativo, come l’inizializzazione, funzioni di routing e controllo delle interfacce
I router più complessi possono avere più CPU RAM
usata per le routing table, per la cache fast switching, running configuration e code di pacchetti
Fornisce il run time space per software eseguibile del sistema operativo e si divide in shared memory per I/O e main processor memory
Fornisce della memoria temporanea per il file di configurazione mentre il router è acceso
Componenti interne di un Router (2/4)
Flash
usata per memorizzare un’intera immagine del Cisco IOS NVRAM
memorizzano la configurazione di startup Bus
la maggior parte dei router hanno un bus di sistema ed uno di CPU
Il primo è quello mediante il quale comunicano CPU e
interfacce e sul quale i pacchetti viaggiano verso e da le interfacce
Componenti interne di un Router (3/4)
ROM
è usata per memorizzare in modo permanente il codice diagnostico che si lancia allo startup
Il compito principe della ROM è la diagnostica dell’hardware durante il bootup
Interfaces
le interfacce sono le connessioni del router con l’esterno sono di tre tipi: per LAN, WAN e console/AUX
Power supply
fornisce l’energia necessaria per far lavorare le componenti interne
Componenti interne di un Router (4/4)
Router CISCO 2600
Interfacce di un Router CISCO 2600
Interfacce WAN
Interfacce LAN
Connessioni possibili di un Router
I 3 tipi base di connessione su un router sono le interfacce:
LAN: permettono al router di collegarsi alle Local Area Network
WAN: forniscono connettività attraverso un service provider ad Internet
di management: connessione text-based per configurare il router
Porte di management
La porta console e quella AUX (ausiliaria) sono porte per la gestione del router.
Indispensabili (almeno una) per la configurazione iniziale del router.
La porta AUX non si trova su tutti i router.
La porta console
La porta console è una porta di management usata per fornire accesso out-of-band
E’ usata per la configurazione iniziale, per il troubleshooting, per il monitoraggio e per le procedure di disaster recovery.
Per collegarsi ad una porta console serve un cavo rollover e un adattatore da RJ-45 a DB-9.
Il PC deve supportare la terminal emulation, ( Hyperterminal)
La sessione HyperTerminal (1/2)
Gli step necessari sono
Collegare il terminale usando il rollover cable (usando adeguatamente l’adattatore RJ-45 to DB-9)
Configurare come indicato il software del PC
La sessione HyperTerminal (2/2)
L’interfaccia LAN
In molti ambienti LAN il router è collegato alla LAN usando l’interfaccia Ethernet o FastEthernet.
Il router diviene un host che comunica con la LAN tramite hub o switch.
Per tali connessioni si usa un cavo straight – through (dritto) In alcuni casi la connessione Ethernet del router è diretta con un computer o un altro Router; in tali casi si usa un crossover (incrociato)
Consente la configurazione del router tramite accesso TELNET
Le connessioni WAN possono essere di diverso tipo poiché si possono usare diverse tecnologie
Questi servizi WAN sono solitamente affittati da service provider (leased line, circuit-switched e packet-switched)
Le interfacce WAN (1/2)
Le interfacce WAN (2/2)
I router IP:
principi di funzionamento
Funzioni svolte dai Router
I Router consentono l’interconnessione tra sottoreti diverse
I Router operano allo strato 3 della pila protocollare: strato IP.
Lo strato IP (RFC 791, 919, 922, 950, 1349) svolge le seguenti funzioni:
• Funzionalità di indirizzamento
• Funzionalità di commutazione (o instradamento)
• Funzionalità di frammentazione
I Router devono essere opportunamente configurati dall’amministratore del router
Indirizzamento nella rete IP (1/3)
Un indirizzo IP (IP Address) identifica gli hosts e i routers
• Se un host è connesso a più di una sotto-rete (multi-homed) avrà un indirizzo IP per ogni sotto-rete
• Ad un router è assegnato un indirizzo per ciascuna delle sue interfacce
Un indirizzo IP è unico in tutta la rete
• ha una lunghezza di 32 bits
• Si usa una notazione dotted o mnemonica per rappresentarlo
10010111 01100100 00001000 00010010 151. 100. 8. 18
infocom.uniroma1.it Notazione Numerica
Notazione Dotted Notazione Mnemonica
Gli indirizzi IP hanno una struttura gerarchica
Lo spazio di indirizzamento è suddiviso in blocchi d’indirizzi: a ciascuna sottorete viene assegnato un blocco di indirizzi
IP_Address=Net_Id.Host_Id
• Il prefisso Net_Id identifica il blocco a cui appartiene l’indirizzo
• Il campo Host_Id identifica un particolare indirizzo in un blocco
Consente una realizzazione scalabile della funzione di instradamento
• Ciascuna sotto-rete è rappresentata dal prefisso Net_Id del blocco a lei assegnato
Indirizzamento nella rete IP (2/3)
Per rappresentare un blocco di indirizzi bisogna introdurre il concetto di maschera di sottorete (Mas): è una stringa di 32 bit che in corrispondenza dei bit del prefisso di sottorete (Net_Id) assume valore 1 e in corrispondenza dei bit del campo Host_Id assume valore 0
Ind = Net_Id . Host_Id
Mas = 1111….11 . 00….000
Indirizzo del sottoblocco (Ind(S)):
Ind(S)= Net_Id . 0….000
Mas(S)= 11……..11 . 0….000
Dato un indirizzo IP Ind(H) e un sottoblocco S rappresentato da (Ind(S),Mas(S)), l’operazione di verifica dell’apparteneza di Ind(H) a S è semplice
Ind(H)S Ind(H) & Mas(S) = Ind(S)
AND logico
Indirizzamento nella rete IP (3/3)
Indirizzamento classfull
• La tecnica del subnetting consente l’utilizzo di maschere di sottorete diverse dalle classiche maschere delle classi A B e C:
Esempio.: subnetting a partire da un indirizzo di classe C:
255.255.255.128 (10000000) /25 255.255.255.192 (11000000) /26
……….
Net_ID Host_ID
Net_ID Sub_Net_ID Host_ID
Prefisso di rete Prefisso di rete
Indirizzamento classfull con subnetting
Host vs router
Terminale (host)
Router
IF 1 (ATM) IF 2 (Ethernet) IF 3 (FDDI)
191.133.5.7 123.45.6.93 112.4.234.9
IP
IF 1 191.133.5.98
TCP UDP APPLICATION
Indirizzo IP IP
Indirizzo fisico
subnet
191.133.0.0/16
subnet
191.133.0.0/16
subnet 123.45.0.0/16
subnet
112.4.234.0/24
Architettura di un terminale
Indirizzi IP
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.
IP
3 1 2
• Ogni datagramma attraversa un cammino composto da router e sottoreti.
• L’instradamento può essere di due tipi:
• instradamento diretto
• instradamento indiretto
IP
Tabelle di instradamento
• Il meccanismo per l’instradamento in IP è basato sulla presenza in ogni host e 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 rete di destinazione
– I è l’interfaccia del router verso cui rilanciare i datagrammi diretti a N
• Regola del Longest Prefix Matching
Esempio
Tabella di instradamento di R2 Destinazione
N Next hop
NH
20.0.0.0 d.c. (20.0.0.6)
130.11.0.0 d.c. (130.11.0.6)
11.0.0.0 20.0.0.5
213.2.97.0 130.11.0.7
213.2.98.0 130.11.0.7
Maschera M 255.0.0.0 255.255.0.0 255.0.0.0 255.255.255.0 255.255.255.0
Interfaccia I
eth0 eth1 eth0
eth1 eth1 20.0.0.5
20.0.0.6
130.11.0.6 213.2.97.7
130.11.0.7 Rete
11.0.0.0 Rete
20.0.0.0 Rete
130.11.0.0
R1 R2 R3
11.0.0.5
Rete 213.2.97.0
Rete 213.2.98.0 213.2.98.12
eth0
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:
• negli host, che possono anche non avere una tabella di routing propria e che inviano al router di default tutti i datagrammi non diretti alla rete cui sono collegati
• nei router, che pur avendo tabella di discrete dimensioni non coprono tutte le possibili destinazioni
• 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 Next hop
NH
20.0.0.0 d.c. (20.0.0.6)
130.11.0.0 d.c. (130.11.0.6)
0.0.0.0 20.0.0.5
Maschera M 255.0.0.0 255.255.0.0 0.0.0.0
Interfaccia I
eth0 eth1 eth0
Costruzione della tabella di instradamento
Distanza amministrativa
Configurazione degli Host
Qualsiasi host che accede ad una rete IP deve essere correttamente configurato
• Host name
• IP address
• Subnet mask
• Default router
• Server DNS
Server DHCP
Uso Indirizzi privati: NAT
Configurazione di un
Router CISCO
IOS
Un router o uno switch non possono funzionare senza sistema operativo
Studieremo il sistema operativo della Cisco: Cisco IOS
L’IOS Cisco fornisce i seguenti servizi:
Funzioni base di routing e switching
Accesso sicuro e affidabile alle risorse della rete Scalabilità della rete
CLI (1/2)
L’IOS Cisco usa una interfaccia a linea di comando (CLI)
Due possibili modalità di accesso
Sessione console
usa una connessione seriale a bassa velocità
non è necessario che il router abbia i servizi di rete configurati
Sessione Telnet
Per stabilire una sessione Telnet verso un router almeno una interfaccia deve essere configurata con un indirizzo IP e il virtual terminal deve essere configurato per il login e la password
CLI (2/3)
Il CLI usa una struttura gerarchica
necessita di entrare in modalità differenti per compiere determinati compiti
Esistono due livelli di accesso
User EXEC mode (modalità utente)
Privileged EXEC mode o enable mode (modalità privilegiata)
CLI (3/3)
La User EXEC mode permette solo un limitato numero di comandi base per funzioni di
monitoraggio (“view only” mode)
Non permette alcun comando che possa cambiare la configurazione del router
Si identifica con il prompt “>”.
Il Privileged EXEC mode consente l’uso dell’intero insieme di comandi
Si può accedere tramite password Si riconosce per il prompt “#”
L’immagine della IOS
Usando il comando show version si può controllare quale sia l’immagine di IOS disponibile sulla memoria flash
Per sapere la quantità di memoria flash si usa il comando show flash
GAD#show flash
… <output omitted>…
15998976 bytes total (10889728 bytes free)
Nel selezionare una nuova immagine di IOS occorre
verificare la compatibilità con le memorie flash e RAM del router
Le release più recenti hanno maggiori funzionalità e necessitano quindi di maggiore memoria
SHOW VERSION
SHOW FLASH
Modalità operative
I device Cisco possono operare in tre modalità
ROM monitor Boot ROM Cisco IOS
Startup iniziale
Livelli di accesso ai comandi (1/3)
Un router ha due livelli di accesso ai comandi
User EXEC mode
Privileged EXEC mode
Per accedere ad un insieme completo di comandi si deve entrare nella Privileged EXEC mode
Al “>” prompt si scrive il comando “enable”
Potrebbe essere richiesta una password per l’accesso a tale modalità
Quando il login è stato completato il prompt cambia in “#”
Livelli di accesso ai comandi (2/3)
La configurazione tramite la CLI di un router Cisco è sempre fatta nella modalità global configuration mode Altre modalità di configurazione (non globali) sono
accessibili a partire dalla configurazione globale
Per accedere alla global configuration mode utilizzare il comando “configure terminal”
Router#configure terminal Router(config)#
Dal global configuration mode si può accedere alla
configurazione di: interfacce, protocolli di routing, etc..
Livelli di accesso ai comandi (3/3)
Per tornare all’User EXEC mode si possono usare il comando
“disable” o il comando
“exit”
Per tornare alla modalità EXEC privilegiata dalla modalità global
configuration scrivere
“exit” o “Ctrl-Z”
Modalità di comando della CLI
Aiuti nel CLI del router
Scrivendo il punto interrogativo (?) nella modalità user EXEC o nel privilegiato vengono visualizzate una lista dei comandi
disponibili
Dopo “—More—” alla fine del display lo schermo visualizzerà altri comandi
Premendo Enter si vede la linea successiva, qualsiasi altro tasto causa il ritorno del prompt
Si può entrare in privilegiato anche con il comando “ena”
Premere “Ctrl-P” o “freccia in su” per ripetere l’ultimo comando Il simbolo ^ indica un errore
Assegnare un nome al router
A un router dovrebbe essere assegnato un nome “unico”
Per assegnare un nome dalla global config Router(config)#hostname Tokyo
Tokyo(config)#
Accesso riservato (1/4)
L’accesso al router può essere limitato tramite la configurazione di password
Le password possono essere configurate per limitare l’accesso:
1. al router dalla porta console
2. al router da una virtual terminal line (vty), es. accesso tramite Telnet
3. alla modalità Privileged EXEC
Accesso riservato (2/4)
Per configurare una password per l’accesso tramite console:
Router(config)#line console 0
Router(config-line)#password <password>
Router(config-line)#login
Per configurare una password per l’accesso tramite telne (virtual terminal line):
Router(config)#line vty 0 4
Router(config-line)#password <password>
Router(config-line)#login
Accesso riservato (3/4)
Per configurare una password per l’accesso alla modalità Privileged EXEC:
Sono possibili due soluzioni:
1. Attraverso il comando “enable password”
Router(config)#enable password <password>
In questo caso la password è memorizzata “in chiaro” (non
cifrata) nel file di configurazione (è visibile attraverso “show running-config” o “show startup-config”)
Accesso riservato (4/4)
È possibile cifrare la password abilitando il servizio di cifratura della password:
Router(config)#service password-encryption
2. Attraverso il comando “enable secret”
Router(config)#enable secret <password>
La password viene cifrata nel file di configurazione
L’algoritmo di cifratura utilizzato da enable secret è più robusto rispetto a quello del servizio di cifratura delle password
Il comando “show” (1/2)
È utilizzato per la visualizzazione di informazione del router
È disponibile sia nella User EXEC che nella Privileged EXEC (con diversi livelli di accesso alle informazioni)
Esempi:
“show interfaces” – mostra tutte le statistiche di tutte le interfacce
“show controllers serial” – mostra informazioni specifiche sull’hardware di interfaccia
“show clock” – mostra l’ora settata nel router
“show hosts” – mostra la lista in cache di host name ed indirizzi
Il comando “show” (2/2)
“show users” – mostra tutti gli utenti connessi al router
“show history” – mostra una storia dei comandi usati
“show flash” – mostra le informazioni sulla flash memory e su quali IOS file sono qui immagazzinati
“show version” – mostra le informazioni sul router e l’IOS che corre nella RAM
“show ARP” – mostra la ARP table del router
“show protocol” – mostra lo stato globale e delle interfacce di ogni protocollo di Layer 3 configurato
“show startup-configuration” – mostra la configurazione salvata nella NVRAM
“show running-configuration” – mostra la configurazione attuale memorizzata nella RAM
Il file di configurazione (1/2)
File running-config: contiene la configurazione corrente
File startup-config: contiene l’ultima
configurazione salvata nella NVRAM (e ricaricata al riavvio)
Per effettuare delle modifiche sulla configurazione del router accedere alla modalità richiesta e
inserire il comando
Per verificare le modifiche “show running-config”
Il file di configurazione (2/2)
Per tornare alla configurazione precedente:
Disabilitare il comando con “no nome_comando”
Ricaricare il file di configurazione originale dalla NVRAM Ricaricare un file di configurazione archiviato in un server TFTP
Per salvare le modifiche (e quindi ricaricarle al riavvio) copiare il file di configurazione nella NVRAM con il
comando “copy running-config startup-config”
Router# copy running-config startup-config
Backup della configurazione (1/2)
Una copia della configurazione corrente può essere salvata su un TFTP server remoto attraverso il comando “copy running-config tftp”
In particolare la procedura prevede:
1. Inserire il comando “copy running-config tftp”
2. Inserire l’IP address dell’host dove i file di configurazione saranno memorizzati
3. Scrivere il nome da assegnare al configuration file
Backup della configurazione (2/2)
Ripristino della configurazione
Configurazione di una interfaccia seriale (1/2)
Per configurare un’interfaccia seriale bisogna:
1. Entrare in configurazione globale
2. Entrare nella modalità interfaccia
3. Specificare l’indirizzo della interfaccia e subnet mask
4. Settare il clock rate (solo per il DCE)
5. Attivare l’interfaccia
Configurazione di una interfaccia seriale (2/2)
Le interfacce seriali richiedono un segnale di clock per la sicronizzazione nella comunicazioni
Per default le interfacce di un router sono
disattivate: si attivano attraverso il comando “no shutdown”
Router(config)#interface serial 0/0
Router(config-if)#ip address <ip address>
<netmask>
Router(config-if)#clock rate 56000 Router(config-if)#no shutdown
Configurazione di una interfaccia Ethernet
Analoga alla configurazione di un’interfaccia seriale ma non è necessario configurare il clock rate
(interfaccia asincrona)
Per configurare seguire i seguenti step:
Entrare in configurazione globale
Entrare in configurazione interfaccia
Specificare l’indirizzo di interfaccia e la subnet mask Abilitare l’interfaccia
Descrizione di una interfaccia (1/2)
E’ utile assegnare a un’interfaccia una descrizione La descrizione serve solo come commento
all’interfaccia e non influisce sulle operazioni del router.
Le descrizioni possono includere ad esempio:
il nome della rete collegata all’interfaccia la locazione dell’interfacce
Le descrizioni delle interfacce si inseriscono con il
comando “description” nella sezione di configurazione dell’interfaccia
Descrizione di una interfaccia (2/2)
L’emulatore Packet Tracer
Laboratorio di Applicazioni Telematiche - A.A. 2013/2014
Packet Tracer (1/2)
Che cosa è Packet Tracer?
Cisco Packet Tracer è un software didattico per l’emulazione di apparati di rete CISCO
A cosa serve Packet Tracer?
Creare topologie di rete composte da apparati generici e/o proprietari di Cisco
Emulare la CLI del sistema operativo Cisco IOS (o almeno un sottoinsieme delle funzioni)
Configurare tramite GUI o CLI gli apparati di rete e verificarne il loro funzionamento creando scenari di traffico
Ispezionare dinamicamente lo stato di ciascun dispositivo e il formato di ciascun pacchetto inviato sulla topologia di rete
Packet Tracer (2/2)
Topologia e dispositivi esistente
è possibile utilizzare
una topologia di riferimento già esistente open -> Reference_Topologies
oppure crearne una nuova da zero
è possibile utilizzare
Apparati di rete realmente esistenti Personalizzarne di propri
Come inserire un dispositivo
1. Click su Select tool
3. Scegli un device.
2. Scegli un tipo di device
4. Click sul workspace.
Select tool : strumento di selezione
Move tool: per muovere l’inera topologia
Note tool: per aggiungere delle note dove si vuole
Delete tool: per rimuovere link e device
Strumenti: La Common Tools Bar
Connettere i dispositivi
Per connettere due dispositivi bisogna selezionare:
un adeguato mezzo trasmissivo (cavo, connessione wireless?)
le giuste interfacce
è possibile utilizzare anche una modalità chiamata smart connection:
il software seleziona automaticamente il cavo e le interfacce da connettere
2. Scegli l’icona Connection.
Uso di Smart Connection
1. Click Select tool
3. Scegli l’icona Smart Connection.
4. Click sul primo device.
5. Click sul secondo device.
Port Status
Se è rosso la porta è “giù”:
non funziona
Ricorda che lo stato di default di una interfaccia di un router
è “shutdown”.
Port Labels
Metti il mouse sopra il link per vedere quali sono le porte che la
“Smart Connection” ha utilizzato
Configurare i dispositivi
Packet Tracer permette di fare alcune
configurazioni di base tramite una interfaccia grafica (GUI- Grafic User Interface), in basso mostra comunque quali sono i comandi
equivalenti da dare tramite CLI.
2. digita l’ hostname sia in Display Name sia in Hostname
3. il nome del device name viene
aggiornato
4. I comandi equivalenti dell’IOS
vengono riportati qui.
1. Per configurare un device, click su questo e poi click sulla Config
tab.
Configurazione del Router Hostname
1. Click su un interfaccia per configurarla.
2. Inserisci indirizzo IP &
Subnet Mask.
3. Attiva l’interfaccia.
4.I Comandi IOS vengono aggiornati e il link diviene
verde.
Router FastEthernet Interface
Click sul PC e poi click sulla Config tab
In GLOBAL Settings, si può cambiare il nome del PC e inserire
l’indirizzo IP del gateway.
Configurare il Gateway del PC
Configurare l’indirizzo IP del PC
Click su FastEthernet in INTERFACE per configurare
l’indirizzo IP e la Subnet Mask.
Salvare la configurazione e i file
Save your file by selecting File…Save
Save your router configs by clicking the NVRAM Save
button.
Verificare la Connettività
Packet Tracer permettere di verificare la connettività in diversi modi.
Realtime Mode: apro una command prompt dal desktop del PC e provo a fare ping come nel mondo reale.
Simulation Mode: posso creare una simulazione in modo da vedere i pacchetti lungo il loro path e capire come vengono processati
Verifica in Realtime Mode
In Realtime mode, select Desktop from the tabbed interface. Click the Command Prompt icon to open a command prompt
from the PC.
Ping the Gateway
“Pinga” il gateway
Simulation Mode
Passa al Simulation Mode.
Simulation Mode?
Fino ad ora abbiamo fatto tutto in modalità Realtime Mode. In Realtime Mode, la rete
funziona come nella realtà. Le configurazioni vengono create e modificate in real time, e la rete risponde in real time.
Il Simulation Mode si usa per osservare il traffico della rete in modo dettagliato e
controllato. Permettendo di seguire i percorsi dei pacchetti e di analizzarli nel dettaglio.
Creare una PDU
1. Click the Simple PDU icon.
2. Select the Source device.
3. Select the Destination
Device.
Event List
The Event List window records (or "captures") what happens
as your PDU propagates the network.
The PDU List will show the PDU information.
The Event List can be filtered to show specific kinds of traffic.
Playing the Simulation
Click the Auto Capture/Play button to begin the simulation.
Risultati
A successful ping will show a green check mark.
As the simulation runs, events will be added to the list. These events
show the packet’s state at each step along the path.
PDU Information