我的随笔

记录生活点滴与灵感瞬间

Windows 快速切换网关

在用校园网时,经常会遇到校园网突然抽风,于是我购买了个cpe,用于在校园网卡顿时切换到流量网络。不过在打游戏时,校园网出现卡顿,再手动切换网关太影响战局。为了提高切换效率,我写了一个简单的.bat脚本,用于一键切换网关:

@echo off

for /f "tokens=3" %%a in ('route print ^| findstr "0.0.0.0"') do (
    set gw=%%a
    goto :break
)
:break

set gw=%gw: =%

if "%gw%"=="192.168.8.1" (
    set gwname=CPE
    set targetgw=192.168.8.254
    set targetname=校园网
) else if "%gw%"=="192.168.8.254" (
    set gwname=校园网
    set targetgw=192.168.8.1
    set targetname=CPE
) else (
    set gwname=未知网关
    set targetgw=192.168.8.1
    set targetname=CPE
)

echo 当前默认网关: %gwname%
echo.

echo 按任意键切换
pause >nul

netsh interface ip set address name="以太网" static 192.168.8.2 255.255.255.0 %targetgw%
netsh interface ip set dns name="以太网" static %targetgw%
echo 已切换到 %targetname%

打开后只需敲一下空格,就能快速切换。