Perché abbiamo bisogno di IPv6?


44

Sarà una specie di domanda da principiante ma non sono del tutto sicuro del motivo per cui abbiamo davvero bisogno di IPv6. AFAIK, la storia è la seguente:

Ai vecchi tempi, quando i computer non erano abbondanti, gli indirizzi IP a 32 bit erano sufficienti per tutti. In questi momenti, la subnet mask era implicita. Quindi il numero di computer è aumentato e 32 bit hanno iniziato a diventare insufficienti.

Quindi la subnet mask ha iniziato a diventare esplicita. In sostanza, la dimensione di un indirizzo IP è aumentata.

La mia domanda è: qual è il rovescio della medaglia nel continuare l'indirizzamento con le subnet mask? Ad esempio, quando diventano insufficienti, non possiamo continuare a utilizzare "subnet-subnet mask" ecc.?

Capisco che consuma più spazio rispetto all'IPv4 originale (e forse non molto diverso dall'uso dell'IPv6) ma le subnet mask esplicite non sono una soluzione sufficiente? In caso contrario, perché sono una soluzione insufficiente?


13
Attenzione: sembra che qui il termine "maschera di sottorete" sia usato nel modo sbagliato. Una subnet mask è cioè 255.255.255.0ecc. Ciò di cui si parla qui è qualcos'altro: il mascheramento, meglio noto come NAT (Network Address Translation).
Sander Steffann,

@SanderSteffann In realtà sì. In seguito mi sono reso conto che non avevo usato la terminologia corretta. Non esitate a modificare la domanda. Non sono del tutto sicuro di quali termini siano corretti da usare. (Soprattutto la parte "subnet-subnet mask")
Utku,

È stato un po 'troppo, quindi ho inserito una risposta :)
Sander Steffann,

Nessuno menziona quanto sia più semplice IPv6 rispetto alla rete.
Jacob Evans,

1
Uno dei problemi con qualsiasi domanda su IPv6 è che troverai un sacco di fanatismo quasi religioso. Di solito rispondo alle domande IPv6 solo con commenti, per impedire agli zeloti di danneggiare il mio punteggio di reputazione. La verità è che IPv6 potrebbe prendere piede, oppure no. Ha troppe carenze per renderlo una scommessa sicura e ci sono altre opzioni là fuori.
Kevin Keane, l'

Risposte:


80

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/10anche 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.


1
Wow grazie alla risposta. Grazie. Per quanto riguarda il NAT di grado carrier: Hai dichiarato che il bit torrent sarebbe finito. Ma non riuscivo a capire perché sarebbe successo. Più precisamente, penso che avrebbe dovuto finire anche oggi se fosse così. Permettetemi di spiegare: suppongo che molti utenti domestici utilizzino un router NAT e questo mi fa pensare che un "leecher" non può fare sanguisuga da un utente che utilizza un router NAT, poiché il leecher non conosce l'indirizzo del computer per connettersi. Dal momento che il leecher non sarebbe stato in grado di trovare una seminatrice, ciò significherebbe la fine anche se bit torrent anche oggi. Potresti chiarire questo per me?
Utku,

5
L'utente può configurare i port forwarding sui router domestici per consentire le connessioni in entrata oppure il client BitTorrent locale utilizza un protocollo speciale per fare in modo che il router NAT installi automaticamente i port forwarding. Un router NAT di livello carrier non consentirà tali port forwarding. BitTorrent funziona ancora senza connessioni in entrata, ma non altrettanto buono.
Sander Steffann,

4
@Utku, la risposta glib è "no". vale a dire, è corretto che non è possibile stabilire connessioni in entrata a molti nodi bittorrent NAT. detto ciò, quel nodo può stabilire connessioni con altri nodi della rete e, poiché i dati scorrono entrambe le direzioni su una connessione, possono comunque contribuire alla rete propagando blocchi che uno dei loro colleghi ha ad altri.
Rob Starling,

3
Su bittorrent e NAT: vedi superuser.com/questions/104462/… . Riepilogo: connessioni in entrata sulle spalle della connessione in uscita; alcuni client utilizzano un sistema di inoltro per consentire connessioni in entrata da un nuovo utente attraverso le connessioni con un peer condiviso. Questo è meno efficiente e otterrai velocità più basse. È impossibile se tutti i peer si trovano dietro un NAT senza port forwarding.
Timbo,

2
sul destino di condivisione, un aneddoto relativo: techcrunch.com/2007/01/01/wikipedia-bans-qatar
njzk2

15

Internet Protocol (IP) è stato progettato per fornire connettività end-to-end.

I 32 bit di un indirizzo IPv4 consentono solo circa 4,3 miliardi di indirizzi univoci. Quindi devi sottrarre un sacco di indirizzi per cose come il multicast e c'è molta matematica che mostra che non puoi mai usare la piena capacità di una sottorete, quindi ci sono molti indirizzi sprecati.

