«Desconectando» es un estado que el cliente informa mientras desmonta un túnel, no un veredicto de que el tráfico se ha detenido. En un Mac ese desmontaje ocurre como una secuencia breve, y la etiqueta cambia solo cuando el componente que posee la conexión informa de vuelta. Cuando un paso espera a un auxiliar, un complemento o una decisión de política, la etiqueta puede quedarse ahí después de que la interfaz haya desaparecido, o el túnel puede seguir reenviando mientras el menú aún lo muestra. Trate el texto como «desmontaje en curso, resultado desconocido» y averigüe cuál de las dos mitades es cierta.

Dos fallos se ven idénticos desde la barra de menús y exigen respuestas opuestas. En uno, el túnel aún transporta paquetes y solo la visualización está obsoleta. En el otro, el túnel ha desaparecido pero una política aparte mantiene el tráfico bloqueado, lo que a menudo es deliberado. Las rutas y el estado de DNS los separan más rápido que cualquier interacción con el menú.

Qué sigue la etiqueta

Un cliente VPN mantiene una pequeña máquina de estados, y la barra de menús es una proyección de ella. Para una conexión gestionada por el propio macOS, esa máquina está en el marco VPN del sistema. Para un túnel gestionado por una aplicación, está en la aplicación y en su auxiliar con privilegios. El último paso de una detención no es cerrar un socket. Es liberar lo que hacía funcionar el túnel: la interfaz utun, las rutas que apuntaban a ella, las entradas de resolución que inyectó el cliente y cualquier regla de cortafuegos o política que bloqueara tráfico mientras había conexión.

Esos pasos son independientes, así que una detención puede atascarse en cualquiera de ellos. Un auxiliar que deja de responder, una ruta que también reclama una segunda interfaz o una entrada de resolución que posee otro perfil pueden dejar al cliente esperando. La etiqueta es un informe sobre el progreso del propio cliente, lo que la hace autorizada sobre la intención y poco fiable sobre la red.

Encuentre el componente que posee la conexión

En configuraciones nativas, scutil --nc list imprime los servicios que el sistema conoce y su estado, y scutil --nc status "Work VPN" da detalle de un servicio. Un túnel mantenido por una aplicación de terceros puede no aparecer en esa lista en absoluto, así que un resultado vacío no es prueba de que nada esté conectado.

Cuando el perfil pertenece a una aplicación, confíe en su vista de estado y en su control «Desconectar» documentado. Cerrar la ventana no es una petición de detención si un auxiliar en segundo plano posee el túnel; el icono desaparece y el auxiliar mantiene viva la interfaz. La referencia de ajustes de VPN de Apple cubre los controles nativos y de dónde vienen los ajustes gestionados.

Lea interfaces, rutas y DNS

Tres comprobaciones responden a la mayor parte de la pregunta sin tocar la conexión. Interpretarlas juntas es lo que importa, porque cualquiera por sí sola engaña.

scutil --nc list
netstat -rn -f inet | head -20
ifconfig | grep -A 3 '^utun'
scutil --dns | head -30
  • hay interfaz utun, una ruta por defecto o dividida pasa por ella, el resolutor apunta al proveedor: el túnel sigue activo y la etiqueta está obsoleta.
  • sin utun, ruta por defecto ordinaria, DNS por DHCP, sin internet: una política que bloquea al desconectar hace su trabajo.
  • sin utun, sin ruta, el resolutor sigue apuntando al proveedor: el desmontaje se detuvo a medias y el DNS es el resto que hay que limpiar.

Luego envíe una petición a un host interno que solo debería responder por el túnel y otra a un host público. La alcanzabilidad separa la política del estado residual sin convertir la comprobación en un ejercicio de medición. Guarde primero el trabajo remoto si la ruta aún responde, y prepare una segunda vía de entrada antes de cambiar la red en una máquina que administra en remoto.

Por qué engañan las muertes en bloque y el borrado del perfil

Nombres de proceso como pppd, racoon y configd pertenecen a implementaciones concretas. Matarlos puede afectar a otras conexiones, deja rutas e interfaces utun atrás y no le da ningún registro de qué paso se atascó. Un nombre de proceso antiguo tampoco es prueba de que posea el perfil actual.

Borrar y recrear el perfil es un cambio mayor que limpiar una transición atascada. Puede descartar ajustes gestionados y material de identidad local sin explicar qué falló, y en un Mac supervisado puede simplemente restaurarse. Reserve la eliminación para una configuración realmente obsoleta y diagnostique la transición en su lugar.

Una secuencia de detención que deja rastro

El orden siguiente deja al mando los controles propios de la conexión y produce un registro si el atasco vuelve. También le evita convertir un problema de visualización en un cambio de red.

  1. Guarde el trabajo remoto y confirme que puede llegar al Mac por otra vía si es remoto.
  2. Anote el nombre del cliente, la versión y el perfil. Capture una ventana corta con log show --last 5m --predicate 'subsystem == "com.apple.networkextension"'; las versiones antiguas guardan menos historial, así que ejecútelo pronto tras el atasco.
  3. Use el control «Desconectar» documentado, espere y luego repita las comprobaciones de interfaz y rutas.
  4. Si la etiqueta está obsoleta pero el túnel está caído, déjela y permita que el cliente se actualice en lugar de forzar procesos.
  5. Si el desmontaje se atascó de verdad, reinicie el cliente y luego planifique un reinicio del Mac una vez guardado el trabajo. Las máquinas gestionadas necesitan el procedimiento del administrador.

Tras la recuperación, confirme que la ruta por defecto ordinaria y el resolutor DHCP han vuelto, y que el tráfico bloqueado o bien se ha restaurado o bien sigue bloqueado a propósito. Anote el perfil y la versión del cliente junto con el síntoma, para que la próxima aparición empiece con pruebas y no con una suposición de la barra de menús.

Artículos relacionados