Perché gli indirizzi IPv4 si stanno esaurendo?


59

Capisco che stiamo esaurendo (o già esaurendo?) Gli indirizzi IPv4, ma non capisco davvero perché. In questo momento, ogni casa ha il proprio indirizzo IPv4 (assegnato dinamicamente, ma ognuno ha un indirizzo). Perché una città (ad esempio) non può avere un solo indirizzo IPv4 e tutte le case di questa città dovrebbero trovarsi su una rete privata di quella città? Quindi questa città sarebbe in grado di assegnare indirizzi dalla gamma 0.0.0.1alla 255.255.255.254.

Sono sicuro che la mia comprensione sia in qualche modo sbagliata altrimenti gli indirizzi IPv4 non si esaurirebbero. Cosa c'è che non va nella mia comprensione?


24
Quindi come si fa a distinguere tra due case nella città successiva quando si desidera connettersi a una casa in particolare?
Chrylis

12
Non puoi usare un indirizzo “specifico per città” per distinguere una casa singola in quella città da un'altra casa in quella città.
GrGreau

3
Domanda correlata su Server Fault .
Kasperd,

11
Alan Campbell - in IPv4, l'indirizzo MAC (indirizzo di livello 2) non passerà oltre il segmento di rete locale. Ogni volta che un pacchetto passa attraverso un router (dispositivo Layer-3), tutti i livelli di protocollo sotto IP vengono scartati e ricreati. Non c'è posto per l'indirizzo MAC nell'intestazione IPv4.
telcoM,

2
Nota che la tua "soluzione" non impedisce agli indirizzi IPv4 di "esaurirsi", è solo un modo per gestirlo.
Frank Hopkins,

Risposte:


150

La carenza di indirizzi IPv4

Secondo Vint Cerf (il padre dell'IP), la dimensione dell'indirizzo IPv4 a 32 bit è stata scelta arbitrariamente. L'IP è stato un esperimento di collaborazione tra governo e università e l'attuale Internet pubblico non è mai stato immaginato. Il paradigma IP era che ogni dispositivo collegato avrebbe avuto un indirizzo IP univoco (tutti i pacchetti inviati tra dispositivi IP sarebbero collegati end-to-end dall'indirizzo IP di origine all'indirizzo IP di destinazione) e molti protocolli che utilizzano IP dipendono da ciascun dispositivo avere un indirizzo IP univoco.

Supponendo di poter utilizzare ogni possibile indirizzo IPv4 *, ci sono solo 4.294.967.296 possibili indirizzi IPv4, ma (a settembre 2018) l'attuale popolazione mondiale è 7.648.290.361. Come puoi vedere, non ci sono abbastanza indirizzi IPv4 possibili per ogni persona per averne anche uno, ma molte persone hanno un computer, una stampante, un telefono cellulare, un tablet, una console di gioco, una smart TV, ecc., Ognuno richiede un indirizzo IP e che non tocca nemmeno le esigenze aziendali per gli indirizzi IP. Siamo anche sulla cuspide dell'IoT (Internet of Things), dove ogni dispositivo ha bisogno di un indirizzo IP: lampadine, termostati, termometri, manometri e sistemi di irrigazione, sensori di allarme, elettrodomestici, veicoli, apriporta da garage, sistemi di intrattenimento, collari per animali domestici e chissà cos'altro.


* Esistono blocchi di indirizzi IPv4 che non possono essere utilizzati per l'indirizzamento host. Ad esempio, multicast ha un blocco di 268.435.456 indirizzi che non possono essere utilizzati per l'indirizzamento dell'host. IANA mantiene il registro degli indirizzi per scopi speciali IPv4 IANA su https://www.iana.org/assignments/iana-ipv4-special-registry/iana-ipv4-special-registry.xhtml per documentare tutti i blocchi di indirizzi speciali e i loro scopi .


IANA (Internet Assigned Numbers Authority) ha esaurito i blocchi di indirizzi IPv4 da assegnare ai RIR (Registri Internet regionali) da assegnare nelle rispettive regioni e ora i RIR hanno esaurito gli indirizzi IPv4 da assegnare in ciascuna regione. Gli ISP (provider di servizi Internet) e le aziende che desiderano o necessitano di indirizzi IPv4 non possono più ottenere gli indirizzi IPv4 dai loro RIR e ora devono provare ad acquistare indirizzi IPv4 da aziende che potrebbero avere extra (poiché la carenza di indirizzi IPv4 aumenta, il prezzo degli indirizzi IPv4 salire).

Anche se tutti gli indirizzi IPv4 riservati a scopi speciali e che non possono essere utilizzati per l'indirizzamento host fossero resi disponibili per l'uso, resteremmo nella stessa posizione perché semplicemente non ci sono abbastanza indirizzi IPv4 a causa delle dimensioni limitate degli indirizzi IPv4.

Riduzione della carenza di indirizzi IPv4

IANA e i RIR avrebbero esaurito gli indirizzi IPv4 molti anni prima di loro se IANA e IETF (Internet Engineering Task Force) non avessero adottato mitigazioni per la carenza di indirizzi IPv4. Una mitigazione importante è stata la deprecazione delle classi di rete IPv4 a favore del CIDR (Classless Inter-Domain Routing). L'indirizzamento di classe consente solo tre dimensioni di rete assegnate (16.777.216, 65.536 o 256 indirizzi host totali per rete), il che significa che molti indirizzi vengono sprecati (un'azienda che necessita solo di 300 indirizzi host dovrebbe essere allocata a una rete di classe che ha 65.536 host possibili indirizzi, sprecando oltre il 99% degli indirizzi nella classe della rete),

