Cos'è il tunneling? | Tunneling nella rete

Il tunneling è un modo per spostare i pacchetti da una rete all'altra. Il tunneling funziona tramite l'incapsulamento: avvolgere un pacchetto all'interno di un altro pacchetto.

Obiettivi di apprendimento

Dopo aver letto questo articolo sarai in grado di:

  • Definire il tunneling
  • Scoprire come funziona l'incapsulamento dei pacchetti
  • Esplorare gli usi dei tunnel di rete

Argomenti correlati


Vuoi saperne di più?

Abbonati a theNET, il riepilogo mensile di Cloudflare sulle tematiche più discusse in Internet.

Fai riferimento all'Informativa sulla privacy di Cloudflare per scoprire come raccogliamo ed elaboriamo i tuoi dati personali.

Copia link dell'articolo

Cos'è il tunneling?

Nel mondo reale, scavare un tunnel è un modo per attraversare terreni o confini che normalmente non potrebbero essere oltrepassati. Allo stesso modo, nelle reti, i tunnel sono un metodo per trasportare dati attraverso una rete utilizzando protocolli che non sono supportati da quella rete. Il tunneling funziona incapsulando i pacchetti, ovvero avvolgendo i pacchetti all'interno di altri pacchetti. I pacchetti sono piccoli pezzi di dati che possono essere riassemblati a destinazione in un file più grande.

Il tunneling viene spesso utilizzato nelle reti private virtuali (VPN). Può anche impostare connessioni efficienti e sicure tra le reti, abilitare l'utilizzo di protocolli di rete non supportati e, in alcuni casi, consentire agli utenti di aggirare i firewall.

Come funziona l'incapsulamento dei pacchetti?

I dati che viaggiano su una rete sono suddivisi in pacchetti. Un pacchetto tipico è composto da due parti: l'intestazione, che indica la destinazione del pacchetto e il protocollo utilizzato, e il payload, che è il contenuto effettivo del pacchetto.

Un pacchetto incapsulato è essenzialmente un pacchetto all'interno di un altro pacchetto. In un pacchetto incapsulato, l'intestazione e il payload del primo pacchetto vanno all'interno della sezione payload del pacchetto inglobante. Il pacchetto originale stesso diventa il payload.

Perché l'incapsulamento è utile?

Per raggiungere le loro destinazioni, tutti i pacchetti utilizzano protocolli di rete, ovvero metodi standardizzati di formattazione dei dati. Tuttavia, non tutte le reti supportano tutti i protocolli. Immagina che un'azienda voglia creare una rete WAN (Wide Area Network) che colleghi l'ufficio A e l'ufficio B. L'azienda utilizza il protocollo IPv6, che è l'ultima versione del protocollo Internet (IP), ma tra l'ufficio A e l'ufficio B esiste una rete che supporta solo IPv4. Incapsulando i propri pacchetti IPv6 all'interno di pacchetti IPv4, l'azienda può continuare a utilizzare IPv6 pur continuando a inviare dati direttamente tra i due uffici.

L'incapsulamento è utile anche per le connessioni di rete crittografate. La crittografia è il processo di codifica dei dati in modo tale che possano essere decodificati solo utilizzando una chiave crittografia segreta; il processo di annullamento della crittografia è detto decrittografia. Se un pacchetto è completamente crittografato, inclusa l'intestazione, i router di rete non saranno in grado di inoltrare il pacchetto alla sua destinazione poiché non dispongono della chiave e non possono vederne l'intestazione. Avvolgendo il pacchetto crittografato in un altro pacchetto non crittografato, il pacchetto può viaggiare attraverso le reti come al solito.

Cos'è un tunnel VPN?

Una VPN è una connessione sicura e crittografata su una rete condivisa pubblicamente. Il tunneling è il processo mediante il quale i pacchetti della VPN raggiungono la destinazione prevista, che in genere è una rete privata.

Molte VPN utilizzano la suite del protocollo IPSec. IPsec è un gruppo di protocolli che vengono eseguiti direttamente su IP a livello di rete. Il traffico di rete in un tunnel IPsec è completamente crittografato, ma viene decrittografato una volta raggiunta la rete o il dispositivo dell'utente. IPsec ha anche una modalità chiamata "modalità trasporto" che non crea un tunnel.

Un altro protocollo di uso comune per le VPN è il TLS (Transport Layer Security). Questo protocollo opera al livello 6 o al livello 7 del modello OSI a seconda di come viene interpretato il modello. TLS è talvolta chiamato SSL (Secure Sockets Layer), sebbene SSL si riferisca a un protocollo precedente che non è più in uso.

Cos'è lo split tunneling?

Di solito, quando un utente connette il proprio dispositivo a una VPN, tutto il traffico di rete passa attraverso il tunnel VPN. Lo split tunneling consente a una parte del traffico di uscire dal tunnel VPN. In sostanza, lo split tunneling consente ai dispositivi degli utenti di connettersi contemporaneamente a due reti, una pubblica e una privata.

Cos'è il tunneling GRE?

Generic Routing Encapsulation (GRE) è uno dei numerosi protocolli di tunneling. GRE incapsula i pacchetti di dati che utilizzano un protocollo di routing all'interno dei pacchetti di un altro protocollo. GRE è un modo per configurare una connessione point-to-point diretta attraverso una rete, allo scopo di semplificare le connessioni tra reti separate.

GRE aggiunge due intestazioni a ciascun pacchetto: l'intestazione GRE e un'intestazione IP. L'intestazione GRE indica il tipo Protocollo utilizzato dal pacchetto incapsulato. L'intestazione IP incapsula l'intestazione IP e il payload del pacchetto originale. Solo i router a ciascuna estremità del tunnel GRE faranno riferimento all'intestazione IP non GRE originale.

Cos'è IP-in-IP?

IP-in-IP è un protocollo di tunneling per incapsulare i pacchetti IP all'interno di altri pacchetti IP. IP-in-IP non crittografa i pacchetti e non viene utilizzato per le VPN. Il suo utilizzo principale è la creazione di percorsi di rete che normalmente non sarebbero disponibili.

Cos'è il tunneling SSH?

Il protocollo Secure Shell (SSH) configura connessioni crittografate tra client e server e può essere utilizzato anche per configurare un tunnel sicuro. SSH opera al livello 7 del modello OSI, il livello dell'applicazione. Al contrario, IPSec, IP-in-IP e GRE operano a livello di rete.

Quali sono gli altri protocolli di tunneling?

Oltre a GRE, IPsec, IP-in-IP e SSH, altri protocolli di tunneling includono:

  • Point-to-Point Tunneling Protocol (PPTP)
  • Secure Socket Tunneling Protocol (SSTP)
  • Layer 2 Tunneling Protocol (L2TP)
  • Virtual Extensible Local Area Network (VXLAN)

In che modo Cloudflare utilizza il tunneling?

Cloudflare Magic Transit protegge l'infrastruttura di rete locale, cloud e ibrida dagli attacchi DDoS e da altre minacce. Affinché Magic Transit funzioni, la rete Cloudflare deve essere connessa in modo sicuro alla rete interna del cliente. Cloudflare utilizza il tunneling GRE per formare queste connessioni. Grazie al tunneling GRE, Magic Transit è in grado di connettersi direttamente alle reti dei clienti Cloudflare in modo sicuro tramite la rete Internet pubblica.

Informazioni sul livello di rete