仅限于GlobalProtect
GlobalProtect连接之后,IP还是没有改变那么有可能是网关优先级的问题。
win是bat运行需要管理员权限
mac是sh运行需要管理员权限
切记只要您更换了网络就需要重新运行(也可能是我电脑的问题)
软件连接成功之后再运行以下代码
win系统代码
注:可以输入多个IP如果您有多个学校的话需要加个空格
@echo off
:: 设置多个网关,使用空格分隔
set gateways=替换成您的IPV4 如果有多个VPN
set success=0
for %%i in (%gateways%) do (
if %success% equ 0 (
route delete 0.0.0.0 mask 0.0.0.0
route add 0.0.0.0 mask 0.0.0.0 %%i metric 1
if not errorlevel 1 (
set success=1
)
)
)
mac代码
注:理论上和win系统一样但是没有尝试,自行解决
#!/bin/bash
# 设置多个网关,使用空格分隔
gateways=("替换成您的IPV4" "如果有多个VPN")
success=0
for gateway in "${gateways[@]}"; do
if [ "$success" -eq 0 ]; then
# 删除默认路由
sudo route -n delete default &> /dev/null
# 添加新的默认路由
sudo route -n add default "$gateway" &> /dev/null
# 检查命令是否成功
if [ $? -eq 0 ]; then
success=1
fi
fi
done