Ci sono circa il doppio degli umani rispetto agli indirizzi IPv4 utilizzabili e molti di questi umani consumano più indirizzi IP. Questo non tocca nemmeno le esigenze aziendali per gli indirizzi IP.

L'uso di NAT per soddisfare la fame dell'indirizzo IP rompe il paradigma di connessione end-to-end IP. Diventa difficile esporre abbastanza indirizzi IP pubblici. Pensa per un minuto cosa faresti tu, come utente domestico con un solo indirizzo IP pubblico, se desideri consentire a più dispositivi utilizzando lo stesso protocollo e la stessa porta di trasporto, ad esempio due server Web, che per convenzione utilizzano la porta TCP 80, per essere accessibile da Internet pubblico. È possibile eseguire il port forwarding della porta TCP 80 sul proprio indirizzo IP pubblico a un indirizzo IP privato, ma per quanto riguarda l'altro server Web? Questo scenario richiederà di saltare attraverso alcuni cerchi che un tipico utente domestico non è in grado di gestire. Ora, pensa all'Internet of Things(IoT) in cui potresti avere centinaia o migliaia di dispositivi (lampadine, termostati, termometri, manometri e sistemi di irrigazione, sensori di allarme, elettrodomestici, apriporta per garage, sistemi di intrattenimento, collari per animali domestici e chissà cos'altro) , alcuni o tutti, che vogliono utilizzare gli stessi protocolli e porte di trasporto specifici. Ora, pensa alle aziende con indirizzo IP che devono fornire connettività a clienti, fornitori e partner.

L'IP è stato progettato per la connettività end-to-end, quindi, indipendentemente da quanti host diversi utilizzino lo stesso protocollo di trasporto e la stessa porta, vengono identificati in modo univoco dal loro indirizzo IP. NAT rompe questo e limita l'IP in modi in cui non è mai stato inteso essere limitato. NAT è stato semplicemente creato come un modo per prolungare la durata di IPv4 fino all'adozione della prossima versione IP (IPv6).

IPv6 fornisce abbastanza indirizzi pubblici per ripristinare il paradigma IP originale. IPv6 attualmente ha 1/8 degli indirizzi IPv6 nell'intero blocco di indirizzi IPv6 riservato agli indirizzi IPv6 instradabili a livello globale. Supponendo che ci siano 17 miliardi di persone sulla terra nell'anno 2100 (non irrealistico), l'attuale intervallo di indirizzi IPv6 globale (1/8 del blocco di indirizzi IPv6) fornisce oltre 2000/48 reti per ognuno di quei 17 miliardi di persone. Ogni rete / 48 è di 65.536 / 64 sottoreti con 18.446.744.073.709.551.616 indirizzi per sottorete.


Quindi NAT è essenzialmente una "patch" giusto? Una patch che viola un principio essenziale di Internet.
Utku,

7
NAT può essere chiamato patch, ma molti l'hanno definito un hack, o peggio.
Ron Maupin

7
La tua seconda frase è importante! NAT crea un'asimmetria tra persone che possono eseguire server e persone che non possono (facilmente). Questa è una fondamentale violazione dei principi democratici fondamentali di Internet. Indipendentemente dal fatto che qualcuno si preoccupi o meno, è una domanda diversa, ovviamente. Alla maggior parte delle persone che siedono dietro un NAT non importa. Molti fornitori di contenuti si preoccupano di mettere quante più persone possibile dietro un NAT, perché in questo modo possono controllare ciò che (la maggior parte) di Internet vede.
Jörg W Mittag,

1
@ JörgWMittag, " Alla maggior parte delle persone che siedono dietro un NAT non importa." Fino a quando il loro nuovo brillante gioco multiplayer, l'applicazione o il giocattolo non funzioneranno come si aspettano, allora sicuramente gliene importa. "Molti fornitori di contenuti si preoccupano di mettere quante più persone possibile dietro un NAT, perché in questo modo possono controllare ciò che ... vede Internet." NAT non richiede il controllo dell'accesso. Può essere fatto altrettanto facilmente (se non di più) senza NAT. NAT rende molte cose più difficili per i fornitori di contenuti / servizi e per le persone che conosco che gestiscono tali reti, non conosco chi usa NAT se possono evitarlo.
YLearn

9

In poche parole, non ci sono più indirizzi IPv4 disponibili. Tutti (o quasi) gli indirizzi IPv4 disponibili sono stati assegnati. L'esplosione di dispositivi IP, laptop, telefoni, tablet, telecamere, dispositivi di sicurezza, ecc. Ecc., Ha esaurito tutto lo spazio degli indirizzi.


1
Questo non è del tutto vero, la stragrande maggioranza dello spazio è sprecata perché all'inizio non era sottorete bene. Ora le organizzazioni hanno una serie di indirizzi che non utilizzano come indirizzi pubblici ma per restituirli sarebbe necessario uno sforzo considerevole nel ristrutturare le loro reti.
JamesRyan,

7
Sì, molto spazio è sprecato. Ma resta il fatto che lo spazio disponibile è esaurito.
Ron Trunk,

1
@JamesRyan C'è anche l'intera gamma "Classe E" che potrebbe (in qualsiasi momento) essere aperta per l'assegnazione unicast generale. Ciò darebbe al mondo 16 più / 8 (circa 134 milioni di indirizzi in più). Ma allora cosa? Tutto ciò che farebbe sarebbe rimandare la "deplezione finale" di tutti gli indirizzi. Quindi, indipendentemente dal numero di indirizzi IPv4 che vengono recuperati o riallocati, l'esaurimento è inevitabile. IPv6 è la soluzione permanente.
Eddie,

3
@Eddie, in teoria , la gamma "Classe E" potrebbe essere aperta. In pratica, 34 anni di persone che presumono che l'intervallo sia "riservato, non in uso" significa che chiunque ottenga uno di questi indirizzi avrà una connettività limitata.
Segna il

1
@Mark Concordato. Il mio punto era semplicemente che ci sono sacche di spazio IPv4 che potremmo provare a usare per prolungarne la durata, ma perché preoccuparsi, IPv6 è inevitabile. (Io sicuramente non ero dicendo che dovremmo estendere la vita di IPv4) .
Eddie,

4

Innanzitutto la tecnica della maschera di sottorete variabile è diventata insufficiente. Ecco perché le persone hanno inventato la tecnica di traduzione dell'indirizzo di rete in cui è possibile utilizzare l'IP pubblico per mascherare più IP privati. Anche con questa tecnica, siamo quasi fuori dagli IP da allocare. Anche NAT infrange uno dei principi fondanti di Internet: il principio end to end.

Quindi la ragione principale per usare IPv6 è che tutti avranno a disposizione tutti gli IP pubblici di cui hanno bisogno e tutta la complessità dell'uso di NAT scomparirà.

IPv6 offre anche altre funzionalità che non approfondirò: sicurezza obbligatoria a livello IP, abilita la configurazione automatica dell'indirizzo Stateless, non è più necessario solo trasmettere il multicast e fornisce un'elaborazione più efficiente da parte dei router semplificando l'intestazione. Anche in questa era di dispositivi mobili ha esplicito supporto per la mobilità sotto forma di IPv6 mobile.

Per quanto riguarda la tua proposta di utilizzare subnet / subnet mask: non sembra fattibile poiché la sua implementazione spezzerebbe tutte le applicazioni esistenti e non è davvero elegante. Se devi cambiare le cose, perché non scegliere qualcosa di nuovo e ben pensato.


NAT non è stato inventato a causa della mancanza di indirizzi o della mancanza di sottoreti di lunghezza variabile. È diventato popolare semplicemente perché molti ISP avrebbero dovuto pagare di più per i servizi di "livello aziendale" con spazio IP assegnato.
Alnitak,

1

La principale organizzazione che distribuisce gli IP alle organizzazioni regionali è completamente esaurita. ARIN: l'organizzazione regionale negli Stati Uniti è stata esaurita negli ultimi mesi. L'unica organizzazione regionale che ha ancora un po 'di IP è AfriNIC.

Ci sono molte aziende / organizzazioni, come Ford, MIT, ecc. Che hanno gamme IP di Classe A complete. Quando li hanno acquisiti, nessuno pensava che saremmo finiti così in fretta.

Al momento, per acquistare gli IP, o aspetti che una società chiuda il mercato e lo acquisti sul mercato grigio, oppure provi ad acquistare IP inutilizzati da un'altra società.

Gli IP progettati per una regione non possono essere utilizzati in un'altra regione. Bene, possono, ma è altamente scoraggiato (geo-IP).

Al momento, molte aziende si stanno preparando per IPv6. Lo switch non è facile in quanto è molto costoso acquistare nuove apparecchiature che supportano IPv6 completo per coloro che dispongono di decine di migliaia di server.


2
Gli IP non sono in realtà "progettati per una regione", ma sono stati arbitrariamente assegnati a uno dei 5 RIR (che corrispondono approssimativamente ai cinque continenti). In realtà è abbastanza comune che i blocchi di IP vengano trasferiti (di solito, venduti) da un RIR che ne ha ancora un po '(oggi solo l'Africa ne ha lasciato) a un altro. GeoIP è solo un trucco, non qualcosa progettato nel protocollo IP.
Kevin Keane,
Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.