Anda dapat menggunakan AppleScript berikut , simpan sebagai aplikasi dan atur menjadi agen (tidak ada ikon dok).
Script ini akan mengatur koneksi VPN ketika tidak ada. Karena itu, itu juga harus terhubung kembali segera setelah koneksi Anda turun. Anda dapat mengubah interval untuk memeriksa koneksi VPN Anda, ini 120 detik dalam skrip.
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
Saya telah menjelaskan cara mengatur ini dalam jawaban ini .
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)
Saya membuat beberapa perubahan pada jawaban yang diberikan, karena jika sesuatu layak dilakukan, itu layak dilakukan ke tanah. Saya ingin menyambung kembali jika VPN dijatuhkan, tetapi TIDAK menyambung kembali jika VPN sengaja diputus. Solusi yang saya temukan adalah efektif dan tidak elegan.
Pertama saya menambahkan kait ke startup pppd dan shutdown untuk melacak status VPN yang diinginkan. File-file ini harus dimiliki oleh root, dan memiliki izin baca / eksekusi dunia (
sudo chmod 755 /etc/ppp/ip-*
)./ etc / ppp / ip-up:
/ etc / ppp / ip-down: untuk OS X 10.9.5 dan di bawahnya
/ etc / ppp / ip-down: untuk OS X 10.10 ke atas
Kemudian dengan memodifikasi AppleScript di atas, saya dapat memeriksa variabel status '/ var / run / reconnect_vpn' untuk menentukan apakah akan membuat VPN kembali:
Seperti sebelumnya, ubah jalur
set myConnection to the service "VPN"
ke apa pun yang dipanggil VPN Anda. Juga, saat startup, file 'reconnect_vpn' tidak ada, jadi saya menambahkan boolean (startOnLogin) untuk dijadikan sebagai default ketika file tidak dapat ditemukan. Saya suka memulai segera, tetapi jika Anda tidak mengubahnya menjadi false.Saya merasa bahwa jika Anda adalah tipe orang yang khusus tentang perilaku VPN, maka Anda juga tipe orang yang suka meraba-raba sampai Anda menemukan solusi dan karena itu jawaban ini tidak memiliki audiens. Tapi untuk jaga-jaga, ini dia. Semoga ini bisa membantu seseorang.
sumber
Ada aplikasi yang melakukannya dengan VPN Auto-Connect (tautan Mac App Store). Ini $ 0,99.
Setelah dimulai, ia tinggal di bilah menu Anda; ketika Anda menggunakannya untuk mengaktifkan VPN "on", itu akan memonitor profil koneksi VPN yang Anda atur di panel preferensi Jaringan OS X dan memastikan Anda selalu tetap terhubung dengannya. Ikon menu-bar VPN Auto-Connect menyediakan daftar semua koneksi VPN yang telah Anda tentukan dan memungkinkan Anda memilih yang mana untuk selalu terhubung.
sumber
Opsi baru adalah Monitor VPN yang tersedia di AppStore. Ini memungkinkan untuk lebih banyak penyesuaian, seperti login otomatis, bersepeda melalui koneksi VPN, dll. Setidaknya diperlukan OS X 10.9 Maverick.
sumber
Script sambungkan kembali otomatis setiap layanan VPN yang terjatuh.
Saya telah menggunakan rjarvis2010 's solusi tapi aku tidak cukup senang dengan itu.
Saya memiliki banyak layanan VPN berbeda yang saya sambungkan, jadi saya ingin skrip yang secara otomatis menyambungkan kembali VPN yang saya sambungkan.
Untuk membuatnya bekerja untuk Anda, Anda harus mengganti
Uni
dengan apa pun nama lokasi AndaSetelah selesai, simpan sebagai aplikasi dan letakkan di Item Login Anda dan Anda siap melakukannya.
Juga, dan ini penting, Anda perlu mengatur kait PPP seperti yang dijelaskan dalam rjarvis2010 's solusi
Juga, saya sarankan Anda tidak mencoba menghubungkan beberapa VPN ini secara bersamaan. Untuk menghentikan skrip ini, Anda mungkin perlu menghentikannya secara paksa melalui monitor aktivitas (karena loop berulang tidak mengizinkannya menerima input eksternal sesekali).
sumber
Saya menggunakan pendekatan berbeda untuk menjaga koneksi VPN saya tetap hidup. Ini melibatkan
launchd
menjalankan daemon yang sangat sederhana yang memungkinkan menjaga koneksi VPN tanpa ada pengguna yang masuk (ini juga menghindari popup pemutusan VPN saat melanjutkan dari mode tidur).buat
launchd
file plist dari terminal:dan masukkan konten berikut:
Anda dapat menggunakan perintah berikut untuk memulai daemon Anda dan menguji:
Dengan cara ini, Anda memiliki daemon yang berjalan untuk semua pengguna, koneksi dicoba hanya ketika koneksi internet tersedia. Juga, VPN terhubung kembali secara otomatis ketika koneksi internet kembali ...
Edit:
Saya menemukan metode ini paling kuat karena memungkinkan koneksi vpn dibuat secara otomatis, sebelum pengguna masuk (berguna untuk server).
Pembaruan untuk Yosemite (OSX 10.10)
Disusutkan dalam Yosemite. Anda dapat menggunakan yang berikut sebagai gantinya
Juga
Tidak lagi bekerja di Yosemite. Anda bisa menggunakan ini sebagai gantinya
sumber
scutil --nc list
tidak mencantumkan koneksi VPN saya, yang terlihat dan dapat dihubungkan melalui pengaturan Jaringan.Saya melihat bahwa ada beberapa jawaban di sini yang menggunakan kait masuk, yang sudah usang dalam versi yang lebih baru dari OS X yang mendukung Launch Agent dan Launch Daemon.
Saya membuat skrip dan agen peluncuran. Agen memanggil skrip shell setiap 30 detik dan mencoba untuk melakukan ping alamat IP yang statis pada jaringan vpn. Jika tidak bisa melakukan ping IP itu, itu memungkinkan koneksi vpn Anda.
Jika Anda melakukan ini melalui Apple Script App, ikon aplikasi akan selalu ada di dock Anda. Saya lebih suka menjalankan ini secara otomatis di latar belakang.
Kloning proyek di bawah ini dan ikuti arahan di readme. Hasil akhirnya adalah paket penginstal yang akan menempatkan file daftar agen peluncuran di / Library / LaunchAgents / dan skrip shell di / Library / Dukungan Aplikasi / melonsmasher /.
Pastikan untuk mengedit skrip shell (auto-vpn) dengan nama koneksi VPN Anda dan alamat IP yang ada di jaringan VPN. Anda dapat mengubah interval run dalam file plist (com.melonsmasher.autovpn.plist).
https://github.com/MelonSmasher/OSX-AutoVPN
sumber
Keindahan AppleScripts adalah Anda dapat melakukan hampir semua hal dengan itu dan gratis, downside adalah bahwa mereka biasanya tidak terlalu responsif (polling pada interval waktu yang tetap) dan kekurangan fitur yang hanya dimiliki oleh aplikasi MAC OS X asli. Aplikasi koneksi ulang VPN yang bagus dan baru adalah "VPN Monitor" di app store, terhubung kembali secara instan saat koneksi VPN turun, dapat terhubung kembali ke layanan VPN yang berbeda jika layanan yang diinginkan turun, terhubung saat start-up, melacak downtime Anda dan menggunakan sumber daya sistem minimum untuk berjalan di latar belakang sebagai aplikasi statusbar. Monitor VPN
sumber