用批处理切换IP

由于安全的原因,经常要在不同环境上切换IP,手动改太麻烦了,找了一下资料,用了一个批处理,用来自动获取和设置固定IP

@echo off
>nul 2>&1 "%SYSTEMROOT%system32cacls.exe" "%SYSTEMROOT%system32configsystem"
if '%errorlevel%' NEQ '0' (
goto UACPrompt
) else ( goto gotAdmin )
:UACPrompt
if exist "%temp%getadmin.vbs" ( goto gotAdmin  )
echo Set UAC = CreateObject^("Shell.Application"^) > "%temp%getadmin.vbs"
echo UAC.ShellExecute "%~s0", "", "", "runas", 1 >> "%temp%getadmin.vbs"
"%temp%getadmin.vbs"
exit /B
:gotAdmin
if exist "%temp%getadmin.vbs" ( del "%temp%getadmin.vbs" )



@echo off

ECHO *****************************************************************

ECHO * 设置无线IP地址为公司路由模式                                   *

ECHO * Copyright (C) 2013-2020                                       *

ECHO * By 小马哥                                                    *

ECHO *****************************************************************

ECHO.

echo netsh命令依赖“远程注册表服务”,否则将会提示“指定了无效的接口”

echo 开启远程注册表服务......

net start remoteregistry

echo 设定IP地址....  

netsh -c interface ip set address "无线网络连接" static 192.168.167.44 255.255.255.0 192.168.167.1

echo 设定DNS1服务器地址....

netsh interface ip set dns name="无线网络连接" source=static addr=202.96.128.86 register=PRIMARY

echo 关闭远程注册表服务......

net stop remoteregistry

echo 设置静态IP完毕,按任意键退出

ping -t www.baidu.com

自动获取

@echo off
>nul 2>&1 "%SYSTEMROOT%system32cacls.exe" "%SYSTEMROOT%system32configsystem"
if '%errorlevel%' NEQ '0' (
goto UACPrompt
) else ( goto gotAdmin )
:UACPrompt
if exist "%temp%getadmin.vbs" ( goto gotAdmin  )
echo Set UAC = CreateObject^("Shell.Application"^) > "%temp%getadmin.vbs"
echo UAC.ShellExecute "%~s0", "", "", "runas", 1 >> "%temp%getadmin.vbs"
"%temp%getadmin.vbs"
exit /B
:gotAdmin
if exist "%temp%getadmin.vbs" ( del "%temp%getadmin.vbs" )



@echo off

ECHO *****************************************************************

ECHO * 设置无线IP地址为家里路由模式(自动获取IP地址)                 *

ECHO * Copyright (C) 2013-2020                                       *

ECHO * By 小马哥                                                    *

ECHO *****************************************************************

ECHO.

echo netsh命令依赖“远程注册表服务”,否则将会提示“指定了无效的接口”

echo 开启远程注册表服务......

net start remoteregistry

echo 设定地址为自动获取....  

netsh -c interface ip set address "无线网络连接" dhcp

echo 设定DNS服务器为自动获取.... 

netsh interface ip set dns name="无线网络连接" dhcp

echo 关闭远程注册表服务......

net stop remoteregistry

echo  自动获取IP设置完毕,按任意键退出

ping -t www.baidu.com
原文地址:https://www.cnblogs.com/szyicol/p/13738543.html