vuoi
o PayPal
tutte le volte che vuoi
Il funzionamento di questo campo è semplice: ogni router che riceve il
pacchetto, prima di inviarlo nuovamente, diminuisce il campo di un'unità. Se
si accorge che il campo ha assunto il valore 0, invia al mittente del pacchetto
un messaggio di errore ICMP specificando l'indirizzo del router che l'ha
generato.
Funzionamento
Un'applicazione traceroute, quindi, invia un pacchetto al destinatario di cui si
vuole ricavare il percorso di traceroute con il campo TTL impostato ad 1. Il
primo router che lo riceverà, constatando che il campo TTL ha raggiunto lo 0,
invierà un errore al mittente (ICMP Time Exceeded). L'applicazione
memorizzerà l'indirizzo IP del primo router, quindi invierà un nuovo pacchetto
con TTL impostato a 2. L'operazione verrà ripetuta finché il pacchetto non
sarà arrivato al destinatario, che invierà un ICMP Echo Reply.
Alla fine l'applicazione avrà ottenuto la lista degli indirizzi IP dei router su cui
hanno transitato i pacchetti.
Calcolando anche il tempo trascorso tra l'invio di un pacchetto e l'arrivo del
corrispondente messaggio di errore è possibile anche verificare la velocità di
risposta dei router.
Il primo indirizzo IP fornito è quello del nodo client, che invia il pacchetto di
prova. Questo risulta utile ad esempio nelle connessioni ad un proxy server,
per visualizzare il proprio IP.
Esercizio 3 –Header IP
Avvia Wireshark sull’interfaccia tap0
1. Apri Labreti
2. Apri LXterminal
3. Dai il comando “ssh user@host1” e pass “user”
4. Torna su Wireshark e analizza uno qualsiasi dei pacchetti
5.
Commenta i vari campi dello header IP; commenta così il campo DSF
(Dynamic Silicon Firewall): The dynamic silicon firewall project implements a
hardware
firewall using a soft-core processor with a custom peripheral
designed using a hardware description language.
Embedding this hardware firewall on each network interface
card in a network would offer many benefits. It would avoid
the aforementioned denial of service problem that software
firewalls are susceptible to since the custom peripheral handles the filtering of packet
Esercizio 4—ARP
Avvia Labreti
1. Avvia host1 con comando ssh user@host1 e pass user
2. Digita sudo arp
3. Se la tabella è vuota, procedi, altrimenti digita sudo arp –d host1:
4. questo cancellerà la tabella arp
Al termine della cancellazione, apri Wireshark
5. Avvia l’interfaccia tap0
6. Apri LXterminal di modo che sia su labreti-vb
7. Su labreti-vb, dai il comando ping –c 3 host1
8. Su wireshark noterai 2 tipi di pacchetti: quelli ARP e quelli ICMP del
9. ping.
Apri il pacchetto ARP: il primo tipo sarà la richiesta da parte di labreti-vb
10. in broadcast (estendi il frame ethernet 2 e dimostra che la sorgente è
labreti e la destinazione è broadcast.), verifica ancora estendendo il
pacchetto IP e mostrando come l’IP della sorgente sia labreti. Poi
estendi il pacchetto ARP e troverai che: l’hardware è il tipo 1, cioè
Ethernet, la richiesta è IP (0x800), il target IP address è noto, ma non il
suo MAC.
Apri il pacchetto di ARP reply: la sorgente sarà host1 (mostra il mac
11. address per verifica) e la destinazione sarà labreti-vb. Estendi il
pacchetto ARP e mostra come ora il MAC address di partenza sia noto
(prima no).
Esercizio 6—DHCP
Avvia il software labreti
1. Avvia wireshark su tap0 con filtro udp.port==67
2. Avvia host1 e host2
3. Su host1, scrivi sudo /sbin/dhclient –d –v eth0: questo richiede un
4. nuovo DHCP
Ora analizza i pacchetti su wireshark
5. Se tutto è andato bene, troverai 4 pacchetti: DHCP discovery, DHCP
6. offer, DHCP request e DHCP ACK
Apri il primo, la discovery. In questa fase host1 richiederà un IP. Apri il
7. frame ethernet per mostrare la provenienza del pacchetto e la
destinazione a broadcast. DHCP è incapsulato in UDP: la porta
sorgente è la 68 (bootpc), predefinita per questa operazione, mentre la
destinazione è bootps (67). Ricorda che DHCP si basa su BOOTstrap,
un vecchio protocollo. Storicamente è stato utilizzato per le workstation
senza disco di tipo UNIX (che ottenevano così anche la locazione della
propria boot image) e anche dalle aziende per implementare
un'installazione pre-configurata di Windows sui nuovi PC (tipicamente
in ambienti Windows NT). Il Dynamic Host Configuration
Protocol (DHCP) è l'evoluzione del protocollo BOOTP. Il DHCP come il
BOOTP opera sulla porta UDP 67 (server) e 68 (client). La maggior
parte di server DHCP offrono anche il supporto per il protocollo
BOOTP.) Osserva come gli IP della sorgente nel pacchetto BOOTP, sia
tutto a 0, perché sconosciuto.
Osserva ora il DHCP offer. La sorgente sarà Labreti-vb, che offrirà già
8. nel pacchetto IP l’indirizzo IP, considerandolo come già assegnato.
Osserva poi come la porta 67 sia ora origine (server), e 68 la
destinazione (client). Il tipo del messaggio BOOTP è ora di tipo 2, reply,
e osserva poi tutte le opzioni assegnate.
QUESTO ES FUNZIONA ANCHE SE PRIMA DI TUTTO AVVII WIRESHARK
SU TAP0 E DOPO AVVII DA ISTRUZIONE LABRETI. OSSERVERAI COME
LE MACCHINE RICHIEDONO IL DHCP .
Esercizio 7—TCP #1
Apri Labreti, avviando anche host1
1. Sull’host labreti-vb, digita nc –l 50000
2. Avvia wireshark sull’interfaccia tap0
3. Su host1, scrivi nc 192.168.13.100 50000 < /etc/mime.types
4. Osserva su wireshark i pacchetti di SYN, SYN/ACK e ACK
5. Apri il pacchetto SYN. Identifica come di norma sorgente e destinazione
6. aprendo il frame Ethernet. Analizza anche IP. Apri TCP e nota la porta
di uscita (la 50000). Osserva anche che si tratta di un pacchetto SYN e
analizza la WIndow size.
Apri poi il pacchetto SYN/ACK e analizza i contenuti
7.