Di gran lunga, la mitigazione che ha avuto il maggiore impatto sull'estensione della vita di IPv4 è l'uso dell'indirizzamento privato e una variante di NAT (Network Address Translation) chiamata NAPT (Network Address Port Translation), che è ciò che la maggior parte delle persone intende quando fare riferimento a NAT o PAT (PAT è un termine specifico del fornitore per NAPT). Sfortunatamente, NAPT è una brutta soluzione che rompe il paradigma IP end-to-end e che rompe i protocolli che dipendono dall'indirizzamento IP univoco, richiedendo soluzioni ancora più brutte.

NAT / NAPT

Il concetto di NAT è piuttosto semplice: sostituisce uno o entrambi gli indirizzi IPv4 di origine e di destinazione in un'intestazione del pacchetto mentre il pacchetto passa attraverso il dispositivo NAT. In pratica, richiede il calcolo perché l'intestazione IPv4 ha un campo calcolato per verificare l'integrità dell'intestazione IPv4 e qualsiasi modifica apportata all'intestazione IPv4 richiede il ricalcolo del campo e alcuni protocolli di trasporto nel payload del pacchetto hanno il proprio calcolo campi che devono essere ricalcolati, utilizzando le risorse di calcolo nel dispositivo NAT che potrebbero essere utilizzate per l'inoltro dei pacchetti.

In NAT di base, il dispositivo NAT ha un pool di indirizzi IPv4 che utilizza per sostituire gli indirizzi IPv4 di origine delle intestazioni dei pacchetti per i pacchetti IPv4 inviati da una rete interna a una rete esterna e mantiene una tabella di traduzione per tradurre indirizzi IPv4 di destinazione del traffico che ritorna dalla rete esterna per riconsegnare i pacchetti agli host corretti sulla rete interna. Ciò richiede anche risorse sul dispositivo NAT per creare e gestire la tabella di traduzione ed eseguire ricerche nella tabella. Questo utilizzo delle risorse può rallentare l'inoltro dei pacchetti poiché le risorse utilizzate da NAT sono ricavate dalle risorse che potrebbero essere utilizzate per l'inoltro dei pacchetti.

NAPT amplia ulteriormente il NAT di base traducendo anche gli indirizzi del protocollo di trasporto (porte) per TCP e UDP e gli ID query per ICMP. Traducendo anche gli indirizzi del livello di trasporto, NAPT consente l'uso di un singolo indirizzo IPv4 esterno per molti indirizzi IPv4 host interni. NAPT richiede ancora più risorse rispetto al NAT di base perché richiede una tabella separata per ciascun protocollo del livello di trasporto e deve anche eseguire i calcoli di integrità per i protocolli di trasporto.

L'uso dell'indirizzamento IPv4 privato, che può essere riutilizzato su più reti (potresti aver notato che la maggior parte delle reti domestiche / residenziali utilizza la stessa rete 192.168.1.0/24, che si trova in uno degli intervalli di indirizzi IPv4 privati ​​allocati IANA) , insieme a NAPT, consente agli utenti aziendali e domestici di utilizzare un unico indirizzo esterno (pubblico) per una grande rete interna (indirizzata a privati). Ciò consente di risparmiare molti, molti indirizzi IPv4 (più volte il numero totale di possibili indirizzi IPv4) e ha prolungato la durata di IPv4 ben oltre il punto in cui sarebbe crollato senza NAPT. NAPT ha alcuni gravi inconvenienti:

  • NAPT rompe il paradigma IP end-to-end e funziona solo con TCP, UDP e ICMP, infrangendo altri protocolli di trasporto. Esistono anche protocolli a livello di applicazione che utilizzano TCP o UDP che sono interrotti da NAPT, anche se TCP e UDP funzionano nominalmente con NAPT. Altre mitigazioni, ad esempio STUN / TURN, possono essere disponibili per alcuni protocolli a livello di applicazione, ma possono aggiungere costi e complessità.
  • NAPT è molto dispendioso in termini di risorse, rallentando l'inoltro dei pacchetti rispetto a ciò che è possibile senza utilizzare alcuna forma di NAT. Alcuni fornitori aggiungono hardware dedicato per mitigare la necessità di rubare risorse dall'inoltro dei pacchetti, ma ciò comporta costi aggiuntivi, dimensioni, complessità e consumo di energia.
  • Quando si utilizza NAPT, il traffico avviato dall'esterno della rete NAPT non può essere recapitato alla rete interna perché non è presente alcuna voce di traduzione nella tabella di traduzione, che viene aggiunta dal traffico avviato internamente. Il singolo indirizzo esterno (pubblico) è configurato sul dispositivo NAT e si presume che qualsiasi pacchetto con quell'indirizzo IPv4 di destinazione e nessuna voce per l'indirizzo IPv4 di origine nella tabella di traduzione per il protocollo di trasporto sia per il dispositivo NAPT, non la rete interna. C'è una mitigazione, chiamata Port Forwarding, per questo problema.
  • Il Port Forwarding configura sostanzialmente, manualmente, una voce permanente in una tabella di traduzione per consentire il traffico avviato dall'esterno che è destinato a un particolare protocollo di trasporto e indirizzo per il protocollo da consegnare a un particolare host interno. Ciò ha lo svantaggio di consentire a un solo host interno di essere la destinazione per un determinato protocollo e indirizzo di trasporto. Ad esempio, se nella rete interna sono presenti più server Web, solo uno dei server Web può essere esposto sulla porta TCP 80 (impostazione predefinita per i server Web).
  • Poiché la carenza di indirizzi IPv4 è così grave, gli ISP (provider di servizi Internet) stanno esaurendo gli indirizzi pubblici da assegnare ai propri clienti. Gli ISP non possono più ottenere più indirizzi pubblici, quindi hanno adottato alcune mitigazioni che colpiscono particolarmente gli utenti domestici / residenziali. Gli ISP vogliono riservare il loro prezioso pool di indirizzi pubblici per i loro clienti aziendali che sono disposti a pagare per il privilegio di ottenere indirizzi pubblici. Per fare ciò, gli ISP stanno ora iniziando ad assegnare indirizzi privati ​​o condivisi ai loro clienti domestici / residenziali e gli ISP usano NAPT sui propri router per facilitare l'uso di più indirizzi privati ​​o condivisi su un singolo indirizzo pubblico. Ciò crea una situazione in cui una rete domestica / residenziale si trova dietro due traduzioni NAPT (ISP NAPT al cliente NAPT),
  • Molte persone commettono l'errore di equiparare NAPT e sicurezza perché gli host interni non possono essere indirizzati direttamente dall'esterno. Questo è un falso senso di sicurezza. Poiché un firewall che collega una rete a Internet pubblica è un posto conveniente per eseguire NAPT, ciò confonde semplicemente la situazione. Crea una percezione pericolosa che quel NAPT, di per sé, sia il firewall e un firewall reale non sia necessario. La sicurezza della rete viene dai firewall, che bloccano per impostazione predefinita tutto il traffico avviato dall'esterno, consentendo solo il traffico che è esplicitamente configurato per consentire, eventualmente effettuando un'ispezione approfondita del contenuto del pacchetto per eliminare i payload di pacchetti pericolosi. Ciò che alcune persone non riescono a capire è che, senza un firewall, in hardware o software, all'esterno o integrato nel dispositivo NAPT, per proteggere il dispositivo NAPT, il dispositivo NAPT stesso è vulnerabile. Se il dispositivo NAPT è compromesso, esso e, per estensione, un utente malintenzionato, ha pieno accesso alla rete interna indirizzata privatamente. I pacchetti avviati all'esterno che non corrispondono a una tabella di traduzione sono destinati al dispositivo NAPT stesso, poiché è il dispositivo che viene effettivamente indirizzato con l'indirizzo esterno, quindi il dispositivo NAPT può essere attaccato direttamente.

