15 votes

Obtenir que le VPN se reconnecte automatiquement en cas de perte de connexion

J'utilise le VPN intégré de Mac OS X 10.7.3. Il s'agit d'IPSec, FWIW. De temps en temps, il se déconnecte (probablement un problème avec le serveur de mon entreprise). Existe-t-il un moyen de le faire se reconnecter automatiquement ? Parfois, je ne le remarque pas pendant un certain temps, ce qui est assez ennuyeux.

0voto

francesco Points 13

Script auto-reconnexion tout service VPN abandonné.

J'avais utilisé rjarvis2010 's solution mais je n'en étais pas tout à fait satisfait.

J'ai de nombreux services VPN différents auxquels je me connecte, donc je voulais un script qui reconnecterait automatiquement tout VPN auquel je suis connecté.

on idle
    tell application "System Events"
        tell location "Uni" of network preferences
            -- keep checking for VPN name until a VPN is connected
            set empty to true
            repeat until empty is false
                try
                    -- set variable "myVPN" to the name of the service that is connected and is a VPN
                    set myVPN to get name of first service whose (kind is greater than 11 and kind is less than 17) and connected of current configuration is true
                    set empty to false
                on error
                    set empty to true
                    delay 15
                end try
            end repeat

            -- doReconnect is a file that reads from the ppp.log and contains "true" by default, "false" if the vpn service was manually disconnected recently
            local doReconnect
            set doReconnect to (do shell script "cat /var/run/reconnect_vpn")

            repeat while doReconnect contains "true"
                set ConfProp to get current configuration of service myVPN
                if connected of ConfProp is false then
                    delay 1
                    set doReconnect to (do shell script "cat /var/run/reconnect_vpn")
                    if doReconnect contains "true" then
                        try
                            connect service myVPN
                        on error errorMessage
                        end try
                    else
                        exit repeat
                    end if
                end if
                delay 5
            end repeat
        end tell
    end tell
    return 1
end idle

Pour que cela fonctionne pour vous, vous devez remplacer

  • Uni avec le nom de votre emplacement, quel qu'il soit

Une fois que vous avez terminé, enregistrez-la en tant qu'application et placez-la dans vos éléments de connexion et vous êtes prêt.

De plus, et c'est important, vous devez configurer les crochets PPP comme décrit dans le document suivant rjarvis2010 's solution

Aussi, je vous recommande de ne pas essayer ceci en connectant plusieurs VPNs simultanément. Pour arrêter ce script, vous devrez peut-être le quitter de force via le moniteur d'activité (car les boucles répétées ne lui permettent pas de recevoir une entrée externe à certains moments).

0voto

thamiltonsmith1 Points 23

J'ai vu qu'il y a quelques réponses ici qui utilisent des crochets de connexion, ceux-ci sont dépréciés dans les nouvelles versions d'OS X en faveur de Launch Agent et Launch Daemons.

J'ai créé un script et lancé l'agent. L'agent appelle un shell script toutes les 30 secondes et essaie de pinguer une adresse IP qui est statique sur le réseau vpn. S'il n'arrive pas à pinger cette IP, il active votre connexion vpn.

Si vous l'avez fait par le biais d'une application Apple script, l'icône de l'application sera toujours dans votre dock. Je préfère que cela fonctionne automatiquement en arrière-plan.

Clonez le projet ci-dessous et suivez les instructions du fichier readme. Le résultat final est un paquet d'installation qui placera un fichier plist d'agent de lancement dans /Library/LaunchAgents/ et un shell script dans /Library/Application Support/melonsmasher/.

Veillez à éditer le shell script(auto-vpn) avec le nom de votre connexion VPN et une adresse IP qui se trouve sur le réseau VPN. Vous pouvez modifier l'intervalle d'exécution dans le fichier plist(com.melonsmasher.autovpn.plist).

https://github.com/MelonSmasher/OSX-AutoVPN

-2voto

gsdf Points 1

La beauté des AppleScripts est que vous pouvez faire presque tout avec et c'est gratuit, l'inconvénient est qu'ils ne sont généralement pas très réactifs (interrogation à un intervalle de temps fixe) et manquent de fonctionnalités que seules les applications natives de MAC OS X peuvent avoir. Une nouvelle application de reconnexion automatique VPN est "VPN Monitor" dans le magasin d'applications, elle se reconnecte instantanément dès qu'une connexion VPN est interrompue, est capable de se reconnecter à un autre service VPN si le service préféré est en panne, se connecte au démarrage, garde une trace de votre temps d'arrêt et utilise un minimum de ressources système pour fonctionner en arrière-plan comme une application de barre d'état. Moniteur VPN

2 votes

Veuillez consulter la FAQ, en particulier la partie concernant autopromotion

LesApples.com

LesApples est une communauté de Apple où vous pouvez résoudre vos problèmes et vos doutes. Vous pouvez consulter les questions des autres utilisateurs d'appareils Apple, poser vos propres questions ou résoudre celles des autres.

Powered by:

X