Due cose si stanno confondendo qui:
- indirizzamento di classe vs CIDR
- Masquerading / NAT
Passare dall'indirizzamento di classe al Classless Inter Domain Routing (CIDR) è stato un miglioramento che ha reso più efficiente la distribuzione degli indirizzi agli ISP e alle organizzazioni, aumentando così anche la durata di IPv4. Nell'affrontare con classe un'organizzazione otterrebbe una di queste:
- una rete di classe A (a / 8 in termini CIDR, con maschera di rete 255.0.0.0)
- una rete di classe B (a / 16 in termini CIDR, con maschera di rete 255.255.0.0)
- una rete di classe C (a / 24 in termini CIDR, con maschera di rete 255.255.255.0)
Tutte queste classi sono state allocate da intervalli fissi. La classe A conteneva tutti gli indirizzi in cui la prima cifra era compresa tra 1 e 126, la classe B era compresa tra 128 e 191 e la classe C tra 192 e 223. Il routing tra organizzazioni includeva tutto questo nei codici.
Nei giorni di classe in cui un'organizzazione avrebbe avuto bisogno, ad esempio, di 4000 indirizzi, c'erano due opzioni: dare loro 16 blocchi di classe C (16 x 256 = 4096 indirizzi) o dare loro un blocco di classe B (65536 indirizzi). A causa delle dimensioni codificate, i 16 blocchi di classe C separati dovrebbero essere instradati separatamente. Così tanti hanno ottenuto un blocco di classe B, contenente molti più indirizzi di quanti ne abbiano effettivamente bisogno. Molte grandi organizzazioni otterrebbero un blocco di classe A (16.777.216 indirizzi) anche quando fossero necessarie solo poche centinaia di migliaia. Questo ha sprecato molti indirizzi.
CIDR ha rimosso queste limitazioni. Le classi A, B e C non esistono più (dal ± 1993) e il routing tra organizzazioni può avvenire su qualsiasi lunghezza di prefisso (anche se di solito non è accettato qualcosa di più piccolo di un / 24 per impedire che molti piccoli blocchi aumentino la dimensione delle tabelle di routing ). Quindi da allora è stato possibile instradare blocchi di dimensioni diverse e allocarli da una qualsiasi delle parti di classi ABC precedenti dello spazio degli indirizzi. Un'organizzazione che necessita di 4000 indirizzi potrebbe ottenere un / 20, che è 4096 indirizzi.
Sottorete significa dividere il blocco di indirizzi allocato in blocchi più piccoli. I blocchi più piccoli possono quindi essere configurati su reti fisiche ecc. Non crea magicamente più indirizzi. Significa solo che dividi la tua allocazione in base a come vuoi usarla.
Ciò che ha creato più indirizzi è stato Masquerading, meglio noto come NAT (Network Address Translation). Con NAT un dispositivo con un unico indirizzo pubblico fornisce connettività per un'intera rete con indirizzi privati (interni) dietro di essa. Ogni dispositivo sulla rete locale pensa che sia connesso a Internet, anche quando non lo è. Il router NAT esaminerà il traffico in uscita e sostituirà l'indirizzo privato del dispositivo locale con il proprio indirizzo pubblico, fingendo di essere la fonte del pacchetto (motivo per cui era anche noto come mascherato). Ricorda quali traduzioni ha fatto in modo che per eventuali risposte che ritornano possa riportare l'indirizzo privato originale del dispositivo locale. Questo è generalmente considerato un trucco, ma ha funzionato e ha permesso a molti dispositivi di inviare traffico a Internet utilizzando meno indirizzi pubblici.
È possibile avere più dispositivi NAT uno dietro l'altro. Questo viene fatto ad esempio dagli ISP che non hanno abbastanza indirizzi IPv4 pubblici. L'ISP ha alcuni enormi router NAT che hanno una manciata di indirizzi IPv4 pubblici. I clienti vengono quindi collegati utilizzando una gamma speciale di indirizzi IPv4 ( 100.64.0.0/10
anche se a volte usano anche normali indirizzi privati) come indirizzo esterno. I clienti hanno quindi di nuovo un router NAT che utilizza quel singolo indirizzo che ottengono sul lato esterno ed eseguono NAT per connettere un'intera rete interna che utilizza normali indirizzi privati.
Tuttavia, ci sono alcuni aspetti negativi nell'avere router NAT:
- connessioni in entrata: i dispositivi dietro un router NAT possono effettuare connessioni in uscita solo perché non hanno il proprio indirizzo "reale" su cui accettare le connessioni in entrata
- port forwarding: questo di solito è meno problematico dal port forwarding, dove il NAT instradato dedica alcune porte UDP e / o TCP sul suo indirizzo pubblico a un dispositivo interno. Il router NAT può quindi inoltrare il traffico in entrata su tali porte a quel dispositivo interno. Ciò richiede all'utente di configurare tali inoltri sul router NAT
- carrier grade NAT: è dove l'ISP esegue NAT. Non sarai in grado di configurare alcun port forwarding, quindi accettare qualsiasi connessione in entrata diventa (bit torrent, avendo il tuo server VPN / web / mail / etc) impossibile
- condivisione del destino: il mondo esterno vede un solo dispositivo: quel router NAT. Pertanto, tutti i dispositivi dietro il router NAT condividono il suo destino. Se un dispositivo dietro il router NAT si comporta in modo errato è l'indirizzo del router NAT che finisce in una lista nera, bloccando così anche ogni altro dispositivo interno
- ridondanza: un router NAT deve ricordare quali dispositivi interni comunicano attraverso di esso in modo da poter inviare le risposte al dispositivo giusto. Pertanto, tutto il traffico di un insieme di utenti deve passare attraverso un singolo router NAT. I router normali non devono ricordare nulla, quindi è facile creare percorsi ridondanti. Con NAT non lo è.
- unico punto di errore: quando un router NAT si guasta dimentica tutte le comunicazioni esistenti, quindi tutte le connessioni esistenti attraverso di esso verranno interrotte
- i grandi router NAT centrali sono costosi
Come puoi vedere sia CIDR che NAT hanno prolungato la durata di IPv4 per molti anni. Ma il CIDR non può creare più indirizzi, ma alloca solo quelli esistenti in modo più efficiente. E NAT funziona, ma solo per il traffico in uscita e con maggiori rischi di prestazioni e stabilità e meno funzionalità rispetto ad avere indirizzi pubblici.
Ecco perché è stato inventato IPv6: molti indirizzi e indirizzi pubblici per ogni dispositivo. Quindi il tuo dispositivo (o il firewall di fronte) può decidere autonomamente quali connessioni in entrata vuole accettare. Se vuoi eseguire il tuo server di posta che è possibile, e se non vuoi che nessuno dall'esterno si connetta a te: anche questo è possibile :) IPv6 ti restituisce le opzioni che avevi prima di introdurre NAT, e sei libero di usarli se vuoi.
255.255.255.0
ecc. Ciò di cui si parla qui è qualcos'altro: il mascheramento, meglio noto come NAT (Network Address Translation).