当前位置:

【技术分享】Windows系统下通过代码实现IP地址按需自动切换

洛克 2025-03-13 1378 0

公司需要手动指定IP和DNS,外面需要自动获取IP和DNS。

每次都需要手动设置,步骤繁琐复杂,对于不懂IT的小白来说非常困难。

有没有简单的方法,鼠标点两下就自动配置,自动切换呢?

有!

通过bat脚本的方式实现。

  1. 将下面代码,复制到txt文档里

  2. 将手动指定IP和手动DNS里面的IP改成公司的IP

  3. 保存文档,变更后缀格式,从xxx.txt变更为xxx.bat

  4. 右键xxx.bat,以管理员方式运行

@echo off
:MAIN_MENU
cls
echo 请选择要执行的操作:
echo ----------------------------
echo [1] IP信息查看
echo [2] IP自动获取
echo [3] DNS自动获取
echo [4] 手动指定IP
echo [5] 手动指定DNS
echo [Q] 退出程序
echo ----------------------------
choice /c 12345Q /n /m "请输入选项(1/2/3/4/5/Q): "

if errorlevel 6 goto :EXIT
if errorlevel 5 goto :manualDNS
if errorlevel 4 goto :manual-IP
if errorlevel 3 goto :autoDNS
if errorlevel 2 goto :autoIP
if errorlevel 1 goto :IPcheck

:IPcheck
echo 正在查看当前IP信息...
rem ----------------------------
@echo off
ipconfig /all
echo 执行成功!按键盘任意键结束…
echo (或直接关闭这个窗口)
rem ----------------------------
pause
goto :MAIN_MENU

:autoIP
echo 正在获取IP...
rem ----------------------------
@echo off
netsh interface ip set address "WLAN" source=dhcp
ipconfig /all
echo 执行成功!按键盘任意键结束…
echo (或直接关闭这个窗口)
rem ----------------------------
pause
goto :MAIN_MENU

:autoDNS
echo 正在获取DNS...
rem ----------------------------
@echo off
netsh interface ip set dns "WLAN" source=dhcp
ipconfig /all | find "DNS 服务器"
echo 执行成功!按键盘任意键结束…
echo (或直接关闭这个窗口)
rem ----------------------------
pause
goto :MAIN_MENU

:manual-IP
echo 正在手动指定IP、子网掩码和网关...
rem ----------------------------
@echo off
netsh interface ip set address name="WLAN" source=static addr=172.16.3.13 mask=255.255.255.0 gateway=172.16.3.1
ipconfig /all
echo 执行成功!按键盘任意键结束…
echo (或直接关闭这个窗口)
rem ----------------------------
pause
goto :MAIN_MENU

:manualDNS
echo 正在手动指定DNS...
rem ----------------------------
@echo off
netsh interface ip set dns "WLAN" static 192.168.240.205 primary
ipconfig /all | find "DNS 服务器"
echo 执行成功!按键盘任意键结束…
echo (或直接关闭这个窗口)
rem ----------------------------
pause
goto :MAIN_MENU

:EXIT
echo 程序已退出
exit /b

下图是代码中需要根据实际情况进行替换的信息,主要为IP和DNS的变更。

微信截图_20250313163727.png

以下是部分实际效果截图

微信截图_20250313165723.png

微信截图_20250313165745.png