VPN do Mac atascada en «Desconectando»: que se está executando
Desconectar é unha transición, non un túnel detido. Comprobe que compoñente posúe a desmontaxe, lea rutas e DNS e evite matar procesos en bloque.
«Desconectando» é un estado que o cliente informa mentres desmonta un túnel, non un veredicto de que o tráfico se detivo. Nun Mac esa desmontaxe transcorre como unha secuencia curta, e a etiqueta só cambia despois de que o compoñente que posúe a conexión informe de volta. Cando un paso agarda un axudante, un complemento ou unha decisión de política, a etiqueta pode quedar aí despois de que a interface desaparecese, ou o túnel pode seguir reenviando mentres o menú aínda o mostra. Trate o texto como «desmontaxe en curso, resultado descoñecido» e determine cal das dúas metades é certa.
Dous fallos vense idénticos desde a barra de menús e esixen respostas opostas. Nun, o túnel aínda transporta paquetes e só a visualización está obsoleta. No outro, o túnel desapareceu pero unha política aparte mantén o tráfico bloqueado, o que adoita ser deliberado. As rutas e o estado de DNS sepáraos máis rápido que calquera interacción co menú.
Que segue a etiqueta
Un cliente VPN mantén unha pequena máquina de estados, e a barra de menús é unha proxección dela. Para unha conexión xestionada polo propio macOS, esa máquina está no marco VPN do sistema. Para un túnel xestionado por unha aplicación, está na aplicación e no seu axudante con privilexios. O último paso dunha detención non é pechar un socket. É liberar o que facía funcionar o túnel: a interface utun, as rutas que apuntaban a ela, as entradas de resolución que inxectou o cliente e calquera regra de devasas ou política que bloqueara tráfico mentres había conexión.
Eses pasos son independentes, así que unha detención pode atascarse en calquera deles. Un axudante que deixa de responder, unha ruta que tamén reclama unha segunda interface ou unha entrada de resolución que posúe outro perfil poden deixar o cliente esperando. A etiqueta é un informe sobre o progreso do propio cliente, o que a fai autorizada sobre a intención e pouco fiable sobre a rede.
Atope o compoñente que posúe a conexión
En configuracións nativas, scutil --nc list imprime os servizos que o sistema coñece e o seu estado, e scutil --nc status "Work VPN" dá detalle dun servizo. Un túnel mantido por unha aplicación de terceiros pode non aparecer nesa lista en absoluto, así que un resultado baleiro non é proba de que nada estea conectado.
Cando o perfil pertence a unha aplicación, confíe na súa vista de estado e no seu control «Desconectar» documentado. Pechar a xanela non é unha petición de detención se un axudante en segundo plano posúe o túnel; a icona desaparece e o axudante mantén viva a interface. A referencia de axustes de VPN de Apple abrangue os controis nativos e de onde veñen os axustes xestionados.
Lea interfaces, rutas e DNS
Tres comprobacións responden á maior parte da pregunta sen tocar a conexión. Interpretalas xuntas é o que importa, porque calquera por si soa engana.
scutil --nc list
netstat -rn -f inet | head -20
ifconfig | grep -A 3 '^utun'
scutil --dns | head -30
- hai interface utun, unha ruta por defecto ou dividida pasa por ela, o resolutor apunta ao provedor: o túnel segue activo e a etiqueta está obsoleta.
- sen utun, ruta por defecto ordinaria, DNS por DHCP, sen internet: unha política que bloquea ao desconectar fai o seu traballo.
- sen utun, sen ruta, o resolutor segue apuntando ao provedor: a desmontaxe detívose a metade e o DNS é o resto que hai que limpar.
Despois envía unha petición a un host interno que só debería responder polo túnel e outra a un host público. A alcanzabilidade separa a política do estado residual sen converter a comprobación nun exercicio de medición. Garde primeiro o traballo remoto se a ruta aínda responde, e prepare unha segunda vía de entrada antes de cambiar a rede nunha máquina que administra en remoto.
Por que enganan as mortes en bloque e o borrado do perfil
Nomes de proceso como pppd, racoon e configd pertencen a implementacións concretas. Matelos pode afectar outras conexións, deixa rutas e interfaces utun atrás e non lle dá ningún rexistro de que paso se atascou. Un nome de proceso antigo tampouco é proba de que posúa o perfil actual.
Borrar e recrear o perfil é un cambio maior que limpar unha transición atascada. Pode descartar axustes xestionados e material de identidade local sen explicar que fallou, e nun Mac supervisado pode simplemente restaurarse. Reserve a eliminación para unha configuración realmente obsoleta e diagnostique a transición no seu lugar.
Unha secuencia de detención que deixa rastro
A orde seguinte deixa ao mando os controis propios da conexión e produce un rexistro se o atasco volve. Tamén lle evita converter un problema de visualización nun cambio de rede.
- Garde o traballo remoto e confirme que pode chegar ao Mac por outra vía se é remoto.
- Anote o nome do cliente, a versión e o perfil. Capture unha xanela curta con
log show --last 5m --predicate 'subsystem == "com.apple.networkextension"'; as versións antigas gardan menos historial, así que execúteo pronto tras o atasco. - Use o control «Desconectar» documentado, espere e despois repita as comprobacións de interface e rutas.
- Se a etiqueta está obsoleta pero o túnel está caído, déixea e permita que o cliente se actualice en lugar de forzar procesos.
- Se a desmontaxe se atascou de verdade, reinicie o cliente e despois planifique un reinicio do Mac unha vez gardado o traballo. As máquinas xestionadas necesitan o procedemento do administrador.
Tras a recuperación, confirme que a ruta por defecto ordinaria e o resolutor DHCP volveron, e que o tráfico bloqueado ou ben se restaurou ou ben segue bloqueado a propósito. Anote o perfil e a versión do cliente xunto co síntoma, para que a próxima aparición comece con probas e non cunha suposición da barra de menús.