vuoi
o PayPal
tutte le volte che vuoi
Protocolli DI Livello Applicativo
Gli strati 5-6-7 corrispondo a quello Applicativo di TCP/IP. A questo livello operano servizi molto importanti per il funzionamento di Internet.
I protocolli Applicativi si appoggiano allo strato di Trasporto, immediatamente inferiore. Alcuni protocolli lavorano in modo connesso, quindi si appoggiano a TCP, mentre gli altri comunicano a pacchetti, quindi si appoggiano a UDP. In pochi casi è possibile scegliere tra TCP e UDP, inoltre ciascun servizio utilizza una determinata porta.
Il servizio più noto è http (Hyper Text Transfer Protocol), esso lavora in TCP sulla porta 80, anche se alcuni siti possono usare porte diverse.
HTTPS è la versione sicura di http, che lavora con dati crittografati(porta 8080).
Per accedere ad una risorsa internet dobbiamo digitare il suo URL( Uniform Resource Locator).
Esempio N.1
http://www.lazzarone.gov.it/index.html
HTTP indica il protocollo;
lazzarone indica un sottoinsieme di GOV che fa riferimento al gruppo “lazzarone”;
WWW è l’acronimo di World Wide Web, al suo posto ci può essere un’altra sigla che utilizza il nome di un server;
GOV è il nome a dominio, IT è l’ente che ha rilasciato il dominio, in questo caso la Naming Authority italiana;
index.html è il nome della pagina da consultare.
Esempio N.2
https://www.unicredit.it:8443/accessoclient.html
In questo caso usiamo il protocollo sicuro HTTPS ed indichiamo il numero di porta. Se non è indicata, HTTP usa la 80 e HTTPS usa la 443.
Sono importanti anche i tre protocolli per la posta elettronica:
SMTP (Simple Mail Transfer Protocol): è utilizzato per inviare i messaggi di posta e dai server per scambiarsi messaggi tra loro.
POP3(Posto Office Protocol Versione 3): usato per scarica la posta elettronica da un server
IMAP(Internet Message Access Protocol): usato per scaricare la posta mantenendo sul server una corrispondenza con le cartelle del client.
Differenza Tra POP3 ed IMAP
Con pop scarico semplicemente dal server. Posso decidere che la posta rimanga o no dal server, non ci sarà più corrispondenza tra client e server. Con IMAP posso creare un’albero di cartelle sul client e questo viene esattamente replicato sul server. Se cancello o sposto una mail sul client, la stessa azione viene replicata sul server. IMAP è molto comodo se voglio accedere ad una casella di posta con più dispositivi.
DNS (Domain Name Server)
È un servizio che mette in relazione i nomi(URL) con gli indirizzi IP del server su cui si trova la risorsa cercata. Ad ogni risorsa è associato un indirizzo IP del server dove si trova. Per vedere manualmente gli indirizzi associati ad un URL si usa il comando nslookup sul prompt dei comandi.
Esempio
C:\Users\marco>nslookup lazzarone.gov.it
Server: dns.interbusiness.it
Address: 151.99.125.2
Risposta da un server non autorevole:
Nome: lazzarone.gov.it
Addresses: 65.150.128.160
65.150.128.154
65.150.128.151
65.150.128.157
Il comando ci dice:
Il nostro computer è impostato per prendere i dati dal server DNS 151.99.125.2, questa impostazione si trova nella scheda di rete del computer
151.99.125.2 fa parte della rete interbusiness;
L’URL www.lazzarone.gov.it corrisponde ad un server con indirizzo IP 62.149.133.147
Il DNS viene assegnato nelle impostazioni nelle impostazioni di rete, in alcuni casi è automatico, cioè acquisito da un server DHCP (Dynamic Host Control Protocol)
Per vedere le caratteristiche di rete si usa il comando ipconfig/all.
Il sistema DNS è costituito da vari elementi:
i server autoritativi cioè quelli in cui ciascun internet provider assegnano gli IP ai domini da loro gestiti
i server primari cioè quelli da cui si propaga l’informazione a tutti i server del mondo
tutti gli altri server prendono le informazioni da quelli primari e lavorano come cache per distribuirle ai client della loro rete.
Assegnazione dei nomi a dominio
Per ottenere l’assegnazione di un nome a dominio, bisogna rivolgersi ad una Naming Authority.
L’organismo che gestisce internet a livello mondiale è ICANN (Internet Corporation for Assigned Names and Numbers), essa non agisce direttamente ma delega autorità nazionali. In Italia questo ruolo è svolto dall’istituto di informatica e telematica del consiglio nazionale delle ricerche(IIT-CNR).
Per ottenere l’assegnazione di un dominio .it, il richiedente deve rivolgersi ad un provider che registrerà un dominio sul proprio server autoritativo e deve scrivere una lettera di assunzione e responsabilità LAR a IIT-CNR, dove si impegna a rispettare tutte le norme tecniche e di legge in vigore.
Per domini con altre estensioni, .com, .eu, ecc., bisogna rivolgersi a provider abilitati per tali domini che fanno riferimento alla relativa registration authority.
Server Utilizzati Dal Protocollo DNS
Server Autoritativo: usato dal provider che contiene i dati del dominio;
Root Server: Quelli che stanno alla radice a livello mondiale del sistema DNS. A livello mondiale esistono 13 Root Nanoserver, tutti gli altri fanno riferimento a questi;
Server Primari: unici in ogni zona di internet;
Server Secondari: anche molti per ogni zona, ottengono i dati dai server primari attraverso lo Zone Transfer;
Le informazioni del DNS sono contenute per ciascun dominio in una tabella con diversi record.
I più importanti sono il record A che stabilisce la corrispondenza tra nome e L’IP e il record MX che assegna il server di posta di quel dominio
DHCP
All’interno della rete locale ogni dispositivo ha assegnati diversi parametri di rete:
Indirizzo IP
Netmask
Gateway
Dns Primario
Dns Secondario
Questi parametri possono essere assegnati in modo statico oppure essere attribuiti in modo automatico dal server DHCP. Per vedere i parametri di rete si digita:
Ipconfig /all
Se lo prende automaticamente, significa che le informazioni verranno assegnate da un server DHCP (Dynamic Host Control Protocol)
Può esistere un solo server DHCP per ogni sezione della rete. Nelle piccole reti domestiche la funzione del DHCP è svolta dal router, in reti più grandi può essere svolta da un server windows o linux.
Significato Dei Parametri Di Rete
Indirizzo IP: è l’indirizzo a livello di protocollo TCP/IP di quel dispositivo sulla rete. In una rete privata deve essere unico per tutta la rete. Se si tratta di un IP pubblico deve essere unico globalmente;
Netmask: Server ad indicare quali altri indirizzi sono interni a quella porzione di rete e quali invece sono esterni per cui il pacchetto deve essere inviata al router.
EX: INTERA CLASSE C
IP: 10.0.0.27
NM: 255.255.255.0
Gateway: 10.0.0.254
La sottorete è un’intera classe C, quindi se il pacchetto è diretto ad un qualunque computer con un IP da 10.0.0.1 a 10.0.0.253 ci arriva direttamente. Se invece è diretto fuori dalla classe 5,per esempio 10.0.1.38, viene inviato al gateway che provvede all’instradamento.
Il gateway è il router
Gli ip con 0(netmask) o 255(broadcast) finali sono riservati.
Il router, per convenzione, ha finale 254 o 1.
EX: INTERA CLASSE B
IP: 10.0.11.27
NM: 255.255.0.0
Gateway: 10.0.18.254
La sottorete è un’intera classe b, quindi se il pacchetto è diretto ad un qualunque computer con un IP da 10.0.11.1 a 10.0.18.253 ci arriva direttamente. Se invece è diretto fuori dalla classe 5,per esempio 10.7.1.38, viene inviato al gateway che provvede all’instradamento.
EX: INTERA CLASSE A
IP: 10.31.11.27
NM: 255.255.0.0
Gateway: 10.35.18.254
La sottorete è un’intera classe b, quindi se il pacchetto è diretto ad un qualunque computer con un IP da 10.0.11.1 a 10.0.18.253 ci arriva direttamente. Se invece è diretto fuori dalla classe 5,per esempio 10.7.1.38, viene inviato al gateway che provvede all’instradamento.
Segmentiamo la rete in un luogo da utilizzare una sola parte di classe C
Questo si fa solitamente con gli IP pubblici:
Causa scarsità degli IP pubblici, difficilmente il provider di comunicazione assegna all’azienda un’intera classe C, più facilmente assegna una sottorete da 8, 16 o 32 indirizzi IP. Per un’intera classe C, il Netmask è 255.255.255.0, è più significativo se scritto in binario.
Maschera a 256 IP
255.255.255.0
1111111.11111111.11111111.00000000
Maschera a 128 IP
255.255.255.128
11111111.11111111.11111111.10000000
Maschera a 64 IP
255.255.255.192
11111111.1111111.11111111.11000000
.
.
.
Il primo e l’ultimo indirizzo sono riservati.
In una rete da 256 IP ne restano disponibili 254.
In una rete da 128 IP ne restano disponibili 126.
.
.
.
In una rete da 2 IP non ne restano, per questo non si usa.
In una rete a singolo IP, questo rimane disponibile perché netmask e broadcast sono forniti dal provider.
Subneting Delle Reti
Consideriamo il provider di comunicazione ci assegni una subnet:
217.115.13.128/16
Vuol dire che abbiamo una subnet di 16 IP di cui il primo vale 217.115.13.128 e l’ultimo vale 217.115.13.143.
Determiniamo i parametri di rete
Network: 217.115.13.128
Broadcast:217.115.13.143
Gateway: per convenzione è il penultimo o il secondo: 217.115.13.129 oppure 217.115.13.143
Il broadcast manda pacchetti a tutti i dispositivi della sottorete.
Uno dei servizi per cui ci è utile il broadcast è il DHCP.
Processo DHCP
Quando il client DHCP si annuncia sulla rete (quando effettuiamo un login) manda un pacchetto chiamato DHCPDISCOVER con indirizzo di partenza 0.0.0.0 e d’arrivo 255.255.255.255. Questo pacchetto viene ricevuto da tutti i dispositivi della sottorete ma viene preso in considerazione solo dal DHCP Server.
Il Server DHCP risponde con un Pacchetto DHCPOFFER indirizzato al client che ha fato richiesta. Questo pacchetto è a livello 2 perché il cliente non ha ancora un indirizzo IP.
Le informazioni DHCPOFFER:
Indirizzo IP
Gateway
Netmask
Server DNS
Altre informazioni in casi particolari.
Un server DHCP configurato male assegnerebbe indirizzi IP errati o duplicati, con malfunzionamenti nella rete.
Esempio 1.
162.34.10.60/28
IPiniziale= integer(60/16)*16=48 162.34.10.48
IPfinale=48+16-1=63 162.34.10.63
Netmask:255.255.255.240
/28 vuol dire 28 volte 1 e 4 volte 0.
L’ultima quartina 11110000
Netmask= 2^7+2^6+2^5+2^4=128+64+32+16=240→255.255.255.240
Gli IP totali sono 2^4=16(il numero degli 0)
Esempio 2.
IP=131.175.23.99
Netmask:255.255.255.192
Convertire 192 in binario 192=11000000
In totale ci sono 26 “1” di cui 2 nell’ultimo ottetto, quindi /26
IPiniziale=integer(99/64)*64=1*64=64
IPdisponibili=2^6=64(ci sono 6 zeri). 131.175.23.64(network)
IPfinale=64+64-1=127 131.175.23.127
La Posta Elettronica
Serve a trasmettere messaggi/informazioni da un’utente all’altro attraverso internet. Ogni casella di posta elettronica ha un indirizzo nome_utente@dominio. Altri parametri che ci servono per collegarci alla posta elettronica sono:
Nome Utente (spesso coincide con l’indirizzo o con una parte di esso)
Password, abbastanza complicata per impedire agli altri di leggere la posta. Alcuni server possono bloccare la casella temporaneamente per evitare attacchi brute force.
Il protocollo di accesso alla posta (POP3 o IMAP)
il nome del server per la posta in entrata
la porta di collegamento al server di posta in entrata
il nome del server della posta in uscita (può essere lo stesso di quello in entrata)
il protocollo di collegamento della posta in uscita
il protocollo di criptazione
username e password della posta in uscita (possono coincidere con quelle di entrata).
Questi parametri servono a configurare un client di posta sul computer o anche sullo smartphone.
I client più noti sono:
Outlook
Windows Live Mail
Thunderbird
I client di posta maggiori e gli smartphone sono già preinpostati per facilitare l’accesso ai provider più diffusi. Una casella Gmail, ad esempio ha già impostati tutti i parametri. Un metodo più semplice ma più pericoloso è il controllo delle email tramite browser.
Schema Di Funzionamento Della Posta Elettronica
Vedi Appunto da scaricare
Il MUA (Mail User Agent) è il software che lavora nel computer dell’utente e si occupa sia di presentare le mail ricevute sia della scrittura di quelle da inviare.
MTA(Mail Transfert Agent) è il processo che si occupa di trasferire le e-mail verso il server. In trasmissioni viene usato il protocollo SMTP. Il protocollo viene anche usato dai server per scambiarsi le e-mail tra loro.
MDA(Mail Deliver Agent) è il software che opera sul server di posta. I server di posta, per la maggior parte, sono in ambiente Linux. Il software MDA più diffuso è Postfix.
Sul server gira anche il processo che provvede alla comunicazione verso i client con i protocolli IMAP e POP3. Il processo è sommariamente il seguente:
Il mittente compone la mail con il proprio client di posta;
Premendo invio, il client di posta manda la mail al server del proprio provider con il protocollo SMTP;
il server del mittente, con lo stesso protocollo, manda la mail al server del destinatario (Se il mittente ed il destinatario hanno lo stesso server, non avviene nulla).
Il client destinatario scarica le e-mail dal proprio server.
Dettagli Del Protocollo SMTP
Il formato delle e-mail è descritto in modo preciso nella RFC 2821. Il messaggio è formato da tre parti:
la busta(envelope) che contiene informazioni che i server si scambiano tra loro;
Le intestazioni(header) sono intestazioni che tengono traccia dei passaggi fatti dal messaggi, alcuni sono definiti dall’utente:
to: destinatario del messaggio;
cc: destinatario copia conscenza;
bcc(ccn): copia conoscenza nascosta, gli altri destinatari non sanno che l’e-mail viene inviata anche a questi.
from: indirizzo di posta del mittente;
subjet: argomento dell’e-mail;
body: corpo dell’e-mail;
I client possono visualizzare le intestazioni in modo standard o completo.
Con le intestazioni complete, vediamo anche i server attraversati ed altri dettagli.
I protocolli SMTP non è una trasmissione unica ma è un vero e proprio colloquio tra i due computer (dettagli a pag. 54).
I Protocolli Per Internet
I protocolli per internet sono costituiti da un vero e proprio colloquio in formato testo tra il client ed il server. Questo perché storicamente sono nati quando i computer non avevano ancora l’interfaccia grafica.
SMTP
Il client anzitutto risolve l’indirizzo del server utilizzando un servizio DNS e quindi apre una connessione sulla porta 25,
il server risponde con il messaggio 200 <ready>;
il client chiede l’inizio della sezione col comando HELLO, seguito dal proprio nome di dominio;
il server risponde 250 <ok>;
il client specifica il nome del mittente con MAIL FROM <indirizzo>;
il server risponde OK;
il client specifica l’indirizzo del destinatario con RCPT TO:<indirizzo>;
il server risponde 250 <ok>;
il client dichiara che è pronto a trasmettere con il comando DATA;
il server risponde con 354 end data with <CR><LF>.<CR><LF>;
Il client invia l’Header e il body e termina con la riga contenente il carattere “.”;
Il client chiude la sessione con comando QUIT.
Questa è la versione più semplice, oggi sono stati introdotti ulteriori comandi.
POP3
Il client stabilisce una connessione con il server sulla porta 110(le porte possono cambiare).
I principali comandi del client sono:
USER e PASS per effettuare l’accesso;
STAT e LIST per conoscere il numero di email nella posta;
RETR <message number> per acquisire la mail col numero specificato;
DELE <message number> per cancellare le mail col numero specificato;
QUIT chiude la sessione
IMAP
è molto più complesso perché consente di tenere sincronizzato l’albero delle cartelle tra client e server.
Esempio
Sul client potremmo definire varie cartelle:
posta in arrivo;
posta inviata;
personali;
importanti;
lavoro;
Quando ci colleghiamo al server, le email finiscono tutte in posta in arrivo. Da qui, manualmente o automaticamente, possiamo spostarle in altre cartelle.
Col protocollo IMAP, anche sul server la mail viene spostata nella cartella decisa.
Quando, in seguito, ci colleghiamo con un altro dispositivo, la mail verrà scaricata direttamente nella cartella scelta anche su un altro client.
Quindi, tutto l’albero di cartelle rimane sincronizzato tra il server e tutti i dispositivi con cui accediamo.
HTTP (navigazione in internet)
è il protocollo più importante di internet e serve per la navigazione nel World Wide Web.
Inizialmente il suo scopo era solo di interpretare il linguaggio HTML(Hyper Test Markup Language). HTML è caratterizzato dai link, un collegamento da un punto all’altro di un testo o con un altro documento di un altro server.
FTP
FTP serve per il trasferimento dei file. Rispetto ad http, presenta alcuni vantaggi:
maggior velocità;
controllo sugli errori di trasmissione;
consente di trasmettere in upload dal client al server;
Per connetterci in FTP si può usare un browser di comunicazione, anche se è più comodo utilizzare un client specifico. Il maggior software utilizzato per FTP è Firezilla.
Firezilla è un software opensource e gratuito.
Esistono una versione client ed una server.
Linux server e Windows server hanno anche i loro software proprietari
FTP Attivo e Passivo
ci sono due modalità di FTP:
attivo: il client segnala al server su quale porta è in ascolto. Il server si connette su quella porta per l’invio dei dati;
il client manda una richiesta al server sulla porta 21;
sul canale comandi la connessione è sempre iniziata dal client;
il client rende noto al server la porta su chi è in attesa;
il server attiva una connessione tra la sua porta 20 e la porta indicata dal client;
le porte di partenza di partenza sul canale dati sono diverse alle estremità della connessione.
passivo: il server si mette in attesa su una certa porta e la comunica al client attraverso il canale comandi, quest’ultimo attiva la connessione sulla porta indicata.
I Servizi Ed i Certificati
Internet è un sistema libero basato sulla buona fede delle persone. Ad esempio è molto facile falsificare una mail. Nel momento in cui si usa internet per transazioni finanziarie o per trasmettere dati sensibile o se si voglia un grado di riservatezza e la certezza del mittente/destinatario, conviene usare i servizi digitali.
I principali sono:
Firma Digitale: garantisce che un certo documento è stato veramente scritto da una determinata persona;
PEC (Posta Elettronica Certificata): garantisce la certezza del mittente e del destinatario e l’integrità del contenuto della mail;
marca temporale: garantisce che un certo documento è stato redatto in una determinata data;
La certificazione del server web: garantisce che un dato server è effettivamente in uso ad una certa Organizzazione/ente.
Le Firme Digitali
è stata recepita con decreto legislativo 7/03/2005 n.82 per cui un documento firmato digitalmente ha la stessa efficacia probatoria di un documento cartaceo manualmente in originale.
Assegnazione dei nomi a dominio
Per ottenere l’assegnazione di un nome a dominio, bisogna rivolgersi ad una Naming
Authority.
L’organismo che gestisce internet a livello mondiale è ICANN (Internet Corporation for
Assigned Names and Numbers), essa non agisce direttamente ma delega autorità
nazionali. In Italia questo ruolo è svolto dall’istituto di informatica e telematica del
consiglio nazionale delle ricerche(IIT-CNR).
Per ottenere l’assegnazione di un dominio .it, il richiedente deve rivolgersi ad un
provider che registrerà un dominio sul proprio server autoritativo e deve scrivere una
lettera di assunzione e responsabilità LAR a IIT-CNR, dove si impegna a rispettare tutte
le norme tecniche e di legge in vigore.
Per domini con altre estensioni, .com, .eu, ecc., bisogna rivolgersi a provider abilitati
per tali domini che fanno riferimento alla relativa registration authority.
Server Utilizzati Dal Protocollo DNS
- Server Autoritativo: usato dal provider che contiene i dati del dominio;
- Root Server: Quelli che stanno alla radice a livello mondiale del sistema DNS.
A livello mondiale esistono 13 Root Nanoserver, tutti gli altri fanno riferimento a
questi;
- Server Primari: unici in ogni zona di internet;
- Server Secondari: anche molti per ogni zona, ottengono i dati dai server
primari attraverso lo Zone Transfer;
Le informazioni del DNS sono contenute per ciascun dominio in una tabella con diversi
record.
I più importanti sono il record A che stabilisce la corrispondenza tra nome e L’IP e il
record MX che assegna il server di posta di quel dominio
DHCP
All’interno della rete locale ogni dispositivo ha assegnati diversi parametri di rete:
Indirizzo IP
Netmask
Gateway
Dns Primario
Dns Secondario
Questi parametri possono essere assegnati in modo statico oppure essere attribuiti in
modo automatico dal server DHCP. Per vedere i parametri di rete si digita:
Ipconfig /all
Se lo prende automaticamente, significa che le informazioni verranno assegnate da un
server DHCP (Dynamic Host Control Protocol)
Può esistere un solo server DHCP per ogni sezione della rete. Nelle piccole reti
domestiche la funzione del DHCP è svolta dal router, in reti più grandi può essere
svolta da un server windows o linux.
Significato Dei Parametri Di Rete
Indirizzo IP: è l’indirizzo a livello di protocollo TCP/IP di quel dispositivo sulla
rete. In una rete privata deve essere unico per tutta la rete. Se si tratta di un
IP pubblico deve essere unico globalmente;
Netmask: Server ad indicare quali altri indirizzi sono interni a quella
porzione di rete e quali invece sono esterni per cui il pacchetto deve essere
inviata al router.
EX: INTERA CLASSE C
IP: 10.0.0.27
NM: 255.255.255.0
Gateway: 10.0.0.254
La sottorete è un’intera classe C, quindi se il pacchetto è diretto ad un
qualunque computer con un IP da 10.0.0.1 a 10.0.0.253 ci arriva direttamente.
Se invece è diretto fuori dalla classe 5,per esempio 10.0.1.38, viene inviato al
gateway che provvede all’instradamento.
Il gateway è il router
Gli ip con 0(netmask) o 255(broadcast) finali sono riservati.
Il router, per convenzione, ha finale 254 o 1.
EX: INTERA CLASSE B
IP: 10.0.11.27
NM: 255.255.0.0
Gateway: 10.0.18.254
La sottorete è un’intera classe b, quindi se il pacchetto è diretto ad un
qualunque computer con un IP da 10.0.11.1 a 10.0.18.253 ci arriva
direttamente. Se invece è diretto fuori dalla classe 5,per esempio 10.7.1.38,
viene inviato al gateway che provvede all’instradamento.
EX: INTERA CLASSE A
IP: 10.31.11.27
NM: 255.255.0.0
Gateway: 10.35.18.254
La sottorete è un’intera classe b, quindi se il pacchetto è diretto ad un
qualunque computer con un IP da 10.0.11.1 a 10.0.18.253 ci arriva
direttamente. Se invece è diretto fuori dalla classe 5,per esempio 10.7.1.38,
viene inviato al gateway che provvede all’instradamento.
Segmentiamo la rete in un luogo da utilizzare una sola
parte di classe C
Questo si fa solitamente con gli IP pubblici:
Causa scarsità degli IP pubblici, difficilmente il provider di comunicazione assegna
all’azienda un’intera classe C, più facilmente assegna una sottorete da 8, 16 o 32
indirizzi IP. Per un’intera classe C, il Netmask è 255.255.255.0, è più significativo se
scritto in binario.
Maschera a 256 IP
255.255.255.0
1111111.11111111.11111111.00000000
Maschera a 128 IP
255.255.255.128
11111111.11111111.11111111.10000000
Maschera a 64 IP
255.255.255.192
11111111.1111111.11111111.11000000
.
.
.
Il primo e l’ultimo indirizzo sono riservati.
In una rete da 256 IP ne restano disponibili 254.
In una rete da 128 IP ne restano disponibili 126.
.
.
.
In una rete da 2 IP non ne restano, per questo non si usa.
In una rete a singolo IP, questo rimane disponibile perché netmask e broadcast sono
forniti dal provider.
Subneting Delle Reti
Consideriamo il provider di comunicazione ci assegni una subnet:
217.115.13.128/16
Vuol dire che abbiamo una subnet di 16 IP di cui il primo vale 217.115.13.128 e
l’ultimo vale 217.115.13.143.
Determiniamo i parametri di rete
Network: 217.115.13.128
Broadcast:217.115.13.143
Gateway: per convenzione è il penultimo o il secondo: 217.115.13.129 oppure
217.115.13.143
Il broadcast manda pacchetti a tutti i dispositivi della sottorete.
Uno dei servizi per cui ci è utile il broadcast è il DHCP.
Processo DHCP
Quando il client DHCP si annuncia sulla rete (quando effettuiamo un login) manda un
pacchetto chiamato DHCPDISCOVER con indirizzo di partenza 0.0.0.0 e d’arrivo
255.255.255.255. Questo pacchetto viene ricevuto da tutti i dispositivi della sottorete
ma viene preso in considerazione solo dal DHCP Server.
Il Server DHCP risponde con un Pacchetto DHCPOFFER indirizzato al client che ha fato
richiesta. Questo pacchetto è a livello 2 perché il cliente non ha ancora un indirizzo IP.
Le informazioni DHCPOFFER:
- Indirizzo IP
- Gateway
- Netmask
- Server DNS
- Altre informazioni in casi particolari.
Un server DHCP configurato male assegnerebbe indirizzi IP errati o duplicati, con
malfunzionamenti nella rete.
Esempio 1 .
162.34.10.60/28
IPiniziale= integer(60/16)*16=48 162.34.10.48
IPfinale=48+16-1=63 162.34.10.63
Netmask:255.255.255.240
/28 vuol dire 28 volte 1 e 4 volte 0.
L’ultima quartina 11110000
7 6 5 4
Netmask= +2 +2 +2 =128+64+32+16=240
2 →255.255 .255 .240
4
Gli IP totali sono =16(il
2 numero degli 0)
Esempio 2.
IP=131.175.23.99
Netmask:255.255.255.192
Convertire 192 in binario 192=11000000
In totale ci sono 26 “1” di cui 2 nell’ultimo ottetto, quindi /26
IPiniziale=integer(99/64)*64=1*64=64
6
IPdisponibili= =64(ci sono 6 zeri). 131.175.23.64(network)
2
IPfinale=64+64-1=127 131.175.23.127
La Posta Elettronica
Serve a trasmettere messaggi/informazioni da un’utente all’altro attraverso internet.
Ogni casella di posta elettronica ha un indirizzo nome_utente@dominio. Altri parametri
che ci servono per collegarci alla posta elettronica sono:
Nome Utente (spesso coincide con l’indirizzo o con una parte di esso)
Password, abbastanza complicata per impedire agli altri di leggere la posta.
Alcuni server possono bloccare la casella temporaneamente per evitare
attacchi brute force.
Il protocollo di accesso alla posta (POP3 o IMAP)
il nome del server per la posta in entrata
la porta di collegamento al server di posta in entrata
il nome del server della posta in uscita (può essere lo stesso di quello in
entrata)
il protocollo di collegamento della posta in uscita
il protocollo di criptazione
username e password della posta in uscita (possono coincidere con quelle di
entrata).
Questi parametri servono a configurare un client di posta sul computer o anche
sullo smartphone.
I client più noti sono:
Outlook
Windows Live Mail
Thunderbird
I client di posta maggiori e gli smartphone sono già preinpostati per facilitare
l’accesso ai provider più diffusi. Una casella Gmail, ad esempio ha già impostati
tutti i parametri. Un metodo più semplice ma più pericoloso è il controllo delle
email tramite browser.
Schema Di Funzionamento Della Posta Elettronica
Il MUA (Mail User Agent) è il software che lavora nel computer dell’utente e si
occupa sia di presentare le mail ricevute sia della scrittura di quelle da inviare.
MTA(Mail Transfert Agent) è il processo che si occupa di trasferire le e-mail verso il
server. In trasmissioni viene usato il protocollo SMTP. Il protocollo viene anche
usato dai server per scambiarsi le e-mail tra loro.
MDA(Mail Deliver Agent) è il software che opera sul server di posta. I server di
posta, per la maggior parte, sono in ambiente Linux. Il software MDA più diffuso è
Postfix.
Sul server gira anche il processo che provvede alla comunicazione verso i client
con i protocolli IMAP e POP3. Il processo è sommariamente il seguente:
1. Il mittente compone la mail con il proprio client di posta;
2. Premendo invio, il client di posta manda la mail al server del proprio provider
con il protocollo SMTP;
3. il server del mittente, con lo stesso protocollo, manda la mail al server del
destinatario (Se il mittente ed il destinatario hanno lo stesso server, non
avviene nulla).
4. Il client destinatario scarica le e-mail dal proprio server.
Dettagli Del Protocollo SMTP
Il formato delle e-mail è descritto in modo preciso nella RFC 2821. Il messaggio è
formato da tre parti:
- la busta(envelope) che contiene informazioni che i server si scambiano tra loro;
- Le intestazioni(header) sono intestazioni che tengono traccia dei passaggi fatti
dal messaggi, alcuni sono definiti dall’utente:
to: destinatario del messaggio;
o cc: destinatario copia conscenza;
o bcc(ccn): copia conoscenza nascosta, gli altri destinatari non sanno che
o l’e-mail viene inviata anche a questi.
- from: indirizzo di posta del mittente;
- subjet: argomento dell’e-mail;
- body: corpo dell’e-mail;
I client possono visualizzare le intestazioni in modo standard o completo.
Con le intestazioni complete, vediamo anche i server attraversati ed altri dettagli.
I protocolli SMTP non è una trasmissione unica ma è un vero e proprio colloquio tra i
due computer (dettagli a pag. 54).
I Protocolli Per Internet
I protocolli per internet sono costituiti da un vero e proprio colloquio in formato testo
tra il client ed il server. Questo perché storicamente sono nati quando i computer non
avevano ancora l’interfaccia grafica.
SMTP
1) Il client anzitutto risolve l’indirizzo del server utilizzando un servizio DNS e
quindi apre una connessione sulla porta 25,
2) il server risponde con il messaggio 200 <ready>;
3) il client chiede l’inizio della sezione col comando HELLO, seguito dal proprio
nome di dominio;
4) il server risponde 250 <ok>;
5) il client specifica il nome del mittente con MAIL FROM <indirizzo>;
6) il server risponde OK;
7) il client specifica l’indirizzo del destinatario con RCPT TO:<indirizzo>;
8) il server risponde 250 <ok>;
9) il client dichiara che è pronto a trasmettere con il comando DATA;
10) il server risponde con 354 end data with <CR><LF>.<CR><LF>;
11) Il client invia l’Header e il body e termina con la riga contenente il
carattere “.”;
12) Il client chiude la sessione con comando QUIT.
Questa è la versione più semplice, oggi sono stati introdotti ulteriori comandi.
POP3
Il client stabilisce una connessione con il server sulla porta 110(le porte possono
cambiare).
I principali comandi del client sono:
USER e PASS per effettuare l’accesso;
STAT e LIST per conoscere il numero di email nella posta;
RETR <message number> per acquisire la mail col numero specificato;
DELE <message number> per cancellare le mail col numero specificato;
QUIT chiude la sessione
IMAP
è molto più complesso perché consente di tenere sincronizzato l’albero delle cartelle
tra client e server.
Esempio
Sul client potremmo definire varie cartelle:
posta in arrivo;
posta inviata;
personali;
importanti;
lavoro;
Quando ci colleghiamo al server, le email finiscono tutte in posta in arrivo. Da qui,
manualmente o automaticamente, possiamo spostarle in altre cartelle.
Col protocollo IMAP, anche sul server la mail viene spostata nella cartella decisa.