Il tunneling diviso consente agli utenti VPN di instradare il traffico da app o dispositivi specifici attraverso la VPN mentre il traffico proveniente da altre app e dispositivi viaggia attraverso la rete predefinita non VPN. Il tunneling diviso può essere utilizzato per diversi scopi, tra cui:
- Consentire l’uso normale di Internet e contemporaneamente accedere alle risorse disponibili solo per gli utenti VPN, come un server aziendale
- Impostazione di dispositivi specifici, come console di gioco o streaming media box, per utilizzare (o non utilizzare) la VPN senza influire su altri dispositivi sulla rete
- Invio di tutto il traffico di un dispositivo attraverso la VPN tranne quando si accede a contenuti o servizi che non consentono connessioni VPN, come MLB.tv o Netflix
- Invio di tutto il traffico tramite la VPN ad eccezione di contenuti e servizi che richiedono bassa latenza, come applicazioni VoIP e giochi online
- Instrada il traffico torrent solo attraverso la VPN, mentre tutto il traffico Internet passa alla rete predefinita
- Accedi alla VPN senza influire sulla tua connessione ad altri dispositivi sulla rete locale, come stampanti o Plex Media Server
La tua immaginazione è il limite al numero di applicazioni per il tunneling diviso. Bene, questo e il tuo hardware. Diversi tipi di tunneling diviso hanno requisiti tecnici diversi. Quello che puoi ottenere dipende fortemente dal tuo dispositivo, router wifi e servizio VPN.
Prima di iniziare, è importante rendersi conto che il tunneling diviso richiede alcune conoscenze tecniche avanzate e l’implementazione casuale può portare a rischi per la sicurezza. Se non configuri correttamente le tue impostazioni di split tunneling, il tuo ISP o una terza parte potrebbe accedere ad alcuni dei tuoi dati sensibili.
Tipi di tunneling diviso
Per gli utenti VPN tipici, esistono quattro tipi principali di tunneling diviso.
Il primo tipo è il più semplice ed è utile se è necessario accedere a risorse remote tramite una VPN mantenendo una normale connessione non VPN a Internet. Spiegheremo come farlo nei tutorial qui sotto.
Il secondo è per dispositivo. Ad esempio, se vuoi che la tua console di gioco si connetta a Internet senza una VPN, ma il tuo PC e smartphone si connettano con una VPN. Questo tipo di tunneling suddiviso viene in genere eseguito sul router wifi. Nel popolare firmware del router DD-WRT, questo è chiamato “routing basato su criteri”.
Il terzo tipo di tunneling diviso è per applicazione. Puoi impostare una lista nera o una lista bianca di app e servizi a cui vuoi connetterti alla VPN o non vuoi connetterti alla VPN, rispettivamente. Quest’ultimo è talvolta chiamato tunneling split “inverso”. Ad esempio, se si desidera che solo il traffico torrent passi attraverso la VPN, ma tutte le altre applicazioni come giochi e browser Web si colleghino a Internet senza una VPN, questo è il metodo che si desidera utilizzare. Il tunneling suddiviso per applicazione funziona solo su alcune VPN, sistemi operativi e firmware del router.
Il tipo finale di tunneling suddiviso ti consente di instradare il traffico in base alla sua destinazione piuttosto che alla sua fonte. Ad esempio, se si desidera instradare tutto il traffico attraverso la VPN ad eccezione di quello che viaggia verso Netflix o Hulu. Questo si chiama routing basato su IP ed è il tipo più difficile di tunneling diviso da realizzare. Richiede un router o un firewall con stato e, anche se lo possiedi, siti come Netflix hanno così tanti indirizzi IP che è difficile farlo funzionare in modo affidabile. Pertanto, in questo articolo non tratteremo il routing IP.
Non tutti i sistemi operativi supportano tutti i tipi di tunneling diviso. In effetti, gli utenti di Windows scopriranno che le loro opzioni sono fortemente limitate. I Mac non sono male, ma i router con firmware DD-WRT o Tomato offrono la massima versatilità. Sfortunatamente, sono anche i più complicati da configurare.
Come dividere il tunnel su MacOS
Innanzitutto, verifica con il tuo provider VPN per vedere se la loro app include la funzionalità di tunneling diviso integrata. Anche se non troppo comuni, alcuni provider come ExpressVPN offrono il tunneling split basato sull’applicazione. Con il Connessione per app nella app Mac di ExpressVPN, puoi creare una lista nera o una lista bianca di app da instradare attraverso la VPN.
Se la tua app VPN non ha il supporto integrato per il tunneling diviso, dovremo sporcarci le mani e fare le cose in modo manuale.
Avrai bisogno dei privilegi di amministratore superutente e di una connessione L2TP o PPTP esistente, nonché della sottorete di destinazione per lo spazio privato VPN.
- Vai a Preferenze di Sistema > Rete
- Nella barra laterale di sinistra, fai clic sulla tua connessione VPN e vai a Impostazioni avanzate > Opzioni
- Deseleziona la casella per Invia tutto il traffico tramite la connessione VPN
- Salva le modifiche e connettiti alla VPN
- Una volta connesso, vai a Applicazione > Utilità > terminale
- genere ifconfig nel terminale e premi Invio. Prendi nota dell’interfaccia utilizzata dalla VPN. Usando L2TP, probabilmente lo sarà ppp0
- Accedi come root. Un modo semplice per farlo è digitare sudo su nel terminale e autenticare con la password del Mac.
- Immettere il comando seguente, in sostituzione >SUBNET DI DESTINAZIONE< con la sottorete che si desidera instradare attraverso la VPN e >INTERFACCIA VPN< con l’interfaccia elencata nel passaggio precedente. route aggiungi -net >SUBNET DI DESTINAZIONE< -interfaccia >INTERFACCIA VPN<
Guarda anche: Il nostro elenco di provider VPN Mac consigliati.
Come dividere il tunnel su Windows
Windows è piuttosto limitato quando si tratta di dividere il tunneling. Non siamo in grado di dividere il tunnel per app o destinazione. Invece, l’opzione di tunneling diviso in Windows è molto più ampia. Puoi scegliere di non effettuare il tunneling del traffico IPv4 e IPv6 in modo che solo il traffico locale passi attraverso la VPN. È utile se devi solo utilizzare la VPN per accedere a risorse remote non disponibili dalla tua normale connessione Internet, ma non molto altro.
Inoltre, Windows ha diviso solo i protocolli VPN dei tunnel per i quali è supportato. Ciò significa che dovrai prima configurare una connessione L2TP, SSTP o PPTP. OpenVPN non funzionerà qui.
In questo esempio verrà utilizzata la connessione locale per accedere a Internet mentre la VPN verrà utilizzata per accedere alle risorse remote, come un server aziendale privato a cui è possibile accedere solo tramite VPN. La VPN verrà utilizzata solo quando un host non è disponibile sulla rete locale.
In questo tutorial, utilizzeremo Windows 10. Supponiamo che tu abbia già impostato la tua connessione VPN e che devi solo abilitare il tunneling diviso. Avrai bisogno dei privilegi di amministratore e della sottorete di destinazione per il tuo spazio privato VPN.
- Nella barra di ricerca di Windows, digitare PowerShell e fai clic con il tasto destro su Eseguire come amministratore
- genere Get-VPNConnection e premi Invio per visualizzare un elenco di tutte le connessioni VPN disponibili. (Ho testato molte VPN, quindi ce ne sono diverse nel mio screenshot, ma probabilmente ne avrai solo una.) Prendi nota del Nome della VPN che si desidera dividere tunnel.
- Digita il seguente comando e premi Invio, sostituendolo >NOME VPN< con il nome annotato nel passaggio precedente: Set-VPNConnection -Name “>NOME VPN<“-SplitTunneling $ True
Puoi verificare che il tunneling diviso sia abilitato inserendo il Get-VPNConnection comando di nuovo. Il campo split tunneling ora dovrebbe essere impostato su True.
Quindi, immettere questo comando e prendere nota del Descrizione campo:
ipconfig / all
Se necessario, aggiungere il percorso. Sostituire >SUBNET DI DESTINAZIONE< con la sottorete che si desidera instradare attraverso la VPN e >INTERFACCIA< con il nome del campo Descrizione che abbiamo citato nell’ultimo passaggio:
interfaccia netsh ipv4 aggiungi percorso >SUBNET DI DESTINAZIONE< ">NOME INTERFACCIA<"
Se si desidera disabilitare il tunneling diviso, immettere questo comando:
Set-VPNConnection -Name ">NOME VPN<" -SplitTunneling $ False
Suddivisione del tunneling con il proprio server OpenVPN su Windows
Se hai creato il tuo server OpenVPN simile a quello nel nostro tutorial che utilizza Amazon EC2, puoi abilitare il tunneling diviso su Windows modificando i tuoi file di configurazione.
Rimuovere reindirizzamento gateway def1 nel tuo file di configurazione del server OpenVPN (probabilmente chiamato server.conf). Nella configurazione client (client.ovpn o client.conf), aggiungi la seguente riga:
percorso 12.12.12.0 255.255.255.0 vpn_gateway
In questo modo la subnet 12.12.12.0 viene instradata attraverso la connessione VPN e tutto il resto fuori dalla connessione non VPN.
Guarda anche: La migliore VPN per utenti di Windows 10.
Come dividere il tunnel sui router DD-WRT
Configurare OpenVPN e dividere il tunneling sui router DD-WRT è un’attività noiosa e complicata, quindi se vuoi seguire il percorso del router, ti consigliamo di acquistare un abbonamento a ExpressVPN. Con ciò, è possibile installare il firmware del router personalizzato ExpressVPN o acquistare un router con il firmware preinstallato. È molto più semplice che configurare tutto manualmente.
MIGLIORE VPN per suddividere il tunnel sui router DD-WRT: ExpressVPN è la nostra scelta. Questa VPN è all’avanguardia con le sue app facili da usare e il software router. Ha una vasta rete di server ottimizzata per connessioni ad alta velocità. Difficile da battere su privacy e sicurezza. Funziona con tutti i principali servizi di streaming. C’è una garanzia di rimborso di 30 giorni senza cavilli, così puoi provarla senza rischi.
Se vuoi risparmiare qualche soldo e fare le cose nel modo più duro, supponiamo che tu abbia già impostato la tua connessione VPN in DD-WRT e che funzioni correttamente. DD-WRT ti consente di dividere il traffico VPN del tunnel in diversi modi:
- per dispositivo, chiamato “routing basato su criteri”
- per indirizzo IP di destinazione, chiamato “instradamento IP”
- per applicazione o porta
Instradamento basato su criteri
Nella dashboard DD-WRT, vai a Servizio > VPN. Trova la casella di routing basata su criteri e inserisci gli indirizzi IP per ciascuno dei dispositivi che desideri passare attraverso la VPN. Semplice come quella!
Se non sei sicuro degli indirizzi IP dei tuoi dispositivi, puoi trovarli andando su Stato del router pagina della dashboard DD-WRT. Sotto il Rete sezione, trova Connessioni IP attive. Fare clic sul numero accanto a quello per avviare il Tabella connessioni IP attive. Qui è possibile visualizzare gli indirizzi IP per tutte le connessioni in entrata e in uscita sul router, nonché i protocolli e i numeri di porta.
Instradamento basato sulla porta
Se si desidera specificare quali programmi o app utilizzano la VPN, un modo per farlo è suddividere il tunneling per porta. Ogni applicazione utilizza probabilmente una porta diversa, ad esempio i browser Web utilizzano le porte TCP 80 e 443, Spotify utilizza la porta TCP 4070 e Steam utilizza le porte UDP da 27000 a 27030. Quindi, specificando quali porte specifiche instradano il traffico VPN, possiamo dividere il tunnel per applicazione.
Sfortunatamente, questo è più difficile di quanto sembri su DD-WRT. Dovrai familiarizzare con IPTables, che regola le regole del firewall Linux nel firmware. Questo tutorial potrebbe essere utile come esempio.
Vai a Amministrazione > comandi. Sotto Firewall clic modificare e inserisci i comandi necessari. Quindi vai alla configurazione del tuo client OpenVPN in DD-WRT e trova il file Config aggiuntiva casella per modificare la configurazione di OpenVPN.
Routing IP di destinazione
Se si desidera effettuare il tunneling del traffico in base alla destinazione, ad esempio dal sito Web o da qualche altro tipo di server, il routing IP potrebbe fare il trucco.
Vai alla configurazione del tuo client OpenVPN in DD-WRT e trova il Config aggiuntiva scatola. Digita il seguente:
route-nopull
route XXX.XXX.XXX.XXX 255.255.255.255 net_gateway
route YYY.YYY.YYY.YYY 255.ZZZ.ZZZ.0 vpn_gateway
Sostituisci le X con lo stesso indirizzo che hai inserito IP del server campo della tua configurazione OpenVPN. Sostituisci Y con l’indirizzo IP del server a cui vuoi indirizzare il traffico VPN e le Z con la sottorete appropriata (quest’ultima sarà spesso 255.255.255.0).
Tieni presente che se desideri indirizzare tutto il traffico VPN verso un sito Web specifico, dovrai aggiungere gli indirizzi IP e le sottoreti per tutti i server utilizzati dal sito Web. Netflix, ad esempio, utilizza diverse decine di IP e possono cambiare in qualsiasi momento, quindi dovrai trovare un elenco aggiornato di IP Netflix e aggiornare questa configurazione regolarmente.
Come dividere il tunnel sui router Tomato
Tomato non ha il routing basato su policy integrato come DD-WRT, quindi sei praticamente bloccato con l’utilizzo di IPTables per portare a termine il lavoro. Nella dashboard di Tomato, con la connessione OpenVPN già impostata e funzionante, questo è un esempio di come abilitare il routing selettivo.
Vai a Amministrazione > Script > Firewall e aggiungi questi comandi:
iptables -I AVANTI -i br0 -o tun11 -j ACCETTA
iptables -I AVANTI -i tun11 -o br0 -j ACCETTA
iptables -I INPUT -i tun11 -j REJECT
iptables -t nat -A POSTROUTING -o tun11 -j MASQUERADE
Fare clic sulla scheda “WAN Up” e aggiungere questi comandi, sostituendoli >INDIRIZZO IP SORGENTE< con l’IP locale del dispositivo che si desidera instradare attraverso la VPN:
dormire 30
ip route flush table 200
cache di instradamento ip route
regola ip aggiungere da >INDIRIZZO IP SORGENTE< ricerca 200
VPN_GW = `ifconfig tun11 | awk ‘/ inet addr / {split ($ 2, A,":"); stampa A [2]} ”
ip route aggiunge la tabella 200 predefinita tramite $ VPN_GW dev tun11
Nella barra laterale sinistra, vai a Tunneling VPN > Client OpenVPN. Nella configurazione del client OpenVPN, vai a Avanzate. Sotto Configurazione personalizzata, aggiungi questo comando:
route-nopull
Tunnel Split di Paulio Geordio concesso in licenza sotto CC BY 2.0
ticle, abbiamo visto come il tunneling diviso può essere utilizzato per diversi scopi, come laccesso a risorse aziendali tramite una VPN, lutilizzo di dispositivi specifici con o senza VPN, linvio di tutto il traffico attraverso la VPN tranne per contenuti che non consentono connessioni VPN, e così via. Tuttavia, è importante notare che il tunneling diviso richiede conoscenze tecniche avanzate e limplementazione casuale può portare a rischi per la sicurezza. Inoltre, i diversi tipi di tunneling diviso hanno requisiti tecnici diversi e dipendono fortemente dal dispositivo, router wifi e servizio VPN utilizzati. Quindi, se si desidera utilizzare il tunneling diviso, è importante fare ricerche approfondite e configurare correttamente le impostazioni per evitare problemi di sicurezza.