Quale è la differenza tra IPv4 e IPv6?

20 set 2021 7 min di lettura
Quale è la differenza tra IPv4 e IPv6?
Indice dei contenuti

Introduzione

Nell'era tecnologica di oggi, stiamo assistendo a un enorme balzo in avanti nell'uso di Internet e dei dispositivi di rete. Ogni casa ha un laptop, uno smartphone, un orologio digitale, un dispositivo IoT, un componente di automazione domestica e altri dispositivi connessi alla rete domestica o a Internet. I dispositivi comunicano tra loro attraverso vari protocolli di rete, TCP e IP sono i protocolli più utilizzati. Ogni dispositivo connesso alla rete deve avere un indirizzo IP che identifichi il dispositivo sulla rete.

Questo articolo spiega il protocollo Internet e le differenze tra IPv6 e IPv4.

Che cos'è l'IP (protocollo Internet)?

Essendo esseri umani, ci identifichiamo e comunichiamo tra di noi usando i nostri nomi. Allo stesso modo, nel mondo informatico, i dispositivi utilizzano gli indirizzi IP per identificarsi e interagire tra loro. Un linguaggio comune utilizzato da tutti i dispositivi informatici per comunicare tra loro è noto come protocollo. Simile ai linguaggi umani, il protocollo ha anche una serie di regole che formattano ed elaborano i dati.

Il protocollo Internet (IP) è un insieme di regole che specifica l'indirizzamento e l'instradamento dei dati tra computer. Viene utilizzato principalmente con i protocolli di trasporto di rete, come TCP e UDP.

Internet esiste oggi grazie a questo modello di indirizzamento unico. La IANA gestisce gli intervalli di indirizzi IP per reti/siti che si connettono a Internet. Tuttavia, se eseguiamo un'infrastruttura di rete locale isolata, possiamo assegnare i numeri in base alle nostre preferenze. Ora, entriamo nel nocciolo dell'architettura e della sua analisi comparativa.

IPv4

La prima versione principale di Internet Protocol (IP) è la versione 4 (IPv4). Utilizza uno schema di indirizzamento di rete a 32 bit che si suddivide ulteriormente in quattro numeri a 8 bit noti come ottetti. Ad esempio, google.com ha un indirizzo IP 141.251.36.46. Il formato è noto come notazione quadrupla punteggiata. Questi indirizzi IP possono essere configurati manualmente o ottenuti automaticamente tramite un server DHCP.

Per verificare lo stato live del dispositivo remoto, possiamo eseguire un sondaggio ICMP su quell'IP utilizzando il comando ping:

ping -c 1 google.com
PING google.com (142.251.36.46) 56(84) bytes of data.
64 bytes from ams11s12-in-f12.1e100.net (142.251.36.46): icmp_seq=1 ttl=116 time=237 ms

...

Gli indirizzi IP sono suddivisi in due parti, rete e indirizzi host per la creazione di sottoreti. I numeri di sottorete aiutano a decidere la rete e le parti host dell'IP. Inoltre, lo spazio IP disponibile è suddiviso in cinque diverse classi come indicato di seguito.

Classe indirizzoIntervalli IPMaschera di sottoreteNumero di retiNumero di host per rete
Classe Ada 1.0.0.0 a 126.0.0.0255.0.0.012616.777.214
Classe Bda 128.0.0.0 a 191.255.0.0255.255.0.016.28265.534
Classe Cda 192.0.0.0 a 223.255.255.0255.255.255.02.097.150254
Classe Dda 224.0.0.0 a 239.255.255.255Multicasting
Classe Eda 240.0.0.0 a 255.255.255.255Ricerca/Riservato/Sperimentale

Il calcolo della sottorete coinvolge alcune rubriche matematiche dietro lo schermo. Per facilitare il nostro calcolo, possiamo utilizzare strumenti come ipcalc o subnetcalc per il subnetting IPv4. I frammenti seguenti mostrano come utilizzare gli strumenti:

ipcalc 110.0.20.18/24
Address: 110.0.20.18 01101110.00000000.00010100. 00010010
Netmask: 255.255.255.0 = 24 11111111.11111111.11111111. 00000000
Wildcard: 0.0.0.255 00000000.00000000.00000000. 11111111
=>
Network: 110.0.20.0/24 01101110.00000000.00010100. 00000000
HostMin: 110.0.20.1 01101110.00000000.00010100. 00000001
HostMax: 110.0.20.254 01101110.00000000.00010100. 11111110
Broadcast: 110.0.20.255 01101110.00000000.00010100. 11111111
Hosts/Net: 254 Class A
subnetcalc 192.168.10.15/24
Address = 192.168.10.15
11000000 . 10101000 . 00001010 . 00001111
Network = 192.168.10.0 / 24
Netmask = 255.255.255.0
Broadcast = 192.168.10.255
Wildcard Mask = 0.0.0.255
Hosts Bits = 8
Max. Hosts = 254 (2^8 - 2)
Host Range = { 192.168.10.1 - 192.168.10.254 }
Properties =
- 192.168.10.15 is a HOST address in 192.168.10.0/24
- Class C
- Private
GeoIP Country = Unknown (??)
DNS Hostname = (Name or service not known)