La soluzione alla carenza di indirizzi IPv4

L'IETF ha previsto la carenza di indirizzi IPv4 e ha creato la soluzione: IPv6, che utilizza indirizzi a 128 bit, il che significa che ci sono 340.282.366.920.938.463.463.374.607.431.768.211.456 possibili indirizzi IPv6. Il numero quasi inimmaginabile di indirizzi IPv6 elimina la necessità di NAPT (IPv6 non ha standard NAT, come IPv4, e il NAT RFC sperimentale IPv6 proibisce specificamente NAPT), ripristinando il paradigma IP end-to-end originale. Le mitigazioni della carenza di indirizzi IPv4 hanno lo scopo di prolungare la durata di IPv4 fino a quando IPv6 è onnipresente, a quel punto IPv4 dovrebbe svanire.

Gli umani non possono veramente comprendere numeri delle dimensioni utilizzate per IPv6. Ad esempio, una rete IPv6 standard utilizza 64 bit per ciascuna rete e porzioni host dell'indirizzo di rete. Sono 18.446.744.073.709.551.616 possibili reti IPv6 standard / 64 e lo stesso (enorme) numero di indirizzi host per ciascuna di tali reti. Per cercare di capire un numero così grande, considera gli strumenti che scansionano tutti i possibili indirizzi su una rete. Se un tale strumento potesse scansionare 1.000.000 di indirizzi al secondo (improbabile), occorrerebbero più di 584.542 anni per eseguire la scansione su una singola rete / 64 IPv6. Attualmente, solo 1/8 dello spazio degli indirizzi IPv6 totale è assegnato agli indirizzi IPv6 globali, che raggiunge 2.305.843.009.213.693.952 reti IPv6 / 64 standard e se la popolazione mondiale è di 21 miliardi nell'anno 2100 (un numero un po 'realistico), ognuno di questi 21 miliardi di persone potrebbe avere 109.802.048 reti IPv6 / 64 standard, ogni rete con 18.446.744.073.709.551.616 possibili indirizzi host. Sfortunatamente, la carenza di indirizzi IPv4 (decenni) ha una radicata conservazione degli indirizzi nelle persone, che molte persone semplicemente non riescono a lasciarla andare, e provano ad applicarla a IPv6, che è inutile e in realtà dannoso. IPv6 è in realtà progettato per sprecare indirizzi.

L'IETF ha anche avuto il vantaggio del senno di poi, e ha migliorato l'IP (in IPv6) rimuovendo le funzionalità di IPv4 che non funzionavano bene, migliorando alcune funzionalità di IPv4 e aggiungendo funzionalità che IPv4 non aveva, creando un nuovo IP migliorato . Poiché IPv6 è un protocollo completamente separato da IPv4, può essere eseguito in parallelo con IPv4 poiché la transizione viene effettuata da IPv4 a IPv6. Gli host e i dispositivi di rete possono eseguire contemporaneamente IPv4 e IPv6 sulla stessa interfaccia (dual stack) e ciascuno è invisibile all'altro; non vi sono interferenze tra i due protocolli.

Il problema con IPv6 è che in realtà è un protocollo completamente diverso che è incompatibile con l'onnipresente IPv4 e che le attenuazioni della carenza di indirizzi IPv4 sono viste da molte persone come "abbastanza buone". Il risultato è che sono state oltre 20 anni da quando l'IPv6 è stato standardizzato e proprio ora stiamo ottenendo una reale trazione nell'uso dell'IPv6 (Google riporta, a settembre 2018, l'adozione IPv6 in tutto il mondo di oltre il 20% e il tasso di adozione IPv6 negli Stati Uniti è oltre il 35%). Il motivo per cui stiamo finalmente passando a IPv6 è che semplicemente non ci sono più indirizzi IPv4 inutilizzati da assegnare.

Ci sono altri ostacoli, tutti parte della cultura IPv4, che sono semplicemente difficili da guardare per le persone. Molte persone hanno anche paura dell'IPv6, essendo cresciute e sentendosi a proprio agio con IPv4, le verruche e tutto il resto. Ad esempio, gli indirizzi IPv6 sembrano essere grandi e brutti rispetto agli indirizzi IPv4 e questo sembra scoraggiare molte persone. La realtà è che IPv6 è spesso più semplice e flessibile di IPv4, specialmente per l'indirizzamento, e le lezioni apprese in IPv4 sono state applicate a IPv6 sin dall'inizio.


10
Questo sommario è così bello, che secondo me è uno dei migliori testi su questo argomento su Internet! Spiegato in un linguaggio di facile comprensione con una reale intenzione di aiutare effettivamente qualcuno a capirlo. Grazie mille Ron, chiaramente hai una buona comprensione di tutto questo. Dalla tua risposta sembra che la mia idea di utilizzare un IP per molte case venga effettivamente utilizzata. Ma chiaramente ha problemi, con NAT, come hai spiegato. Se molte case hanno un solo IP, ad esempio non possono ospitare siti Web separati. Immagino che questo approccio sarebbe valido solo per le persone che navigano in Internet senza hosting
Loreno,

14
@Loreno, questo è fondamentalmente uno dei documenti che ho creato per gli scout interessati a conoscere l'ingegneria di rete. Lo scoutismo ha abbracciato lo STEM (Scienza, Tecnologia, Ingegneria e Matematica) e terrò una conferenza per gli scout nella mia zona.
Ron Maupin

7
Ho creato un account qui per valutare questo (e aumentare + 🌟 la domanda in modo che io possa tornare su di esso).
Oliphaunt,

6
Questa limitazione a 128 bit potrebbe in realtà essere una buona idea a lungo termine: xkcd.com/865 :)
Kolmar,

5
Propongo umilmente che chiunque sia a favore di NAPT di livello CGN / Carrier sia costretto a scrivere prima il codice NAT-punch-through del videogioco per una raccolta di router domestici degli anni 2000.
mbrig,

31

La risposta di Ron Maupin offre una brillante panoramica della carenza di IPv4, ma vorrei affrontare questa parte della tua domanda:

Perché una città (ad esempio) non può avere un solo indirizzo IP e tutte le case di questa città dovrebbero trovarsi su una rete privata di quella città? Quindi questa città sarebbe in grado di assegnare indirizzi nell'intervallo da 0.0.0.1 a 255.255.255.254.

A prima vista, questo è esattamente il modo in cui funziona "NAT" (o, più specificamente, "mascheramento dell'indirizzo IP"): viene creata una rete privata che guarda a Internet esterno come un singolo host e instrada il traffico internamente verso molti utenti diversi. Ma ci sono alcuni limiti importanti che hai trascurato nel tuo esempio:

  • Gli utenti all'interno devono comunque essere in grado di rivolgersi a Internet esterno; se assegni l'indirizzo 151.101.1.69 a un utente interno sulla tua rete, non sarai in grado di accedere a networkengineering.stackexchange.com, perché quello è l'indirizzo in cui è ospitato. Quindi, in pratica, è possibile utilizzare solo indirizzi interni riservati a questo uso .
  • Meno ovviamente, gli host all'esterno hanno bisogno di un modo per trasmettere il traffico agli utenti all'interno, anche se stanno solo navigando sul web. Questo perché le connessioni IP non sono come i tunnel: l'invio di un pacchetto a un server Web non riserva un cavo per la conversazione, ma chiede semplicemente al server di rispedire indietro alcuni pacchetti. Se il server web sta semplicemente inviando le sue risposte a un indirizzo pubblico, qualcosa deve tenere traccia di quale computer interno lo ha effettivamente richiesto. Se più persone sulla rete interna accedono allo stesso server Web, l'unico modo per tenere traccia è assegnare a ogni connessione un numero di porta dinamico univoco a cui inviare le risposte.

Esistono circa 18 milioni di indirizzi IPv4 per uso privato, ma solo 65536 numeri di porta. In realtà non hai bisogno di una porta unica per ogni connessione, perché puoi avere una tabella di ricerca che include anche l'indirizzo remoto, ma c'è ancora un limite a quanto puoi scalare senza problemi.

Detto questo, NAT è davvero uno dei maggiori motivi per cui la rete IPv4 non è completamente crollata a causa della carenza di indirizzi. L'assegnazione di un indirizzo IP a ciascuna famiglia o ufficio e l'emissione di un dispositivo per eseguire NAT, consente di collegare molti più dispositivi di quanti ne consentirebbe la progettazione originale di IPv4. Per ridimensionare ulteriormente, viene utilizzato un NAT di livello carrier , in cui un ISP ha meno indirizzi pubblici rispetto alle famiglie connesse, possibilmente utilizzando due livelli di NAT per gestire il routing dei pacchetti verso la loro eventuale destinazione.

Alla fine, spremere ogni possibile percorso fuori dai pochi indirizzi rimanenti è solo il supporto vitale per IPv4, e ad un certo punto, ogni indirizzo sarà riservato per uso interno, il volto pubblico di una rete NAT o l'indirizzo pubblico di un server che accetta connessioni indesiderate.


13

In questo momento, ogni casa ha il suo indirizzo IP. Perché una città (ad esempio) non può avere un solo indirizzo IP e tutte le case di questa città dovrebbero trovarsi su una rete privata di quella città?

Esattamente questo è già stato fatto da molti fornitori di servizi Internet dalla fine degli anni '90.

Negli anni '90 c'erano diverse ragioni (non la carenza di IPv4) per farlo. Tuttavia, nel 2012 il fornitore di servizi Internet in cui sono cliente ha iniziato a farlo perché non c'erano più abbastanza indirizzi IPv4:

Il mio provider utilizza "DS-Lite", il che significa che i nuovi clienti ottengono un intervallo di indirizzi IPv6 globali (assegnati dinamicamente) e hanno solo un indirizzo IPv4 privato mentre lo descrivi.

Altri fornitori di servizi Internet usano "CGNAT" ciò che è esattamente ciò che descrivi (senza IPv6).

Cosa c'è che non va nella mia comprensione?

Devi vedere cosa non è possibile usando NAT:

Se vuoi far funzionare un server devi sicuramente avere un indirizzo IP univoco. E tieni presente che alcuni dispositivi a cui puoi accedere dallo smartphone sono "server".

È stata inoltre effettuata una ricerca condotta da Facebook Inc. che ha dimostrato che la velocità di connessione è influenzata quando più clienti condividono un indirizzo IP.

E c'è un altro problema:

A causa dei numeri di porta, il numero di connessioni che un indirizzo IP può stabilire con un determinato server contemporaneamente è limitato a circa 60000.

Ho visto pagine di streaming video che hanno aperto 10 connessioni contemporaneamente. 6000 persone utilizzano la stessa pagina e viene raggiunto il limite di 60000.

E 60000 è il limite teorico; il limite reale è inferiore.

Quindi questa città sarebbe in grado di assegnare indirizzi nell'intervallo da 0.0.0.1 a 255.255.255.254.

Questo sicuramente non funzionerebbe:

Supponiamo di voler accedere a questo sito Web (networkengineering.stackexchange.com). Quindi dovrai stabilire una connessione a 151.101.129.69.

Se all'interno della rete locale della città fosse presente un computer con l'indirizzo 151.101.129.69, probabilmente non funzionerebbe una connessione a "networkengineering.stackexchange.com" perché non è chiaro quale dei due computer con lo stesso indirizzo IP sia: Quello all'interno della rete cittadina o quello esterno alla rete?

Ciò significa che la rete di tutta la città deve sapere che 151.101.129.69 è un indirizzo esterno a quella rete.

Pertanto, è possibile utilizzare solo indirizzi non utilizzati in Internet in tutto il mondo.

A proposito:

Anche in una rete privata che non è connessa a Internet non possiamo usare l'intera gamma 0.0.0.1-255.255.255.254:

In tali reti possiamo usare indirizzi come 151.101.129.69.

Tuttavia, le gamme 0, 127 e 224-255 non possono essere utilizzate perché queste gamme sono gestite appositamente da quasi tutti i sistemi operativi e dispositivi. Quindi nessun sistema operativo comune consentirà ad un computer di avere l'indirizzo 127.10.11.12 per esempio.


Piccola correzione, le 3 gamme di reti private sono 10.0.0.0/8 (quindi 10.0.0.0-10.255.255.255), 172.16.0.0/12 (172.16.0.0 - 172.31.255.255) e 192.168.0.0/16 (192.168.0.0- 192.168.255.255), con ancora meno indirizzi disponibili per l'assegnazione a causa degli indirizzi speciali di rete / trasmissione in base alla modalità di subnet di tali intervalli, a partire da 2 senza subnet e altrimenti da 2 per subnet.
htmlcoderexe,

@htmlcoderexe Se il tuo commento riguarda l'ultima parte della mia risposta: ho modificato la mia risposta per chiarire cosa si intendesse per "rete privata" in questa parte. Se una rete non è connessa a Internet (o utilizza un server proxy basato su HTTP) non vi è alcun motivo per cui l'indirizzo 151.101.129.69 (ad esempio) non possa essere utilizzato per un computer locale. Gli intervalli 0, 127 e 224-255 non possono tuttavia essere utilizzati.
Martin Rosenau,

È molto più chiaro in questo modo, scusate il malinteso
htmlcoderexe,

0

Vale anche la pena notare che molti degli IP IPv4 sono di proprietà di società di cloud hosting o rivenditori di proxy e sono stati fortemente contaminati. Chiunque noleggi proxy ha sicuramente avuto problemi a causa di un indirizzo IP contaminato.

Mentre gli indirizzi IPv4 si esauriranno, ci sono ancora più che sufficienti per andare in giro e puoi ancora acquistarne blocchi (entro il 1000), per pochi dollari ciascuno.


3
ROTFL. Pochi dollari sarebbero circa 14-15 + una commissione per il broker di indirizzi. A / 24 (e ne hai bisogno per poterlo instradare su Internet) è di circa $ 5.000.
Jens Link,

1
Ho detto che sono venduti in quantità di "1000" per pochi dollari ciascuno. Ma l'ultima volta che ho visto il costo è stato qualche anno fa. Noleggio personalmente i proxy, che costano circa $ 1-5 al mese a seconda della quantità e della qualità. I proxy Virgin con IP inutilizzati costano circa $ 15 per 1 al mese, ma qty può offrirti sconti importanti. Ecco i prezzi attuali per i blocchi: arin.net/fees/fee_schedule.html
McFlySoHigh

3
Non sono sicuro di cosa intendi per "contaminato" qui.
IMSoP

1
Abusato da persone che gestiscono bot farm per una serie di motivi, data mining, web scraping, creazione di account in blocco, acquisto di articoli "limit per cliente", fondamentalmente se noleggi proxy errati che sono stati pesantemente abusati ti colpiranno con difficoltà molto elevate , captcha in più passaggi e recaptcha, anche per una semplice ricerca su google.com. Gli IP, compresi interi blocchi di IP, sono spesso vietati dai principali siti, punti di social media, ecc., Rendendoli inutilizzabili. Quindi per contaminato intendo impossibile da usare. Questo è il motivo per cui il costo del noleggio di proxy vergini è 5-10 volte il prezzo di un proxy privato. Proxy condivisi = più economico.
McFlySoHigh

1
Limeproxies.com, ad esempio, ha gli IP vergini più economici là fuori, limeproxies.com/pricing.php - tuttavia sono altamente restrittivi sul modo in cui li usi, insistendo sulla whitelist di ogni dominio / IP a cui ti connetterai. Inoltre, non ti consentono di autorizzare siti specifici come Nike, Ticketmaster, ecc. Per questo devi acquistare IP certificati "Nike.com", con un prezzo elevato.
McFlySoHigh

0

Ci sono alcune ragioni oggettive e alcune basate sull'opinione, e ovviamente la ragione più importante - il denaro - per questo.

Innanzitutto, l'IP è progettato per essere end-to-end con host con indirizzi univoci. Ciò significa sostanzialmente - in teoria - che ogni dispositivo (server, pc, telefono) deve avere il proprio indirizzo IP individuale.

Ci sono 4 miliardi di indirizzi disponibili, che in linea di principio sarebbero sufficienti per tutti poiché, sebbene ci siano quasi il doppio del numero di persone sul pianeta, la stragrande maggioranza sta lottando per avere abbastanza da mangiare e non può comunque permettersi un computer nella loro vita . Tuttavia, tra la minoranza che può permettersi , è più simile a 15-20 dispositivi pro capite sempre online, tra cui alcune telecamere, un frigorifero, illuminazione e riscaldamento telecomandabili e ... il tuo tostapane . Che, per un motivo a mia insaputa, deve essere collegato a Internet.
Non è che l'Internet delle cose sia davvero qualcosa di necessario, ma è stato commercializzato con successo e ampiamente adottato nell'ultimo decennio, quindi è una realtà e quindi un realeproblema. Inoltre, un numero considerevole di indirizzi viene sprecato per buoni motivi tecnici e un numero enorme di indirizzi viene sprecato per nessun motivo (tornerò più avanti).

In pratica, c'è quella cosa chiamata NAT che fa esattamente (o quasi) ciò che suggerisci. Tecnicamente viola i principi di progettazione dell'IP, che non è tuttavia un grosso problema. Tuttavia, mentre NAT funziona bene ed è effettivamente una buona cosa in termini di rispetto, ha i suoi limiti (in particolare, in teoria può solo estendere il numero di indirizzi di un fattore al massimo di 65535, e in pratica molto meno di quello) lì è un forte desiderio di estinguere il NAT. Il più urgente è il fatto che NAT oscuri la relazione 1: 1 tra indirizzo e dispositivo. Che in realtà è una buona cosa perché oh diamine, in realtà non lo vuoi, ma non è così buono per alcune persone che hanno voce in capitolo (come le forze dell'ordine). Un altro motivo è che NAT (che di solito è anche firewall) rende alcune applicazioni più difficili. In particolare, un host dietro NAT che parla con un altro dietro NAT è problematico (non impossibile, solo più difficile da implementare di quanto assolutamente necessario).

Ora, per un'impresa "tipica" (o altra organizzazione) con alcune persone sedute in cubicoli e che comunicano in una rete aziendale o tramite VPN, e possibilmente con una sorta di accesso a Internet, sarebbe perfettamente logico avere ad esempio un indirizzo IP per piano e NAT tutti attraverso. Non solo sarebbe molto più economico, ma lo renderebbe anche molto meno ovvio per un osservatore esterno che è chi. Inoltre, renderebbe molto più ovvio l'amministratore di rete. Entrambi sono una buona cosa. Purtroppo, la realtà è che diverse grandi aziende e università statunitensi hanno riservato enormi gamme di indirizzi IP proprio in modo che ogni macchina che avrebbero potuto avere il proprio indirizzo individuale. Chiedi il perché? Non saprei dire.

Il motivo più importante per cui ci stiamo esaurendo è la forte motivazione a promuovere l'IPv6. Sebbene IPv6 non solo rimuova alcuni problemi e porti alcune (sebbene poche) funzionalità desiderabili, aggiunge anche un overhead misurabile sul filo (specialmente se sono coinvolti diversi strati come IP-over-PPPoE-over-ATM come nel caso di molti connessioni Internet domestiche) e i clienti pagano per la larghezza di banda misurata in byte al secondo o pagano per il volume per byte. Quindi ... in entrambi i casi allontanarsi da IPv4 è molto desiderabile perché come fornitore hai bisogno di meno backbone, oppure puoi addebitare di più ai tuoi clienti per le stesse cose.
Il che ha portato alla promozione attiva della crisi, dando indirizzi come caramelle (fino a quando quasi nessuno è rimasto). Ricordo che, non molto tempo fa, un paio d'anni, avresti ottenuto qualcosa come 5 indirizzi proprio così quando hai noleggiato un server da $ 50.


Quali difficoltà ci sarebbero con un ISP che utilizza una parte dello spazio degli indirizzi IPv4 per il bridging di IPv4-iPv6 e dice che se il dispositivo IPv4 di un cliente emette una richiesta DNS per un indirizzo che ha un indirizzo IPv6 pubblico (ma non IPv4) assegnare un indirizzo IPv4 "locale" all'indirizzo IPv6 remoto e tradurre le richieste di connessione con quell'indirizzo IPv4 locale in richieste di connessione con quello IPv6 remoto?
supercat

@supercat: Oltre ad essere un lavoro extra e non avere il vantaggio di aumentare il traffico, non vedo alcun motivo per cui questo non possa essere fatto molto facilmente. È solo il piagnucolio della carenza di IPv4 e quindi semplicemente vendere IPv6 è molto più redditizio. Un grande ronzio di marketing perché è qualcosa di nuovo (e non è nemmeno IPv5, è IPv6, quindi deve essere due volte migliore). Nessun lavoro extra, più traffico e niente più preoccupazioni riguardo ad altri elementi (come ad esempio la gestione degli indirizzi, basta tirare fuori una sottorete / 56 o / 64 che non cambia mai più, ed essere fatto). Inoltre, i router hanno bisogno di meno silicio, quindi diventano più economici ...
Damon,

2
Ero pronto a votare questo fino a quando non sono arrivato a frasi come "buono per alcune persone che hanno voce in capitolo (come le forze dell'ordine)" e "la crisi viene attivamente promossa, dando indirizzi come caramelle" che fanno sembrare che sia tutto una cospirazione. L'era della distribuzione di indirizzi come le caramelle era all'inizio di Internet, prima che si rendesse conto della carenza; da allora c'è stato uno sforzo attivo per recuperare i blocchi di "classe A" e dividerli usando CIDR, proprio perché abbiamo bisogno degli indirizzi per effettuare più connessioni punto-punto.
IMSoP

@IMSop: la tua opinione potrebbe essere diversa, ma l'applicazione della legge è sicuramente uno dei motivi principali di IPv6. Il NAT a livello di provider che esiste in alcuni paesi rende l'identificazione degli individui (o meglio dei loro singoli dispositivi) molto, molto più difficile e comporta molti più problemi di manutenzione sul lato provider. Non è un grosso problema per i dispositivi 5 o 10 nella tua casa se "NAT" significa passare attraverso la tua connessione IP individuale poiché appartengono comunque a una (o poche) persone. Ma è sicuramente un problema in alcune aree. Non ho parlato di cospirazione da parte mia. Solo che c'è un forte interesse commerciale.
Damon,

2
@Damon Certo, NAT rende la vita più difficile per le forze dell'ordine; il punto è che rende anche la vita più difficile per tutti gli altri . Ad esempio, il trasferimento di file peer-to-peer - circa quanto più lontano possibile dalle forze dell'ordine o dagli interessi commerciali - deve avere una complessità in più per gestire le connessioni NAT e CGNAT. Non ho mai visto una fonte attendibile che affermi che le forze dell'ordine stanno facendo pressioni su chiunque si converta in IPv6, e semmai sospetto che gli interessi commerciali stiano minimizzando il problema, perché implementare IPv6 sarebbe costoso.
IMSoP

-4

Loreno:

1) La tua domanda intuitiva "Perché una città (ad esempio) non può avere un solo indirizzo IP e tutte le case in questa città dovrebbero essere solo su una rete privata di quella città? Quindi questa città sarebbe in grado di assegnare indirizzi dalla distanza Da 0.0.0.1 a 255.255.255.254. " effettivamente funzionerebbe se gli indirizzi IP fossero amministrati correttamente. Sfortunatamente, Internet è iniziato senza una visione per un'infrastruttura di comunicazione mondiale e poi è cresciuto così rapidamente che le azioni correttive non sono state in grado di risolvere i problemi. - Così come hanno detto.

2) Alcuni anni fa, il nostro team si è avventurato in questo problema a causa della curiosità basata sul nostro background di telefonia. Abbiamo trovato una soluzione, chiamata EzIP (fonetica per Easy IPv4) in grado di espandere ciascun indirizzo pubblico IPv4 di 256 milioni (milioni) di volte (molto più di quanto si sperasse). Abbiamo presentato una proposta all'IETF:

