Puede usar el siguiente AppleScript , guardarlo como una aplicación y configurarlo para que sea un agente (sin icono de acoplamiento).
Este script configurará una conexión VPN cuando no haya ninguna. Por lo tanto, también debe volver a conectarse poco después de que su conexión se caiga. Puede cambiar el intervalo para verificar su conexión VPN, son 120 segundos en el script.
on idle
tell application "System Events"
tell current location of network preferences
set myConnection to the service "VPN University"
if myConnection is not null then
if current configuration of myConnection is not connected then
connect myConnection
end if
end if
end tell
return 120
end tell
end idle
He explicado cómo configurar esto en esta respuesta .
Can’t get «class svce» "MyVPN" of «class locc» of «class netp» of application "System Events".
System Events got an error: Can’t get service "MyVPN" of current location of network preferences. (-1728)
Hice algunos cambios en la respuesta proporcionada, porque si algo vale la pena hacerlo, vale la pena hacerlo en el suelo. Quería volver a conectar si la VPN se cayó, pero NO volver a conectar si la VPN se desconectó intencionalmente. La solución que se me ocurrió fue efectiva y poco elegante.
Primero agregué ganchos al inicio y apagado de pppd para realizar un seguimiento del estado de VPN deseado. Estos archivos deben ser propiedad de root y tener permisos de lectura / ejecución mundiales (
sudo chmod 755 /etc/ppp/ip-*
)./ etc / ppp / ip-up:
/ etc / ppp / ip-down: para OS X 10.9.5 y versiones inferiores
/ etc / ppp / ip-down: para OS X 10.10 y superior
Luego, al modificar el AppleScript anterior, pude verificar la variable de estado '/ var / run / reconnect_vpn' para determinar si la VPN vuelve a funcionar:
Como antes, cambie la línea
set myConnection to the service "VPN"
a como se llame su VPN. Además, al iniciar el archivo 'reconnect_vpn' no existe, por lo que agregué un booleano (startOnLogin) para que funcione como predeterminado cuando no se pudo encontrar el archivo. Me gusta comenzar de inmediato, pero si no lo hace, cámbielo a falso.Tengo la sensación de que si eres el tipo de persona que se preocupa tanto por el comportamiento de la VPN, también eres el tipo de persona a la que le gusta hurgar hasta encontrar una solución y, por lo tanto, esta respuesta no tiene audiencia. Pero por si acaso, aquí está. Espero que ayude a alguien.
fuente
Hay una aplicación que lo hace llamada VPN Auto-Connect (enlace de Mac App Store). Cuesta $ 0,99.
Una vez iniciado, vive en tu barra de menú; cuando lo use para activar "VPN", monitoreará un perfil de conexión VPN que configuró en el panel de preferencias de red de OS X y se asegurará de que siempre permanezca conectado a él. El icono de la barra de menú de VPN Auto-Connect proporciona una lista de todas las conexiones VPN que ha definido y le permite elegir a cuál conectarse siempre.
fuente
Una nueva opción es VPN Monitor disponible en la AppStore. Permite una mayor personalización, como inicio de sesión automático, ciclado a través de conexiones VPN, etc. Se requiere al menos OS X 10.9 Mavericks.
fuente
El script reconecta automáticamente cualquier servicio VPN caído.
Había estado usando la solución de rjarvis2010 pero no estaba muy contento con ella.
Tengo muchos servicios VPN diferentes a los que me conecto, así que quería un script que reconectara automáticamente cualquier VPN a la que estuviera conectado.
Para que funcione para usted, debe reemplazar
Uni
con el nombre de tu ubicaciónUna vez que haya terminado, guárdelo como una aplicación y colóquelo en sus Elementos de inicio de sesión y listo.
Además, y esto es importante, debe configurar los ganchos PPP como se describe en la solución de rjarvis2010
Además, le recomendaría que no intente esto conectando múltiples VPN simultáneamente. Para detener este script, es posible que deba forzarlo a salir a través del monitor de actividad (ya que los bucles de repetición no le permiten recibir entradas externas a veces).
fuente
Estoy usando un enfoque diferente para mantener viva mi conexión VPN. Esto implica la
launchd
ejecución de un demonio muy simple que permite mantener la conexión VPN sin que ningún usuario haya iniciado sesión (esto también evita las ventanas emergentes de desconexión de VPN cuando se reanuda desde el modo de suspensión).crear un
launchd
archivo plist desde la terminal:e ingrese el siguiente contenido:
Puedes usar el siguiente comando para iniciar tu demonio y probar:
De esta manera, tiene un demonio ejecutándose para todos los usuarios, la conexión se intenta solo cuando la conexión a Internet está disponible. Además, la VPN se vuelve a conectar automáticamente cuando vuelve la conexión a Internet ...
Editar:
Este método me parece el más robusto, ya que permite que una conexión vpn se realice automáticamente, antes de que un usuario inicie sesión (útil para los servidores).
Actualizaciones para Yosemite (OSX 10.10)
Se deprecia en Yosemite. Puede usar lo siguiente en su lugar
también
Ya no funciona en Yosemite. Puedes usar esto en su lugar
fuente
scutil --nc list
no enumera mi conexión VPN, que se ve y se puede conectar a través de la configuración de red.Vi que hay algunas respuestas aquí que usan enlaces de inicio de sesión, que están en desuso en las versiones más recientes de OS X a favor de Launch Agent y Launch Daemons.
Creé un script y un agente de lanzamiento. El agente llama a un script de shell cada 30 segundos e intenta hacer ping a una dirección IP que es estática en la red vpn. Si no puede hacer ping a esa IP, habilita su conexión vpn.
Si hiciste esto a través de una aplicación Apple Script, el ícono de la aplicación siempre estará en tu dock. Prefiero que esto se ejecute automáticamente en segundo plano.
Clone el proyecto a continuación y siga las instrucciones en el archivo Léame. El resultado final es un paquete de instalación que colocará un archivo plist del agente de lanzamiento en / Library / LaunchAgents / y un script de shell en / Library / Application Support / melonsmasher /.
Asegúrese de editar el script de shell (vpn automático) con su nombre de conexión VPN y una dirección IP que se encuentre en la red VPN. Puede cambiar el intervalo de ejecución en el archivo plist (com.melonsmasher.autovpn.plist).
https://github.com/MelonSmasher/OSX-AutoVPN
fuente
La belleza de AppleScripts es que puedes hacer casi cualquier cosa con él y es gratis, la desventaja es que generalmente no responden muy bien (sondeo en un intervalo de tiempo fijo) y carecen de características que solo las aplicaciones nativas de MAC OS X pueden tener. Una aplicación de reconexión automática VPN nueva y agradable es "VPN Monitor" en la tienda de aplicaciones, se reconecta instantáneamente en el momento en que se corta una conexión VPN, puede reconectarse a un servicio VPN diferente si el servicio preferido está inactivo, se conecta al inicio, realiza un seguimiento de su tiempo de inactividad y utiliza un mínimo de recursos del sistema para ejecutarse en segundo plano como una aplicación de barra de estado. Monitor de VPN
fuente