L'icona VPN di Android è accesa, allora perché il traffico non passa nel tunnel?
L'icona della chiave dice solo che un'app possiede un'interfaccia virtuale, non che il traffico esca dal telefono. Controlla il tipo di profilo, l'ambito per app e la politica di blocco.
La chiave VPN è nella barra di stato, il browser carica una pagina e l'indirizzo che un sito riporta è ancora la tua connessione di casa. Questa combinazione è normale su Android, perché l'icona dice che un'app possiede un'interfaccia di rete virtuale, non che il tuo traffico esce da un server remoto. Un'app di filtraggio locale usa lo stesso meccanismo. Controlla cosa fa davvero il servizio prima di dare la colpa al fornitore.
L'icona significa che un servizio VPN possiede l'interfaccia
Il servizio VPN di Android consente a un'app di creare un'interfaccia virtuale e di ricevere i pacchetti instradati al suo interno. Ciò che accade dopo dipende interamente da quell'app: può inoltrarli a un server remoto, filtrarli o scartarli. L'icona della chiave segnala che un servizio tiene l'interfaccia, non dove vanno i pacchetti. Per questo un'app di filtraggio e un tunnel completo appaiono identici nella barra di stato.
adb shell dumpsys connectivity | grep -i vpn
adb shell settings get global always_on_vpn_app
Solo un servizio VPN può essere attivo alla volta per utente o profilo, il che è un comportamento documentato e non un bug. Quando una seconda app prova a connettersi, o prende il controllo o fallisce, e il traffico della prima non viene più gestito. Se un'app di filtraggio esce nel momento in cui colleghi un tunnel, quella concorrenza è la causa probabile.
Profilo nativo o VPN dell'app: non sono intercambiabili
Un profilo IKEv2 fornito dalla piattaforma e un'app che implementa OpenVPN o WireGuard sono prodotti diversi con menu diversi. L'API della piattaforma per IKEv2 esiste da una versione specifica di Android, e le build dei produttori non espongono tutte le stesse opzioni nello stesso punto. Uno screenshot di un altro telefono non è un documento di compatibilità.
adb shell getprop ro.build.version.sdk
adb shell dumpsys package com.example.vpn | head -40
Abbina il protocollo al client che lo supporta e ottieni il profilo tramite il canale verificato del fornitore invece di incollarlo in un modulo estraneo. Un indirizzo di endpoint dice dove connettersi, non quale app sa parlare il protocollo. Tratta i profili esportati e i codici QR come credenziali, perché un'immagine QR può contenere la chiave completa. Se il profilo è stato emesso per un altro client, riemettilo invece di convertirlo.
Le regole per app e i profili di lavoro cambiano l'ambito
Android supporta configurazioni VPN per app, quindi un browser può essere fuori dal tunnel mentre un'app di posta è dentro. Il profilo personale e quello di lavoro sono contesti separati con il proprio servizio attivo. Controllare l'indirizzo dall'app sbagliata è una delle conclusioni false più comuni in questo campo.
Guarda gli elenchi di inclusione ed esclusione, poi testa con l'app che ti interessa davvero. Il tunnel del profilo di lavoro non copre le app personali, e un tunnel personale non copre le app di lavoro. La stessa separazione spiega perché una risorsa aziendale funziona in un profilo e fallisce in un altro senza alcuna differenza visibile di configurazione. Annota il contesto del profilo nel ticket, perché cambia persino quali impostazioni si applicano.
Fermati se l'app che stai testando non rientra nell'ambito del tunnel. È una scelta di politica, non un guasto.
Testa cosa è uscito davvero dal telefono
Testa destinazioni pubbliche e private, entrambe le famiglie di indirizzi ed entrambe le reti di accesso. Poi confronta il risultato con l'ambito dell'app stessa, perché un caricamento riuscito in un'app non dice nulla sull'altra. Ripeti dopo il passaggio da Wi-Fi a dati mobili, dato che una riconnessione può finire su un percorso diverso.
adb shell ip rule
adb shell dumpsys netpolicy | grep -i vpn
Always-on VPN e l'opzione che blocca le connessioni senza VPN sono correlati ma distinti, e un blocco rigoroso può rompere l'accesso al portale captive finché non segui la procedura documentata. Anche le impostazioni di Private DNS possono interagire con il resolver del profilo, quindi sostituire alla cieca il DNS di un'organizzazione crea un nuovo guasto. Se il tunnel muore quando lo schermo si blocca, leggi la guida per sviluppatori VPN sull'esecuzione in background e sull'ottimizzazione della batteria prima di reinstallare qualsiasi cosa.
Il sintomo da tenere a mente è il divario tra l'icona e il percorso. La chiave significa che un servizio possiede l'interfaccia; solo un test dall'app prevista sulla rete prevista dice dove è andato il traffico. Controlla entrambi, e il prossimo rapporto su una VPN rotta sarà molto più facile da collocare.