La pantalla de VPN de Android muestra una fila con un nombre, un icono de llave y quizá un interruptor de siempre activo. Rara vez muestra el extremo, la política de rutas, los servidores DNS o las credenciales que hacen funcionar la conexión, porque en un túnel basado en una aplicación pertenecen a la aplicación. La consecuencia práctica es una pregunta de runbook, no filosófica: antes de editar un archivo descargado o buscar un almacén central de perfiles, averigua qué componente es dueño del ajuste que quieres cambiar.

Identifica primero el tipo de conexión

Hay al menos tres disposiciones en la misma pantalla de ajustes. Una aplicación puede usar VpnService para crear una interfaz virtual y ser dueña del protocolo y la configuración privada, incluida una aplicación de filtrado local sin salida remota. Android también puede aprovisionar un perfil IKEv2 de plataforma mediante Ikev2VpnProfile, disponible desde el API 30, donde la plataforma retiene más parte del perfil. Y una aplicación de proveedor puede presentar su propia lista de servidores y ensamblar los ajustes internamente.

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

El primer comando muestra la red VPN activa y las propiedades de su enlace, que es el estado aplicado. Si la fila nombra un paquete que reconoces, empieza por la vista de perfil de esa aplicación en lugar de la pantalla del sistema.

Anota el propietario y el alcance del perfil

Anota cuatro hechos antes de cambiar nada: el paquete propietario, si la conexión vive en el perfil personal o en el de trabajo, el nombre del perfil o de la conexión tal como lo muestra la aplicación, y quién lo administra. El propietario de un dispositivo puede aprovisionar una VPN de perfil de trabajo que un usuario de perfil personal no puede editar, y la misma aplicación instalada dos veces te da dos propietarios independientes.

Este paso evita la hora perdida más habitual, que es editar un perfil que no es el conectado. Las aplicaciones suelen guardar varios perfiles, y el activo es una propiedad de la aplicación, no de la fila de Android.

Compara el estado solicitado, recibido y aplicado

Son tres etapas distintas, y una discrepancia entre ellas te dice qué componente corregir.

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

La etapa aplicada es la que puedes observar sin confiar en el registro de nadie. Compara los servidores DNS y las rutas de las propiedades del enlace activo con los que declara el perfil; si difieren, el servidor envió algo o la aplicación aplicó una política que no esperabas.

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

Los nombres de interfaz difieren entre aplicaciones, así que enumera primero las interfaces y lee la que apareció cuando se conectó el túnel. Una ruta presente en el editor de la aplicación pero ausente aquí nunca se aplicó; una ruta presente aquí pero ausente del editor vino de otro sitio.

Edita el artefacto que el propietario lee de verdad

Para un perfil OpenVPN importado, la aplicación suele guardar su propia copia. Editar después el archivo descargado originalmente no cambia la siguiente conexión; usa el editor documentado de la aplicación, o vuelve a importar y confirma qué perfil está activo ahora. Esa es la diferencia entre cambiar un archivo y cambiar una configuración.

Las aplicaciones de proveedor suelen ensamblar los ajustes a partir de una lista de servidores en lugar de escribir un archivo editable por el usuario. La ausencia de un botón de exportación no es prueba de que la VPN sea falsa, y un archivo exportado puede omitir claves ligadas al dispositivo o material de alta que otro dispositivo necesitaría. Trata la exportación y la importación como operaciones separadas con sus propias condiciones previas.

Escribe la nota de soporte sin exponer secretos

Una nota útil nombra la aplicación y el perfil exactos, el ajuste que parece incorrecto y las pruebas de cada etapa. Por ejemplo: este perfil recibe una dirección DNS privada del servidor, pero la aplicación de trabajo prevista no puede resolver su servicio, y las propiedades de enlace aplicadas muestran ese resolutor mientras el editor del perfil muestra otro.

Mantén las credenciales fuera de la nota. Hacer root al dispositivo para buscar en el almacenamiento privado de la aplicación no es necesario para identificar al propietario, y una ruta supuesta al directorio de datos no es una interfaz compatible. Si la respuesta necesita bytes que solo ve la aplicación, pide al propietario una exportación de diagnóstico en lugar de improvisar una.

Cuando el trabajo esté hecho, cierra el ciclo: confirma el nombre del perfil activo, vuelve a leer el estado aplicado y desconecta una vez para verificar que el cambio sobrevive a una reconexión. Un ajuste que solo existe en el editor no se ha desplegado.

Artículos relacionados