Iniziamo col dire che durante le fasi iniziali di Internet, era previsto che ogni computer avesse il proprio indirizzo IP unico. Questo permetterebbe ad ogni dispositivo connesso ad Internet di parlare con ogni altro dispositivo utilizzando l'indirizzo IP unico.
Ma, IPv4 utilizza indirizzi IP a 32 bit, e con 32 bit il numero massimo di indirizzi IP è 2^32 o 4.294.967.296. Questo fornisce un po' più di quattro miliardi di indirizzi IPv4 (in teoria). Il numero di indirizzi IPv4 disponibili è in realtà inferiore al numero massimo teorico.
Se dai un'occhiata a Quante connessioni Internet ci sono nel mondo? Giusto. Ora, puoi vedere il numero crescente di connessioni a Internet di minuto in minuto.
Fortunatamente, le persone che costruiscono Internet hanno previsto questo problema e hanno iniziato a lavorare sulle soluzioni per supportare il crescente numero di dispositivi connessi a Internet.
Una di queste soluzioni è NAT (Network Address Translation). Questo permette a una rete completa, per esempio la tua rete domestica, di avere un unico indirizzo IP, indipendentemente dal numero di dispositivi collegati al tuo router Wi-Fi.
Come è possibile?
Il tuo router assegna ai tuoi dispositivi indirizzi locali/privati o indirizzi IP non instradabili. Questi indirizzi non sono direttamente instradabili da Internet, cioè qualcuno che si trova in un'altra rete non può fare un ping diretto al tuo dispositivo o non può stabilire una connessione al tuo dispositivo usando questo indirizzo IP privato.
Supponiamo che tu sia connesso a Internet, e stai richiedendo una pagina web su un server di Google.
1. Inviate una richiesta HTTP con l'indirizzo sorgente come vostro indirizzo IP privato.
2. Quando questa richiesta raggiunge il vostro router, il vostro router sostituisce questo indirizzo IP privato con l'indirizzo IP pubblico (statico/dinamico) che gli è stato assegnato dal vostro provider di servizi Internet (ISP).
3. La richiesta raggiunge Google, che vede l'indirizzo IP sorgente come l'indirizzo IP pubblico della tua rete, crea una risposta e la rispedisce con l'indirizzo IP pubblico come destinazione.
4. Una volta che la risposta raggiunge il tuo router, cambia la destinazione e la reindirizza al tuo dispositivo che ha richiesto quella pagina web.
Un'altra soluzione è IPv6. Il vantaggio principale di IPv6 rispetto a IPv4 è il suo spazio di indirizzi più grande. La lunghezza di un indirizzo IPv6 è di 128 bit, rispetto ai 32 bit di IPv4. Lo spazio degli indirizzi ha quindi 2^128 o circa 3,4×10^38 indirizzi.
IPv6 può fornire indirizzi IP unici ad ogni dispositivo che può connettersi all'Internet of Things (IoT), compresi i dispositivi, e non dobbiamo preoccuparci di esaurirli nel prossimo futuro.