Di solito, gli indirizzi IP vengono forniti alla macchina host finale e all'interfaccia del gateway del router.

Qui, il traffico dalla macchina A (10.235.64.58) colpisce l'interfaccia del gateway del router (10.235.64.57) sul lato sinistro del cloud Internet. Raggiunge il gateway di Google Server tramite il routing di Internet e infine al server di destinazione.

Per identificare l'IP dell'interfaccia di rete è possibile utilizzare comandi come ifconfig , hostname o ip.

ifconfig ens160
ens160: flags=4163<UP,BROADCAST,RUNNING,MULTICAST> mtu 1500
inet 10.235.64.58 netmask 255.255.255.252 broadcast 10.235.64.59
inet6 fe80::fc7f:d8da:a969:1c1d prefixlen 64 scopeid 0x20<link>
ether 00:0c:29:23:6f:30 txqueuelen 1000 (Ethernet)
RX packets 35607241 bytes 34540488400 (34.5 GB)
RX errors 0 dropped 12 overruns 0 frame 0
TX packets 24701952 bytes 15008379564 (15.0 GB)
TX errors 0 dropped 0 overruns 0 carrier 0 collisions 0
hostname -I
10.235.64.58

Esistono indirizzi IP di rete per scopi speciali come 0.0.0.0 o 127.0.0.1. Il primo è il percorso predefinito o percorso quad-zero, mentre il secondo è chiamato indirizzo di loopback.

Nel frammento di seguito, vedremo la tabella di routing IP del kernel con il percorso predefinito per quella rete. Il flag 'U' rappresenta che il percorso di rete è UP, mentre G significa che il percorso di rete è il gateway di rete.

netstat -rn | grep ens160
Kernel IP routing table
Destination Gateway Genmask Flags MSS Window irtt Iface
0.0.0.0 10.235.64.57 0.0.0.0 UG 0 0 0 ens160
10.235.64.56 0.0.0.0 255.255.255.252 U 0 0 0 ens160

Di solito, il datagramma IPv4 è costituito da un campo di intestazione con 20 byte, campo opzioni e campi dati con una lunghezza variabile.

IPv6

Internet Protocol versione 6 è la versione aggiornata di Internet Protocol (IP). La versione 6 del protocollo Internet ha lo scopo di sostituire la versione precedente (IPv4), che trasporta il 75% del traffico Internet totale a partire dal 2018 (Fonte: Google IPv6 Stats).

L'indirizzo IPv6 è di 128 bit (16 byte) e utilizza 32 cifre esadecimali, mentre queste cifre sono ulteriormente suddivise in otto gruppi di quattro cifre ciascuno per facilità di gestione.

Ci sono pochi passaggi di base coinvolti nella convenzione di denominazione IPv6.

Regola 1: tutte le lettere non fanno distinzione tra maiuscole e minuscole. Ad esempio, 'ab41' è uguale a 'AB41'

Regola 2: I campi successivi con '0' possono essere visualizzati come “::”, ma solo una volta in un indirizzamento

Regola 3: La rappresentazione degli zeri iniziali in un campo è facoltativa. Ad esempio, '001a' è uguale a '1a'

Ad esempio, prendiamo l'indirizzo IPv6, 45ab:0000:a179:0000:0000:c1c0:abcd:0876

Applica regola 1 => 45ab:0000:a179:0000:0000:c1c0:abcd:0876 Applica regola 2 => 45ab:0:a179:0:0:c1c0:abcd:876 Applica regola 3 => 45ab:0:a179 ::c1c0:abcd:876

Esistono tre tipi di indirizzi IPv6: Unicast, Multicast e Anycast. L'indirizzo unicast è la singola interfaccia di rete e i pacchetti consegnati a quell'interfaccia specifica. Inoltre, gli indirizzi unicast hanno livelli di ambito locale (link-local) e globale. L'indirizzo multicast è l'interfaccia di gruppo a cui vengono consegnati i pacchetti. L'indirizzo Anycast è l'interfaccia di gruppo e il pacchetto consegnato all'interfaccia più vicina.

