GNU/Linux >> Linux Esercitazione >  >> Linux

Cosa devi sapere su IPv6

Durante l'anno 1994, l'Internet Engineering Task Force (IETF) ha avviato lo sviluppo del protocollo Internet versione 6 (meglio noto come IPv6). Nel dicembre 1998, la prima bozza è diventata uno standard per l'IETF, che alla fine è stato ratificato come Internet Standard il 14 luglio 2017.

Il motivo principale per lo sviluppo di IPv6 è stato quello di superare il problema dell'esaurimento degli indirizzi IPv4. Tenendo presente questo problema, l'IETF ha anche ottimizzato il protocollo in senso generale.

Per comprendere la necessità di IPv6 e perché è il successore di IPv4, dovremo trattare brevemente IPv4.

IPv4

Implementato per la prima volta nel 1983 da Advanced Research Projects Agency Networks (ARPANET), IPv4 è ancora il protocollo instradato più utilizzato, nonostante il suo successore IPv6.

Ecco alcuni fatti su IPv4:

  • IPv4 utilizza uno spazio di indirizzi a 32 bit (2), il che significa che è possibile assegnare un totale di 4.294.967.296 indirizzi IP univoci agli host.
  • Esistono numerosi blocchi speciali riservati alle reti private (Classe A, B e C), circa 18 milioni di indirizzi e 270 milioni sono riservati agli indirizzi multicast.
  • IPv4 è scritto in una notazione decimale in cui ogni ottetto è separato da un punto (cioè, 1.2.3.4).
  • Internet Protocol Security (IPSec) è opzionale in IPv4 e la dimensione minima del pacchetto frammentato è 576 byte.
  • La traduzione degli indirizzi di rete (NAT) viene utilizzata per limitare ulteriormente l'esaurimento degli indirizzi IP.

IPv6

Con la rapida crescita dei dispositivi Internet, altrimenti noti come Internet of Things (IoT), in tutto il mondo, sono necessari più indirizzi IP per lo scambio di dati di questi dispositivi. Pensa a telefoni cellulari, smartwatch, frigoriferi, lavatrici, smart TV e altri articoli che richiedono un indirizzo IP. Tutti questi dispositivi sono oggigiorno connessi a Internet e identificati da un indirizzo IP univoco. In questa sezione ci concentreremo su IPv6, le sue caratteristiche e perché sarà lo standard del protocollo Internet.

Prima di entrare nei dettagli, ci sono alcune caratteristiche chiave che IPv6 incorpora:

  • IPv6 utilizza indirizzi a 128 bit (2), consentendo 3,4 x 10 indirizzi IP univoci. Ciò equivale a 340 trilioni di trilioni di trilioni di indirizzi IP.
  • IPv6 è scritto in notazione esadecimale, separato in 8 gruppi di 16 bit dai due punti, quindi (8 x 16 =128) bit in totale. Una rappresentazione dell'indirizzo IPv6 è simile a questa:

2001:db8:1234::f350:2256:f3dd/64

  • L'IPv6 può essere configurato manualmente, utilizzando la configurazione automatica dell'indirizzo senza stato (SLAAC) o DHCPv6.
  • IPv6 ha una dimensione minima del pacchetto di 1280 byte composta da un'intestazione di base fissa di 40 byte e 1240 byte di payload (dati utente).
  • IPv6 è supportato da molti sistemi operativi come Linux, macOS, Solaris, (gratuito, aperto e di rete) BSD e Windows.

Si noti che IPSec una volta è stato progettato per IPv6 come requisito obbligatorio. Oggi può essere utilizzato opzionalmente con IPv6. Vedere RFC 6434. IPSec fornisce l'autenticazione e la crittografia utilizzando Authentication Headers (AH) e Encapsulating Security Payload (ESP).

Indirizzi IPv6

Un indirizzo IPv6 viene scritto in notazione esadecimale separato dal simbolo dei due punti (:) come mostrato qui:

2001:0db8:1234:0000:0000:f350:2256:f3dd/64

Gli indirizzi di cui sopra potrebbero anche essere scritti come:

2001:db8:1234::f350:2256:f3dd/64

dove gli zeri consecutivi vengono eliminati e sostituiti da due due punti (::). È importante notare che se un indirizzo è costituito da più campi tutti zero e quegli zeri si trovano in parti diverse dell'IP, gli zeri più a sinistra sono quelli compressi.

Illustriamolo con un esempio:

Variante di indirizzo IPv6 Nota dell'indirizzo IPv6
IPv6 completamente scritto 2001:0db8:0000:0000:34f4:0000:0000:f3dd/64
IPv6 semplificato 2001:db8::34f4:0000:0000:f3dd/64
IPv6 ulteriormente semplificato 2001:db8::34f4:0:0:f3dd/64

