Infrastrutture e Protocolli per Internet Advanced Network Technologies Laboratory Infrastrutture e Protocolli per Internet Laboratorio 2 Stefano Napoli Alberto Pollastro Politecnico di Milano
Agenda della Lezione Packet sniffing con Ethereal/Wireshark Analisi di catture relative ai protocolli applicativi HTTP, POP, SMTP e FTP Topologie, tecnologie e apparati di rete Packet Tracer 4.01 (PT) Utilizzo della modalità “Simulazione” di Packer Tracer Installazione di interfacce aggiuntive agli apparati Cisco
Packet Sniffing Funzionamento I pacchetti seguono normalmente il loro percorso nel nodo (routing, filtraggio, forwarding, mangling,...), ma vengono “osservati” da un tool di sniffing I pacchetti sono visualizzati completamente dal tool di sniffing, con gli header di tutti i livelli ed il payload È possibile compiere elaborazioni di vario tipo sui pacchetti, per raccogliere statistiche, ottenere informazioni.... Esistono diversi tool: Wireshark (ex Ethereal) tcpdump tshark Ettercap Kismet (per reti wireless)
Packet Sniffing Perchè sniffare? Lo sniffing si può fare per svariati motivi e finalità: Studiare il funzionamento dei protocolli Reverse Engineering di protocolli Monitoring di rete Debug di applicazioni di rete Troubleshooting di applicativi che hanno a che fare con reti dati
Packet Sniffing Ethereal/Wireshark È uno dei tool più comodi per sniffare pacchetti in rete Contiene strumenti avanzati di analisi e filtraggio È un tool multipiattaforma (Windows e Linux) ed è liberamente scaricabile: http://www.ethereal.com/ http://www.wireshark.org/ Necessita dei permessi di root/Administrator per poter effettuare delle catture di pacchetti Nella versione senza permessi, può però essere usato per analizzare catture già effettuate
Ethereal/Wireshark (2) Packet Sniffing Ethereal/Wireshark (2)
Ethereal/Wireshark (3) Packet Sniffing Ethereal/Wireshark (3) Alcune funzionalità utili: Filtri sui pacchetti: permette di creare filtri per vedere solo determinati pacchetti. Il filtraggio si può fare in base ai diversi campi degli header, o ai diversi protocolli Follow TCP Stream: è possibile, selezionando un pacchetto TCP, chiedere a Wireshark di seguire il flusso TCP, concatenando i pacchetti e mostrando solo i payload. (ad es., seguite un flusso HTTP...) Analisi degli Header: è possibile, per ogni pacchetto, effettuare analisi dettagliate degli header, aprendoli e vedendone il contenuto in formato esadecimale e formattato dalla GUI Statistiche: è possibile ottenere delle statistiche sui flussi, in modo da rendersi conto dell'andamento di alcuni parametri importanti nel tempo
Filtri sui pacchetti e Follow TCP Stream Packet Sniffing Filtri sui pacchetti e Follow TCP Stream Filtri sui pacchetti Follow TCP Stream
Packet Sniffing Analisi degli Header
Packet Sniffing Statistiche
Packet Sniffing Esercizi Sul sito web www.elet.polimi.it/upload/napoli/IPI si trovano delle catture già fatte, analizzabili con Ethereal/Wireshark Aprirle e verificare gli scambi di pacchetti dei vari protocolli: HTTP, FTP, POP, SMTP Cattura HTTP 1: Quali client sono stati impiegati? Quante richiesta di pagine web sono state fatte? In tutti i casi è possibile visualizzare la pagina completa di tutte le parti? Catttura HTTP 2: Qual è lo Username e la password di accesso alla zona riservata del sito? Che errore c'è nella struttura del sito web? (suggerimento: il web server risponde negativamente ad una richiesta...) Cattura FTP: A che porta del server il client si è connesso per ricevere il file server.png?
Packet Sniffing Esercizi (2) Cattura POP 1: Che client di posta è stato usato per inviare la mail? Cattura POP 2: Che tipo di encoding è usato per l'allegato? Quanti bit vengono usati per l'encoding? Catture SMTP: Che differenza c'è tra la cattura SMTP 1 e 2? [A CASA] Provare a replicare le catture riportate usando telnet ed i principali comandi visti dei protocolli applicativi.
Topologie di rete LAN (Local Area Network): Sono reti costituite da apparati/computer collegati tra loro all'interno di un ambito fisico delimitato che non superi la distanza di qualche centinaio di metri (ad esempio una stanza, un edificio, etc.) Possono essere di tipo a Bus, a Stella, ad Anello o a Mesh MAN (Metropolitan Area Network): Sono reti ottimizzate per avere estensioni superiori alle LAN (da un insieme di edifici fino ad una città). Collegano tra di loro più Local Area Network WAN (Wide Area Network): Sono reti che si espandono su un'ampia area geografica (ad esempio una provincia, una regione o uno stato). Svolgono la funzione di trasporto a lunga distanza: costituiscono le dorsali nazionali.
Apparati di rete Repeater/Hub: Bridge/Switch: Router: Sono dispositivi che lavorano a livello 1 dello stack ISO/OSI e si occupano della semplice rigenerazione delle trame di livello superiore (3R) Bridge/Switch: Sono dispositivi che lavorano a livello 2 dello stack ISO/OSI. I bridge interconnettono due spezzoni di rete locale, mentre gli switch interconnettono tra di loro due o più spezzoni di rete locale Router: Sono dispositivi che lavorano a livello 3 dello stack ISO/OSI. Interconnettono tra di loro due o più reti IP Application Gateway: Sono dispositivi che operano al livello 7 dello stack ISO/OSI. Svolgono solitamente le funzionalità di Application Proxy; si frappongono nelle comunicazioni tra due applicazioni remote.
Repeater/Hub
Bridge/Switch
Router
Meccanismo ARP
Meccanismo ARP (2)
PING Ping è un tool di echo che permette di ottenere una risposta da un host Sfrutta il protocollo ICMP, precisamente i messaggi ICMP Echo Request/Reply Ping è utilizzato per scopi di diagnostica di rete Non tutti gli host rispondono al ping, per ragioni di sicurezza (si possono scoprire informazioni importanti su un host anche solo tramite ping)
Packet Tracer 4.01 Packet Tracer (PT) è uno software didattico distribuito liberamente agli studenti ed istruttori del Programma Cisco Networking Academy. http://www.elet.polimi.it/upload/capone/netacad/materiale/PacketTracer401_setup.exe Consente di: creare delle topologie composte da dispositivi generici e/o Cisco simulare la Command Line Interface del sistema operativo Cisco IOS svolgere delle analisi di tipo "what if" creando scenari di traffico ed osservando il corrispondente comportamento della rete ispezionare dinamicamente in ogni momento lo stato di ciascun dispositivo e il formato di ciascun pacchetto attivo sulla topologia di rete
Interfaccia grafica Menu Bar Main Tool Bar Common Tools Bar Logical/Physical Workspace Bar Workspace Realtime/Simulation Bar Network Component Box Device-Type Selection Box Device-Specific Selection Box User Created Packet Window
Logical/Physical Workspace Logical Workspace: E' la sezione di Packet Tracer che permette di creare e configurare la rete da simulare Si crea la topologia di rete aggiungendo gli apparati di rete e le connessioni necessarie Si possono configurare i dispositivi i rete attraverso un'apposita interfaccia grafica e, per gli apparati Cisco, anche attraverso la linea di comando (CLI) di IOS E' inoltre possibile modificare gli apparati di rete aggiungendo e/o rimuovendo i moduli hardware disponibili Physical Workspace: Fornisce una visione fisica della rete mostrando dove si trovano geograficamente gli apparati che formano la topologia creata
Creare la prima rete con PT Aggiungere uno o più dispositivi Selezionare un dispositivo nel “Device-Specific Selection Box” e trascinarlo nell'area di lavoro con il classico meccanismo Drag n' Drop. In alternativa è possibile posizionarlo nell'area di lavoro con un semplice click del mouse nel punto in cui lo si vuole inserire Per inserimenti multipli dello stesso dispositivo è necessario selezionare il dispositivo nel “Device-Specific Selection Box” tenendo premuto il tasto CTRL e cliccare nell'area di lavoro in tutti quei punti in cui si vuole inserire il dispositivo
Creare la prima rete con PT Aggiungere uno o più collegamenti/link Selezionare un collegamento nel “Device-Specific Selection Box” e selezionare nell'area di lavoro i due capi del collegamento. Quando si seleziona un capo del collegamento vengono mostrate le porte (interfacce) su cui è possibile attestare il link. In alternativa è possibile posizionarlo nell'area di lavoro con un semplice click del mouse nel punto in cui lo si vuole inserire Per collegamenti multipli dello stesso tipo è possibile utilizzare la selezione del tipo di collegamento tenendo premuto il tasto CTRL e poi creare nell'area di lavoro i collegamenti necessari
Creare la prima rete con PT Aggiungere uno o più collegamenti/link Vi sono molteplici tipi di collegamento: Copper Straight-through: cavo utilizzato per connettere tra di loro interfacce di tipo Ethernet standard. Solitamente viene usato per collegare tra di loro dispositivi appartenenti a livelli OSI differenti (host con switch, switch con router, ...) Copper Cross-over: cavo utilizzato per connettere tra di loro interfacce di tipo Ethernet standard. Solitamente viene usato per collegare tra di loro dispositivi appartenenti agli stessi livelli OSI (host con host, host con router, router con router, ...) Serial DCE and DTE: cavo utilizzato per collegamenti seriali sia di tipo sincrono che asincrono. Viene usato tipicamente per link WAN Fiber: cavo in fibra ottica Phone: usato dai dispositivi dotati di modem per connessioni dial-up Console: utilizzato per collegare un host alla porta console di un router o uno switch per effettuare operazioni di configurazione/manutenzione
Creare la prima rete con PT Link Status E' possibile visualizzare il nome di ogni interfaccia posizionando lo strumento Inspect su ognuna di esse oppure sul link; dopo qualche secondo comparirà il nome in forma abbreviata (ad esempio Fa0/1 per la porta Fast Ethernet 0/1) Posizionando il puntatore sul link invece vengono mostrati i nomi delle due interfacce ai capi del link Ai capi di ogni link sono rappresentati dei “led” che indicano lo stato dell'interfaccia relativa. Possono essere di tre colori: Verde: indica che l'interfaccia è UP Verde lampeggiante: indica che l'interfaccia è UP e c'è attività sul link Rosso: indica che l'interfaccia è DOWN Ambra: l'interfaccia è “BLOCCATA” in attesa che termini il processo di loop-breaking process; questo stato può manifestarsi solo sulle interfacce degli switch
Creare la prima rete con PT Selezionare ed eliminare dispositivi e collegamenti Selezionare uno o più dispositivi: Per selezionare un solo dispositivo nell'area di lavoro è sufficiente cliccare su di esso Per selezionare più dispositivi contemporaneamente si può operare con una selezione di tipo “Rettangolare” In alternativa, sempre per la selezione multipla, si può cliccare sui dispositivi desiderati tenendo premuto il tasto SHIFT Eliminare uno o più dispositivi: Per eliminare un solo dispositivo (o collegamento) bisogna usare lo strumento Delete all'interno della “Common Tools Bar” Per eliminare più dispositivi contemporaneamente e sufficiente effettuare una selezione multipla ed in seguito utilizzare lo strumento Delete
Creare la prima rete con Packet Tracer Attività 1 Creare la prima rete con Packet Tracer Creare la rete mostrata in figura assegnando i seguenti indirizzi IP: Server0 10.0.0.1 PC0 10.0.0.100 PC1 10.0.0.101 PC2 10.0.0.102 PC3 10.0.0.103 Dal PC3 effettuare tramite prompt dei comandi un ping verso il server
Simulazione di un scambio “Ping” Attività 2 Simulazione di un scambio “Ping” Effettuare il ping dell'attività precedente anche in modalità Simulation dopo aver effettuato il reset della rete Analizzare lo scambio di pacchetti che avviene tra i vari nodi: sulla rete transitano solo pacchetti ICMP? Con lo strumento Inspect (lente di ingrandimento) analizzare la tabella ARP del PC3 e del Server0 durante la simulazione Con lo strumento Inspect monitorare la tabella MAC dello Switch0 Sempre con lo strumento Inspect analizzare i pacchetti che transitano in rete. In modo particolare osservare gli indirizzi mittente e destinazione dei vari pacchetti
Attività 3 Collegare due reti IP Realizzare la topologia di rete mostrata in figura e seguire le istruzioni elencate nella slide successiva
Attività 3 Collegare due reti IP Creare una rete IP simile alla precedente: Server1 11.0.0.1 PC4 11.0.0.100 PC5 11.0.0.101 Interconnettere le due reti con un router Cisco 2621XM e assegnargli i seguenti indirizzi IP: 10.0.0.254 11.0.0.254 Assicurarsi che le interfacce del router siano ON osservando i “led” ai capi dei link che le collegano ai relativi switch. Impostare su tutti i PC e sui server l'indirizzo corretto del default gateway (sarà l'indirizzo IP dell'interfaccia del router sulla propria LAN) Effettuare un Ping dal PC1 al Server1 in modalità simulazione Analizzare lo scambio di pacchetti. Cosa cambia rispetto all'attività precedente?
Aggiungere una porta seriale ai router Cisco Attività 4 Aggiungere una porta seriale ai router Cisco Realizzare la topologia di rete mostrata in figura e seguire le istruzioni elencate nella slide successiva (il link seriale viene mostrato in rosso)
Aggiungere una porta seriale ai router Cisco Attività 4 Aggiungere una porta seriale ai router Cisco Aprire la finestra di configurazione del router e selezionare la vista del dispositivo fisico, poi spegnere il router cliccando sul pulsante di accensione e trascinare il modulo WIC-1T in uno dei due slot liberi. In seguito riaccendere il router.
Aggiungere una porta seriale ai router Cisco Attività 4 Aggiungere una porta seriale ai router Cisco Aggiungere ai due router un'interfaccia seriale WIC-1T (WAN Interface Card – 1 Port) e assegnargli rispettivamente i seguenti indirizzi IP: 12.0.0.1 12.0.0.2 Prima di aggiungere il modulo WIC-1T accertarsi di aver spento il router! Assicurarsi che le interfacce dei router siano ON osservando i “led” ai capi dei collegamenti Effettuare un Ping dal PC2 al primo router. Ha successo? In caso di insuccesso in uno dei due test, verificare lo scambio di pacchetti entrando in modalità Simulazione ed utilizzando lo strumento Inspect e trovare una risposta alle seguenti domande: Quale pacchetto viene droppato? La richiesta o la risposta? In che apparato di rete viene droppato il pacchetto e per quale motivo?