Risposte alla verifica intermedia per il corso di Laboratorio di Software per le Telecomunicazioni Studente: Data: 1. cos'è il modello ISO/OSI ? Un formalismo che ripartisce le funzionalità di un sistema di telecomunicazioni in rete, nell'ambito di una serie di strati sovrapposti, in cui quelli inferiori offrono dei servizi di comunicazione a quelli superiori. Strati omologhi, residenti in dispositivi diversi, comunicano per mezzo di un protocollo tra pari, le cui unità informative, sono poi recapitate per mezzo dei servizi offerti dagli strati inferiori. 2. qual'è lo scopo dello strato di trasporto? Lo strato di trasporto assicura a quelli superiori (applicativi) una consegna delle unità informative priva di errori, ed è realizzato solo nelle entità origine e destinazione della comunicazione. Dialoga inferiormente con lo strato di rete, che invece è implementato in tutti i dispositivi posti lungo il percorso delle unità informative. 3. qual'è la differenza più evidente tra lo strato di rete e quello di trasporto ? l'ho detto prima, lo strato di trasporto è presente solo nei nodi terminali, e quello di rete in tutti 4. in cosa consiste l'incapsulamento ? Quando una entità di livello superiore, invia una unità informativa al suo pari, per mezzo dei servizi offerti da una entità di livello inferiore, quest'ultima "incapsula" l'unità informativa, aggiungendo la sua intestazione. 5. in una URI del tipo http://en.wikipedia.org/wiki/URI_scheme, qual'è la parte relativa al fully qualified domain name? en.wikipedia.org 6. qual'è l'indirizzo IP di destinazione del pacchetto numero 12? chiamiamolo Ip0 Ip0 = 151.100.8.33 7. qual'è l'indirizzo Ethernet di destinazione dello stesso ? Chiamiamolo Et1 Et1 = Destination: Cisco_c1:e4:7f (00:13:c3:c1:e4:7f) 8. di quanti byte è costituita l'intestazione ethernet? e quella IP? 14, 20 9. qual'è il protocollo di trasporto incapsulato nel pacchetto 12 ? UDP 10. qual'è indirizzo di trasporto del mittente del pacchetto 12? e quello del destinatario? 34230, 53 Risalendo all'indietro con i numeri di pacchetto, trovare il primo pacchetto che presenta come indirizzo Ethernet di sorgente, lo stesso (Et1) individuato nella domanda precedente, come destinazione. 11. di che pacchetto si tratta? ARP. E' il pacchetto 9 12. qual'è l'indirizzo IP dell'host che ha indirizzo ethernet Et1? Chiamiamolo Ip1 Ip1 = 151.100.122.1 13. Ip0 ed Ip1 sono uguali o diversi ? Che tipo di dispositivo potrebbe essere, quello con IP pari ad Ip1 ? Sono diversi. quello con IP1 è il default gateway, che è necessario attraversare, per arrivare ad Ip0 (che sta in altra sottorete) spostiamo ora l'attenzione al pacchetto n. 13, una risposta da parte del DNS 14. quante domande, risposte, record autorevoli ed addizionali, sono presenti? 1 domanda, 3 risposte, 3 autorevoli, 3 addizionali 15. cosa significano i tipi di RR presenti tra le risposte? i due RR di tipo CNAME (canonical name) mappano it.wikipedia.org prima in rr.wikimedia.org, e poi in rr.knams.wikimedia.org. Il RR di tipo A (Address) risolve infine in 145.97.39.155 16. se fosse stata presente solo la prima risposta, la domanda sarebbe potuta essere considerata esaudita ? No, perchè non avremmo avuto nessun IP da contattare 17. cosa viene comunicato nella sezione di risposta autorevole ? a cosa può servire questa informazione ? Ci sono scritti i nomi di tre nameserver autorevoli per il dominio della query, ossia qual'è la fonte diretta a cui ci si può rivolgere per interrogazioni dello stesso tipo. Questa informazione viene mantenuta in cache, evitando di ri-eseguire di nuovo la procedura di interrogazione ricorsiva 18. per qualunque cosa potessero servire i dati della risposta autorevole, sarebbero stati sufficienti, se non ci fossero le informazioni presenti nella sezione addizionale ? No. Nella sezione addizionale, infatti, ci sono gli IP dei nameserver autorevoli. 19. insomma, qual'è la risposta alla domanda originaria ? annotarsi questo indirizzo come Ip2 Ip2 = 145.97.39.155 Proviamo ad investigare un pò sul computer che ospita le pagine di wikipedia versione italiana. Colleghiamoci in ssh ad un computer di Ingegneria di Roma, in modo da poter eseguire il comando whois, digitando ssh -l cisterna 151.100.122.171, ed eseguendo il comando whois Ip2 (mettendo ovviamente, l'indirizzo vero) 20. chi risulta essere OrgName ? RIPE Network Coordination Centre 21. leggendo ciò che è scritto nei commenti, si apprende che l'intestatario esatto dell'IP può essere localizzato presso http://www.ripe.net/whois, dove dirigiamo il nostro browser web, per ripetere la domanda relativa a Ip2. Chi risulta ora, nel campo descr ? Sappiamo trovare una email a cui rivolgerci? un telefono ? descr: Kennisnet Platform Content en Diensten phone: +31 30 2305305 fax-no: +31 30 2305329 e-mail: cert@SURFnet.nl phone: +31 79 3230996 fax-no: +31 79 3295877 e-mail: fab@kenict.org 22. più in basso, cliccare sul link offerto dalla chiave origin, troviamo delle informazioni... su che cosa ? origin: AS1103 _> troviamo gli instradamenti annunciati dal sistema autonomo AS1103 mediante il suo BGP 23. proviamo a visitare allora http://www.robtex.com/asmacro/as-surfnet.html ... ci dice qualcosa? cosa potremmo stare osservando? Una tabella che riporta gli intestatari di diversi sistemi autonomi, tra i quali ne troviamo parecchi che comparivano anche prima 24. cambiamo argomento, ora. Quali servizi starà offrendo il computer che ospita wikipedia versione italiana?? Dalla nostra ssh, eseguiamo nmap Ip2. Quali servizi rispondono? PORT STATE SERVICE 21/tcp open ftp 22/tcp open ssh 80/tcp open http Riprendendo i risultati della analisi a cui si era giunti alla domanda 13, ordinare il traffico in base all'indirizzo di sorgente, e posizionarsi all'altezza dei pacchetti che hanno Ip1 come IP di origine 25. cosa si trova scritto alla colonna protocollo, per questi pacchettti? EIGRP 26. posizionarsi sulla finestra intermedia, sopra il nome del protocollo appena trovato, cliccare con il tasto destro del mouse, e selezionare Wiki protocol page. Cosa appare ? Trascrivere il nome del protocollo, e chiudere la nuova finestra che si è aperta. Enhanced Interior Gateway Routing Protocol (EIGRP) 27. posizionarsi ora sulla riga del protocollo più esterno (IP), aprirne il dissettore dei campi, ed individuare il numero di protocollo incapsulato da questi pacchetti. 0x58 proviamo ora a seguire ciò che accade quando si richiede una pagina web 28. cosa rappresentano i pacchetti 14, 15 e 16? qual'è il loro scopo? Rappresentano il three-way hand shake, ed hanno lo scopo di far allocare i buffer necessari, e sincronizzare gli estremi del TCP con i numeri di sequenza che verranno usati 29. qual'è il numero di porta effimera di trasporto usata dal lato client? 42378 30. che dimensione ha l'intestazione di un pacchetto TCP? come si confronta con quella dell'UDP ? Le intestazioni TCP che osserviamo hanno 32 o 40 bytes, in funzione della estensione (12 o 20 bytes) delle opzioni. L'intestazione UDP invece, che troviamo ad es nei pacchetti DHCP e DNS, occupa solo 8 bytes, e quindi è tanto più efficiente quanto più ridotti sono i dati da inviare cliccando con il tasto destro sul pacchetto n. 14, e richiedendo Follow TCP Stream, generare il filtro di visualizzazione che mostra solo il traffico della pagina richiesta. Cliccando su Statistics/Summary, con il display filter attivo, notare 31. quanto tempo passa tra il primo pacchetto di apertura TCP, e quello della sua chiusura 0,877 sec 32. la velocità media di questa comunicazione 25374 bytes/sec 33. il numero totale di bytes scambiati 22243 34. il numero totale di bytes diretti nella sola direzione del client (suggerimento: modificare il display filter selezionando anche l'IP di destinazione, e ripetere il comando Statistics/Summary 20512 ma se parliamo di TCP... 35. quante e quali chiamate di sistema devono essere effettuate verso l'interfaccia socket, perché un programma applicativo possa eseguire una richiesta TCP ad un server? sono 4 chiamate: socket(), bind(), listen(), accept(). 36. qual'è il comando accessibile direttamente dalla shell, che permette di dialogare direttamente (da tastiera) con un server TCP? telnet 37. quali sono le diverse modalità di gestione delle richieste, da parte di un server TCP? Ci possono essere server sequenziali, paralleli (che utilizzano la fork od i thread) oppure che realizzano un I/O multiplato sincrono (utilizzando la select). Infine, possono far uso di socket non bloccanti, ma non è una soluzione pratica, perché impegna troppo la CPU Ora però, tocca al traceroute. Caricare in Wireshark, il capture del traffico generato nell'ambito della ricerca dell'instradamento tra l'ISP libero e l'australia, ed applicare il display filter (!(dns)) && !(arp) 38 quanti pacchetti sono rimasti? 81 dei 127 originari 39. a cosa servivano le richiese al DNS che sono state eliminate dal filtro? Il traceroute, ogni volta che scopre un router (grazie al messaggio TTL exceeded), effettua una richiesta "inversa" al DNS, per tentare di scrivere su schermo, il nome del router scoperto 40. richiedere Statistics/Flow Graph, ed osservare il risultato. Quanti tentativi vengono fatti per ogni hop ? 3 41. quanto vale il campo TTL dell'intestazione IP del pacchetto n. 55? 6 42. cosa contiene il payload ICMP del pacchetto n. 56? dopo l'intestazione ICMP di 4 bytes, segue l'inizio del pacchetto che è stato scartato a causa del TTL exceeded, ossia i 20 bytes di intestazione IP; e 8 bytes di intestazione UDP