Tuttavia, scrivere l'indirizzo IP come 2001:db8::34f4::f3dd/64 lo renderà non valido poiché il doppio e virgola può essere applicato solo una volta nell'indirizzo (tutti gli zeri più a sinistra).

L'indirizzo IPv6 è costituito principalmente da due segmenti a 64 bit in cui la parte superiore dei bit è classificata come parte di rete e i 64 bit inferiori sono classificati come ID client. La parte di rete è suddivisa in Global Unicast Address (GUA) e subnet ID. Queste informazioni possono essere semplificate dalla seguente immagine: 

Vale la pena notare che IPv6 non ha alcuna nozione di subnet mask come ha IPv4. Piuttosto, viene utilizzata una notazione CIDR (Classless Inter-Domain Routing). Esempi sono:

2001:581:f3d1:241f::/64
2001:db8:1234::/48
2a01:1b0::/32
2000::/3

Dal punto di vista dell'utente finale/sito finale, la parte di rete (o ID di rete) viene fornita dal provider di servizi Internet (ISP) ed è statica. Se il tuo ISP ti aggrega un prefisso /48, gli indirizzi a 16 bit potrebbero essere utilizzati per creare 216 (65535) sottoreti, in cui ciascuna sottorete sarà in grado di supportare 26418.446.744.073.709.551.616 o 1.844674407×10¹⁹ indirizzi IP.

Ora che conosciamo le basi di IPv6, vediamo quali tipi di indirizzi esistono là fuori.

Tipi di indirizzi IPv6

Nell'ecosistema IPv6 esistono i seguenti tipi di indirizzo:

  • Unicast
  • Multicast
  • Qualsiasi

Unicast

Il tipo di indirizzo Unicast è probabilmente il più importante. Si distingue per questi indirizzi di sottotipo:

  • Indirizzi univoci globali: Raggiungibile a livello globale. Esempi:

2001:581:f3d1:241f::/64

2a01:388:3d11:f124::/64

  • Indirizzi link-locali: Richiesto su ogni interfaccia abilitata per IPv6, ma i pacchetti non possono uscire o entrare nell'interfaccia. Questo indirizzo è utilizzato principalmente dalle applicazioni software e inizia con:

fe80::/10

  • Indirizzi locali del sito: Deprecato, vedi RFC 3879.
  • Indirizzo di loopback: Questo è l'indirizzo che conosciamo come 127.0.0.1/8 in IPv4, ed è scritto come segue in IPv6:

::1/128

  • Indirizzi locali univoci: Instradabile solo nell'ambito dell'organizzazione. Questi indirizzi non sono instradabili a livello globale. Gli intervalli privati ​​equivalenti a IPv4 sono 10.0.0.0/8, 192.168.1.0/24 e così via. Gli indirizzi locali univoci in IPv6 iniziano con:

fc00::/7

Multicast

Il multicast è la tecnica utilizzata per inviare un pacchetto da una sorgente (o da più sorgenti) a più destinazioni (ricevitori). Nella sua forma più semplice, un flusso multicast è il seguente. Innanzitutto, un host invia un pacchetto ICMPv6 (richiesta host) al gruppo multicast del router. Quindi, un router risponde a questa richiesta e invia un pacchetto Router Advertisement (RA) al client insieme ai parametri di configurazione:

L'intervallo di indirizzi multicast è ff00::/8. I primi 8 bit sono sempre ff (in binario 1111 1111).

Anycast

L'indirizzo Anycast si comporta in modo simile all'indirizzo Multicast, ad eccezione di quanto segue. Un pacchetto inviato da un client va a una singola destinazione selezionata e non all'intero gruppo identificato dallo stesso indirizzo di destinazione. L'endpoint di ricezione viene selezionato in base alla metrica di instradamento meno costosa. Il router utilizza il percorso multiplo a costo uguale per eseguire questa operazione:

Conclusione

Alla fine, utilizzeremo tutti IPv6. Prima capirai come funziona questo spazio di indirizzi e come implementare IPv6 nelle tue reti, meglio è.


Linux
  1. Quello che probabilmente non sapevi su sudo

  2. Che cos'è l'hosting VPS? Tutto quello che devi sapere sui server privati ​​virtuali

  3. Cosa dovresti sapere prima di abilitare IPv6

  4. Che cos'è una VPN? Tutto quello che devi sapere sulle VPN

  5. Server Ubuntu Cosa devi sapere

Tutto quello che devi sapere su Linux Ubuntu Server

Tutto ciò che devi sapere su Linux OpenSSH Server

Tutto ciò che devi sapere sul sistema operativo Linux Zorin

Tutto ciò che devi sapere sul sistema operativo Peppermint Linux

Tutto ciò che devi sapere su Linux Mint Distro

Tutto ciò che devi sapere sugli inode in Linux