Как я могу сказать, если OS X подключен к сети VPN из командной строки?
Работая ifconfig
без каких-либо аргументов, когда я подключен, я вижу, что есть utun0
интерфейс, который выглядит как VPN-соединение. Когда я отключаюсь, он уходит.
Я считаю, что я мог бы использовать что-то вроде этого, чтобы проверить строку utun0
и подсчитать вхождения:
ifconfig | grep -c utun0
Но есть ли более простой или эффективный способ проверить это? Если utun0
это устройство или даже псевдоустройство, я не смогу проверить, существует ли оно с чем-то вроде:
if [ -a '/dev/utun0' ]
К сожалению , я не вижу каких - либо изменений в этой директории при подключении и отключении, я просто вижу /dev/tun0
сквозь , /dev/tun15
и я не могу cat
их даже с sudo
...
Есть ли более простой способ узнать, есть ли у меня VPN-соединение?
Ответы:
Вы также можете, начиная с Горного Льва 1 , использовать команду scutil.
Например:
Для получения более подробной справки вы можете посмотреть справочную страницу или запустить:
Примечания:
источник
Так как вы определяете интерфейс через Системные настройки, простой способ сделать это - использовать AppleScript. Вот фрагмент, который будет делать то, что вы хотите сделать:
Сохраните это как скрипт где-нибудь (и убедитесь, что вы сохранили его как файл скрипта!).
В любое время, когда вы хотите запустить его, используйте команду:
osascript /path/to/script.scpt
Или создайте псевдоним, который выполняет это.
источник