在我的大学,我们也使用这样一个网络,要求用户登录。登录不是通过浏览器而是通过VPN进行的,这使得强制网络助手完全无用且烦人。
所以我在这里发布一个指南,介绍如何用实际有用的东西替换这个“功能”,我不希望它迷失并对其他人有用
#1。创建一个名为“Captive Network Assistant”的bash脚本,将以下代码粘贴到内部,并在 / System / Library / CoreServices / Captive Network中将文件替换为相同的文件Assistant.app/Contents/MacOS /
#!/bin/bash
scriptlocation="/System/Library/CoreServices/Captive Network Assistant.app/Contents/MacOS/vpn.scpt"
osascript "$scriptlocation"
#2。创建一个名为“vpn.scpt”的AppleScript,将其放在bash-script中提到的路径下,并将以下代码放在其中:
set wlanssid to do shell script "networksetup -getairportnetwork en1 | cut -c 24-"
connectVPN(wlanssid)
on connectVPN(SSID)
tell application "System Events"
tell current location of network preferences
local VPNService
if (SSID = "XYZXYZ") then --WLANNAME
set VPNService to service "XYZXYZ-VPN" --VPNNAME
set isConnected to connected of current configuration of VPNService
if not isConnected then
connect VPNService
end if
end if
end tell
end tell
end connectVPN
每次计算机连接到“强制网络”时都会执行此脚本 如果WLAN的SSID称为“XYZXYZ”,它将启动名为XYZXYZ-VPN的VPN-Connection
可以修改脚本以支持多个专属网络。
还可以将Growl-Notifications添加到脚本中。 我的完整脚本如下所示:http://pastebin.com/Rtp9EqQR