L'écran VPN d'Android affiche une ligne avec un nom, une icône de clé et peut-être un commutateur toujours actif. Il montre rarement le point de terminaison, la politique de routes, les serveurs DNS ou les identifiants qui font fonctionner la connexion, car dans un tunnel basé sur une application, ils appartiennent à l'application. La conséquence pratique est une question de runbook, non une question philosophique : avant de modifier un fichier téléchargé ou de chercher un magasin de profils central, découvrez quel composant possède le réglage que vous voulez changer.

Identifiez d'abord le type de connexion

Il existe au moins trois dispositions sur le même écran de réglages. Une application peut utiliser VpnService pour créer une interface virtuelle et posséder le protocole et la configuration privée, y compris une application de filtrage locale sans sortie distante. Android peut aussi provisionner un profil IKEv2 de plateforme via Ikev2VpnProfile, disponible depuis l'API 30, où la plateforme retient une plus grande partie du profil. Et une application fournisseur peut présenter sa propre liste de serveurs et assembler les réglages en interne.

adb shell dumpsys connectivity | grep -i -A12 "VPN"
adb shell cmd connectivity list-owners 2>/dev/null || true

La première commande affiche le réseau VPN actif et les propriétés de son lien, c'est-à-dire l'état appliqué. Si la ligne nomme un paquet que vous reconnaissez, commencez par la vue du profil de cette application plutôt que par l'écran système.

Notez le propriétaire et la portée du profil

Notez quatre faits avant de changer quoi que ce soit : le paquet propriétaire, si la connexion vit dans le profil personnel ou professionnel, le nom du profil ou de la connexion tel que l'application l'affiche, et qui l'administre. Le propriétaire d'un appareil peut provisionner un VPN de profil professionnel qu'un utilisateur de profil personnel ne peut pas modifier, et la même application installée deux fois vous donne deux propriétaires indépendants.

Cette étape évite l'heure perdue la plus courante, qui consiste à modifier un profil qui n'est pas celui connecté. Les applications gardent souvent plusieurs profils, et l'actif est une propriété de l'application, non de la ligne Android.

Comparez l'état demandé, reçu et appliqué

Ce sont trois étapes différentes, et un écart entre elles vous indique quel composant corriger.

StageWhere to lookWhat it proves
RequestedThe app's profile editor or imported fileWhat the owner intends to use
ReceivedSanitized app log of server-supplied optionsWhat the peer actually pushed
AppliedLink properties and routes after connectWhat the device is really using

L'étape appliquée est celle que vous pouvez observer sans faire confiance au journal de quiconque. Comparez les serveurs DNS et les routes des propriétés du lien actif avec ceux que le profil déclare ; s'ils diffèrent, le serveur a poussé quelque chose ou l'application a appliqué une politique que vous n'attendiez pas.

adb shell ip addr show tun0
adb shell ip route show table all | head -40

Les noms d'interface diffèrent d'une application à l'autre, alors listez d'abord les interfaces et lisez celle qui est apparue lorsque le tunnel s'est connecté. Une route présente dans l'éditeur de l'application mais absente ici n'a jamais été appliquée ; une route présente ici mais absente de l'éditeur vient d'ailleurs.

Modifiez l'artefact que le propriétaire lit réellement

Pour un profil OpenVPN importé, l'application conserve généralement sa propre copie. Modifier plus tard le fichier téléchargé à l'origine ne change pas la connexion suivante ; utilisez l'éditeur documenté de l'application, ou réimportez et confirmez quel profil est maintenant actif. C'est la différence entre changer un fichier et changer une configuration.

Les applications fournisseur assemblent souvent les réglages à partir d'une liste de serveurs au lieu d'écrire un fichier modifiable par l'utilisateur. L'absence d'un bouton d'export n'est pas la preuve que le VPN est faux, et un fichier exporté peut omettre des clés liées à l'appareil ou des éléments d'enrôlement dont un autre appareil aurait besoin. Traitez l'export et l'import comme des opérations distinctes avec leurs propres prérequis.

Rédigez la note de support sans exposer de secrets

Une note utile nomme l'application et le profil exacts, le réglage qui semble incorrect et les preuves de chaque étape. Par exemple : ce profil reçoit une adresse DNS privée du serveur, mais l'application de travail prévue ne peut pas résoudre son service, et les propriétés de lien appliquées montrent ce résolveur tandis que l'éditeur du profil en montre un autre.

Gardez les identifiants hors de la note. Rooter l'appareil pour chercher dans le stockage privé de l'application n'est pas nécessaire pour identifier le propriétaire, et un chemin deviné vers le répertoire de données n'est pas une interface prise en charge. Si la réponse exige des octets que seule l'application voit, demandez au propriétaire un export de diagnostic plutôt que d'en improviser un.

Une fois le travail terminé, fermez la boucle : confirmez le nom du profil actif, relisez l'état appliqué et déconnectez une fois pour vérifier que le changement survit à une reconnexion. Un réglage qui n'existe que dans l'éditeur n'a pas été déployé.

Articles similaires