https://tools.ietf.org/html/draft-chen-ati-adaptive-ipv4-address-space-03

Inoltre, una presentazione grafica può trasmettere l'idea più rapidamente:

https://www.avinta.com/phoenix-1/home/EzIPenhancedInternet.pdf

3) Lo schema EzIP non solo risolve il problema della carenza di indirizzi IP, ma offre anche la possibilità di migliorare le prestazioni di Internet. Si prega di dare un'occhiata ai documenti sopra e quindi possiamo discutere ulteriormente.

Abe (14-10-2018 22:27)


3
Al momento non sono disponibili software e hardware. Probabilmente non ci sarà mai a causa di difetti fondamentali visibili ad esempio nelle discussioni nei forum OpenWTR
Josef

5
Temo che la tua "soluzione" non risolva molto. Richiede tutte le modifiche alla rete e alle applicazioni della distribuzione IPv6, ma è molto più limitato, quindi non è applicabile per la distribuzione generale. E se è per applicazioni specifiche, puoi farlo a livello di applicazione senza richiedere alcuna modifica all'infrastruttura.
Jcaron,

2
EzIP sembra difficile da implementare come IPv6, perché dovremmo usare EzIP invece di usare solo IPv6? Il problema con IPv6 è che tutto il software esistente (e talvolta l'hardware) deve essere aggiornato, come risolve EzIP? Forse è un po 'più semplice perché la maggior parte dei router non deve essere aggiornata, ma lascia comunque tutti i server.
user253751

2
A prescindere dai suoi meriti, questa proposta è in ritardo di circa 25 anni: chiunque investe nel supporto per questo schema di indirizzamento e routing potrebbe invece investire in uno dei molti collaudati meccanismi di tunneling e transizione IPv6.
IMSoP,

2
Anche uno schema proposto da qualcuno che recentemente è stato in grado di installare OpenWRT per la prima volta è discutibile.
Josef,

-5

Non stiamo esaurendo gli indirizzi IPv4.

Qual è il costo di un indirizzo IPv4 oggi? Sembra circa $ 18: http://ipv4marketgroup.com/ipv4-pricing/

Un singolo IPv4 è molto più economico di un barile di petrolio. Ho bisogno di 8 nuovi barili di petrolio all'anno per la mia auto. Non ho bisogno di 8 nuovi indirizzi IPv4 ogni anno - in effetti, un singolo indirizzo IPv4 è sufficiente per me, e attualmente non gestisco alcun server, quindi posso condividere perfettamente l'indirizzo tramite NAT di livello carrier.

Infatti, anche se l'olio (in quantità tipiche consumate) è molto, molto più costoso degli indirizzi IPv4 (in quantità tipiche necessarie), non stiamo ancora esaurendo il petrolio.

Se acquisti un indirizzo IPv4, lo avrai per sempre (o fino a quando i credenti IPv6 avranno sostituito IPv4 come protocollo preferito). Con un tasso di sconto del 5%, è di $ 0,9 all'anno. Pago circa $ 300 all'anno per la mia connettività mobile (che è dietro NAT di grado carrier) e circa $ 300 all'anno per la mia connettività fissa (che non è dietro un NAT di grado carrier). Il costo annuale di un indirizzo IPv4 è pari allo 0,3% del costo annuale della connettività Internet tramite servizi fissi o mobili.

Esistono tecnologie come TLS e proxy HTTP che consentono di eseguire molti server dietro un singolo indirizzo IPv4, identificato dai loro nomi di dominio. Pertanto, ad esempio, l'Internet of Things (IoT) può comportare perfettamente la distribuzione di miliardi di server, molto più di quello che abbiamo indirizzi IPv4. La maggior parte dei nuovi protocolli non crittografati oggi sono basati su HTTP; la maggior parte dei nuovi protocolli crittografati oggi sono basati su TLS. Entrambi hanno i mezzi per specificare il nome DNS del server, quindi un proxy può funzionare e nascondere più server dietro un singolo indirizzo IPv4. Protocolli come SSH possono eseguire server dietro porte non standard e OpenSSH ha un "comando proxy", quindi un proxy SOCKS / HTTP CONNECT può anche supportare più macchine su cui puoi SSH dietro un singolo indirizzo IPv4. Pagherei $ 18 extra per la comodità di non dover specificare una porta non standard o un comando proxy nella mia configurazione OpenSSH? Non lo farei.

Tecniche come i mapping indipendenti dall'endpoint consentono la perforazione di UDP e TCP in grado di impostare una connessione point-to-point tra due host dietro un NAT, solo bisogno di un server esterno per determinare quale porta TCP / UDP la NAT ha assegnato per ciascun endpoint. NAT non interrompe la connettività end-to-end, richiede solo un server di supporto separato per determinare il numero di porta assegnato dal NAT. Il mondo avrà bisogno di 4 miliardi di tali server helper? No non lo fa.

IPv6 è una religione. Molte persone trovano difficile credere che Internet di domani possa funzionare senza IPv6, proprio come trovano difficile credere che una società possa lavorare senza religione.


6
Gran parte della popolazione mondiale non è ancora stata connessa a Internet e sono ancora in fase di sviluppo nuove applicazioni che richiedono indirizzi pubblici.
Teun Vink

11
Tutte le cose che hai descritto sono modi per aggirare il fatto che stiamo esaurendo gli indirizzi IPv4. Se queste soluzioni alternative sono migliori o peggiori del passaggio a IPv6 è un dibattito diverso, ma se non fossimo a corto di indirizzi, non avremmo bisogno di nessuna di queste cose.
IMSoP

12
Caro Dio, è così che la gente pensa davvero? Hai davvero provato a far funzionare correttamente le cose con NAT, o in particolare con CGNAT? CGNAT significa in particolare che non è possibile eseguire un server, punto. Sembra che tu stia dicendo "non mi ha influenzato personalmente, quindi il problema non esiste". E "continuiamo a usare tutte queste soluzioni estremamente dolorose per condividere gli indirizzi invece di avere solo più indirizzi con cui iniziare (tra l'altro non sono dolorosi perché non ho mai dovuto usarli)".
user253751

7
Ad esempio, NAT è il motivo per cui molte persone non possono usare SCTP. Vorrei sicuramente provare SCTP, ma non posso farlo perché il mio router di casa non capisce SCTP. Se non dovessi usare NAT per evitare la crisi IPv4, il mio router non avrebbe bisogno di capirlo e potrei semplicemente usarlo!
user253751

8
Oh, a proposito, è più o meno un'asta - le persone che sono disposte a pagare di più otterranno i loro indirizzi e le persone che non lo sono, no. Quel ragazzo che vive in Africa che guadagna $ 10 al mese? Sì, beh con questo atteggiamento non sarà mai e poi mai e poi mai connesso a Internet - non perché non può far passare i fili, ma perché hai votato contro di lasciargli avere un indirizzo. Pagare $ 18 per un numero di identificazione è ridicolo (a meno che non ci siano effettivamente 18 dollari di scartoffie coinvolte, che non c'è)
user253751
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.