脚本功能
这个批处理脚本可以自动检测并配置内外网同时上网。它会自动识别连接到内网和外网的网络适配器,并为这两个适配器配置相应的静态路由。
使用说明
- 打开记事本,将之前给出的批处理脚本粘贴到其中。
- 选择“文件”>“另存为”,然后将文件类型更改为“所有文件”。
- 将文件保存为“network_config_tool.bat”(确保文件扩展名为.bat)。
- 以管理员身份运行批处理脚本。右键单击“network_config_tool.bat”,选择“以管理员身份运行”。
运行脚本后,您将看到一个简单的文本界面。选择“1”并按Enter键以自动获取并配置网络信息。配置完成后,按任意键返回主菜单。
注意事项
- 这个批处理脚本假设您只有两个活动的网络适配器。如果您的计算机有多个活动的网络适配器,脚本可能需要进一步修改以正确识别内外网网卡。
- 这个脚本可能不适用于所有网络环境,因为网络配置和需求可能因组织而异。所以,在您的特定环境中使用该脚本前,请确保与网络管理员沟通以了解可能需要的其他配置。
- 如果您希望在计算机重启后保留静态路由设置,请确保脚本中的route -p add命令已经替换了之前的route add命令。
@echo off
setlocal enabledelayedexpansion
:menu
cls
echo =====================================
echo 网络配置工具
echo =====================================
echo.
echo 1. 获取并配置网络信息
echo 2. 退出
echo.
set /p choice=请输入您的选择 (1-2) :
if %choice%==1 goto configure_network
if %choice%==2 goto exit
goto menu
:configure_network
echo.
echo 获取网卡信息...
wmic nicconfig where "IPEnabled='TRUE'" get Description, IPAddress, DefaultIPGateway, SubnetMask, DNSServerSearchOrder /format:table > temp.txt
set /a count=0
for /f "skip=1 tokens=1-5" %%a in (temp.txt) do (
set /a count+=1
set "desc_!count!=%%a"
set "ip_!count!=%%b"
set "gateway_!count!=%%c"
set "subnet_!count!=%%d"
set "dns_!count!=%%e"
)
echo 测试网卡连接...
for /l %%i in (1, 1, %count%) do (
set "ping_result="
for /f "tokens=6" %%a in ('ping -n 1 -S !ip_%%i! www.baidu.com ^| findstr /I /C:"已发送"') do set ping_result=%%a
if not "!ping_result!"=="" (
set /a outer_adapter=%%i
) else (
set /a inner_adapter=%%i
)
)
echo 配置静态路由...
route -p delete 0.0.0.0 mask 0.0.0.0
route -p add 0.0.0.0 mask 0.0.0.0 !gateway_%outer_adapter%!
route -p add !ip_%inner_adapter%! mask !subnet_%inner_adapter%! !gateway_%inner_adapter%!
echo 内网网卡: !desc_%inner_adapter%!
echo 外网网卡: !desc_%outer_adapter%!
del temp.txt
echo.
echo 配置完成!按任意键返回主菜单...
pause > nul
goto menu
:exit
exit