L’indirizzo IP
Nel protocollo IP (Internet Protocol), l’indirizzo IP ha un ruolo fondamentale. Nelle reti i dati viaggiano a pacchetti, blocchi di dati e informazioni. Per semplicità di può pensare ad un trasporto merci suddiviso in container che viaggiano su camion diversi. All’autista necessita l’indirizzo del destinatario, ed è anche utile sapere l’indirizzo del mittente. L’indirizzo IP ha un ruolo simile: identifica un elemento della rete (il PC, ad esempio), che può essere il mittente o il destinatario.
L’indirizzo IP è un numero che, rappresentato in binario, è composto da 32 bits (per la versione 4 del protocollo IP -IPv4-).
L’indirizzo IP è normalmente rappresentato in decimale con una notazione puntata. Ogni numero è la conversione decimale di 8 bits della rappresentazione binaria.
Un esempio è d’obbligo: se la rappresentazione decimale è 192.168.1.15, il corrispondente numero in binario è: 11000000 (192), 10101000 (168), 00000001 (1), 00001111 (15) quindi 11000000101010000000000100001111.
Se si usa il formato binario il numero è impossibile da ricordare. E’ pure difficile ricordare il numero in decimale. Per questo di ricorre a sistemi per associare all’indirizzo IP dei nomi, il più comune fa uso del sistema DNS -Domain Name System-.
Con l’adozione di 32 bits si possono indirizzare (individuare) un numero elevato di destinatari e mittenti (più tecnicamente nodi). Con 32 bits si conta fino a 256*256*256*256=42.949.672.96, apparentemente un numero alto, ma ormai superato dalla proliferazione di dispositivi (nodi o destinatari) che occorre raggiungere, problema affrontato con una nuova versione del protocollo IP: la versione 6.
Le reti sulle quali viaggiano i dati sono complesse, "intrecciate" ed eterogenee. Anche in questo caso si può pensare ad una situazione comune. Una città presenta un intreccio di vie. Ogni via con il numero civico indica un destinatario.
Per raggiungere un destinatario si indica via e numero civico. E’ un modo più pratico per localizzare un punto e fornire un indirizzo univoco.
L’indirizzo IP serve ad uno scopo simile e per comodità il numero viene suddiviso in due parti. La prima parte indica laa rete (l’equivalente della via) la seconda parte indica il nodo all’interno della rete (l’equivalente del numero civico).
Definire quale è la prima parte e quale è la seconda è compito di un ulteriore numero, il netmask, che va sempre a braccetto con l’indirizzo IP.
Il netmask è ancora un numero a 32 bit, anch’esso rappresentabile nella notazione decimale puntata, come per l’indirizzo IP. La prima parte del numero è composta da numeri 1 ed indica la parte di rete, la seconda parte da numeri 0. Se il netmask è 255.255.255.0, in binario 11111111111111111111111100000000 (24 volte 1 e 8 volte 0) e l’indirizzo IP è 192.168.1.15, allora i primi 24 bits dell’indirizzo IP identificano la rete e gli ultimi 8 bits il nodo nella rete. Per quanto possa sembrare complesso, l’elaboratore manipola queste informazioni con una semplicissima operazione detta di AND.
11000000101010000000000100001111 AND 192.168. 1. 0
11111111111111111111111100000000 = 255.255.255. 0
-------------------------------- ---------------
11000000101010000000000100000000 192.168. 1. 0
Una notazione comunemente usata è 192.168.1.0/24 ed indica l’indirizzo di rete e il numero di bits usati per identificarla, quindi 192.168.1.0 è l'indirizzo di rete, i primi 24 bits dedicati alla rete e i successivi 8 (8=32-24) rappresentano il nodo nella rete.
I meccanismi di trasporto dei dati usano l’indirizzo IP per portare a destinazione l’informazione.
Per fare questo, la prima operazione utile è capire ‘quanto lontano si deve andare’.
Si è paragonato l’indirizzo di rete ad una via e il numero del nodo al numero civico. Se devo consegnare un pacco nella mia stessa via è facile, guardo il mio numero civico (per sapere da quale parte andare), mi muovo sulla mia stessa via finché non trovo il civico del destinatario e consegno il pacco. Se la via è differente le cose si complicano. Probabilmente occorre consultare uno stradario e magari decidere quale è la strada migliore, più breve o più veloce per consegnare il pacco.
Nel protocollo IP le problematiche sono simili. Se il destinatario è nella mia stessa rete è semplice consegnare i dati. Se il destinatario è in una rete differente occorre un meccanismo più elaborato si parla di routing, instradamento.