我有一个MacBook pro,小牛队正在运行.我正在寻找一种连接终端VPN网络的方法.
我想这样做的原因是我想用Python编写一个小程序,自动检测30台服务器中最快的VPN服务器.这是一个自我激励的练习项目,所以我想我会坚持使用Python语言.所以我打破了任务,认为程序可能需要首先连接到服务器之一,然后运行速度测试.
所以我现在陷入了第一步,因为我意识到建立VPN连接似乎是在系统级别,因为我在python中找不到预先编写的VPN模块.所以我想我会告诉Python告诉系统shell连接到VPN服务器.
当我四处寻找时,我通过输入apropos vpn找到了一个命令.它被称为vpnagent.但是man vpnagent没有提供有用的信息,也没有vpnagent告诉我实用程序没有安装在我的Mac上.我发现的另一个有趣的事情是pppd,但是设置配置文件非常令人沮丧.我无法做到这一点.
那么有没有一种使用终端连接到VPN的方法?另外,由于我是编程新手,所以对我的项目的任何评论也是受欢迎的.先感谢您.
解决方法:
你可以使用these wonderful bash functions from @slhck at Super User:
要连接到不同的VPN,请在Network.prefpane中拥有多个VPN.
function vpn-connect {
/usr/bin/env osascript <<-EOF
tell application "System Events"
tell current location of network preferences
set VPN to service "UniVPN" -- your VPN name here
if exists VPN then connect VPN
repeat while (current configuration of VPN is not connected)
delay 1
end repeat
end tell
end tell
EOF
}
function vpn-disconnect {
/usr/bin/env osascript <<-EOF
tell application "System Events"
tell current location of network preferences
set VPN to service "UniVPN" -- your VPN name here
if exists VPN then disconnect VPN
end tell
end tell
return
EOF
}
不要忘记更改VPN的名称.