Di seguito sono riportati alcuni indirizzi noti.

]::1/128Indirizzo di loopback
ff00::/8Indirizzi multicast
fe80::/10Indirizzi link-local
2001::/16Indirizzi unicast IPv6 regolari
2002::/166to4 indirizzi unicast
subnetcalc 2001:4860:4860::8888/64
Address = 2001:4860:4860::8888
2001 = 00100000 00000001
4860 = 01001000 01100000
4860 = 01001000 01100000
0000 = 00000000 00000000
0000 = 00000000 00000000
0000 = 00000000 00000000
0000 = 00000000 00000000
8888 = 10001000 10001000
Network = 2001:4860:4860:: / 64
Netmask = ffff:ffff:ffff:ffff::
Wildcard Mask = ::ffff:ffff:ffff:ffff
Hosts Bits = 64
Max. Hosts = 18446744073709551616 (2^64 - 1)
Host Range = { 2001:4860:4860::1 - 2001:4860:4860:0:ffff:ffff:ffff:ffff }
Properties =
- 2001:4860:4860::8888 is a HOST address in 2001:4860:4860::/64
- Global Unicast Properties:
+ Interface ID = 0000:0000:0000:8888
+ Sol. Node MC = ff02::1:ff00:8888
GeoIP Country = United States (US)
DNS Hostname = dns.google

Anche in questo caso, il pacchetto IPv6 ha sia intestazione che payload. La dimensione dell'intestazione è fissata a 40 byte, con l'indirizzo di origine e destinazione che occupa 32 byte.

Sebbene IPv6 abbia innumerevoli vantaggi, non può soppiantare IPv4. Entrambe le versioni del protocollo devono coesistere per un po' di tempo per una migrazione senza interruzioni. Pertanto, i fornitori di servizi offrono un sistema di supporto dual-stack che possiede un'interfaccia di rete in grado di comprendere sia i pacchetti IPv4 che IPv6.

Esistono pochi meccanismi di transizione intelligenti, ovvero tunneling IPv6, indirizzi IPv6 mappati IPv4, ecc. Il primo incapsula il pacchetto IPv6 in IPv4, mentre il secondo mappa gli indirizzi IPv6 su IPv4 nelle implementazioni dual-stack.

IPv4 vs IPv6 - Analisi comparativa rapida

CaratteristicheProtocollo Internet - Versione 4 [IPv4]Protocollo Internet - Versione 6 [IPv6]
Distribuzione e allocazione19811999
Lunghezza32 bit128 bit
Spazio degli indirizzi4.29 x 10^93,4 x 10^38
FormatoDecimale punteggiato / [10.235.64.56]Esadecimale / [2400::4]
Numero di ottetti416
Dimensione intestazioneVaria da 20 a 60 byte40 byte
ClassiCinque classi: Classe A, Classe B, Classe C, Classe D, Classe ENessuno
Funzioni di sicurezza / Autenticazione e crittografiaNon disponibileA disposizione
Verifica sommaA disposizioneNon disponibile
IPsecEsterno e opzionaleFunzionalità integrata
Conteggio del luppoloIndicato dal campo TTLIndicato dal campo Hoplimit
frammentazioneEseguito dal mittente e dai router di inoltroFatto solo dal mittente
Campi delle opzioniFornito nell'intestazione IPv4Non ci sono campi facoltativi, ma sono disponibili le intestazioni di estensione IPv6
MulticastIGMP gestisce l'appartenenza al gruppo multicastMLD sostituisce l'IGMP
Messaggio di trasmissioneA disposizioneNon disponibile. Viene utilizzato il multicast
Mappatura da IP a MACProtocollo di risoluzione dell'indirizzoProtocollo di rilevamento del vicino

Conclusione

Abbiamo esplorato le basi del protocollo Internet e delle sue versioni. Lungo la strada, l'articolo chiarisce lo schema di indirizzamento, il formato del pacchetto, il funzionamento di IPv4 e IPv6 con analisi comparativa. Sebbene IPv4 stia trasportando la maggior parte del traffico Internet oggi, IPv6 è il futuro del mondo delle reti.

Buy me a coffeeBuy me a coffee

Supportaci se ti piacciono i nostri contenuti. Grazie.

Successivamente, completa il checkout per l'accesso completo a Noviello.it.
Bentornato! Accesso eseguito correttamente.
Ti sei abbonato con successo a Noviello.it.
Successo! Il tuo account è completamente attivato, ora hai accesso a tutti i contenuti.
Operazione riuscita. Le tue informazioni di fatturazione sono state aggiornate.
La tua fatturazione non è stata aggiornata.