070510 增加了創建多套默認配置的選項,選“3”創建多套配置后后,可以選“1”快速恢復成需要的配置。
061105 又更新了,增加了DHCP,和察看當前狀態的功能。
代碼:
@echo off
cls
color 0A
echo ****************
echo IP地址快速切換
echo 作者:Benase
echo 版本:070510
echo ****************set IP=192.168.100.1
set MASK=255.255.255.0
set GATEWAY=192.168.100.1
set DNS1=202.106.0.20
set DNS2=202.106.196.115
set INTERFACE=本地連接
set POLICY=1:MENU
echo.
echo 快速設置請按 1
echo.
echo 手工設置請按 2
echo.
echo 創建默認請按 3
echo.
echo 自動獲取請按 4
echo.
echo 察看狀態請按 5
echo.
echo 退出請按任意鍵
echo.
set /p KEY= [請輸入您的選擇:]if %KEY% == 1 goto QUICK
if %KEY% == 2 goto MANUAL
if %KEY% == 3 goto DEFAULT
if %KEY% == 4 goto DHCP
if %KEY% == 5 goto LOOK
goto END
:LOOK
echo.
ipconfig
echo.
echo 本程序默認修改的是“本地連接”的設置
echo.
echo 需要修改請按相應的數字鍵,
echo.
echo 例如:輸入2表示改為“本地連接 2”
echo.
echo 英文操作系統請按e2,任意鍵繼續!
echo.
set /p INTEMP= [請輸入本地連接的編號]
if %INTEMP% == 1 set INTERFACE=本地連接
if %INTEMP% == 2 set INTERFACE=本地連接 2
if %INTEMP% == 3 set INTERFACE=本地連接 3
if %INTEMP% == 4 set INTERFACE=本地連接 4
if %INTEMP% == 5 set INTERFACE=本地連接 5
if %INTEMP% == e1 set INTERFACE=Local Area Connection
if %INTEMP% == e2 set INTERFACE=Local Area Connection 2
if %INTEMP% == e3 set INTERFACE=Local Area Connection 3
if %INTEMP% == e4 set INTERFACE=Local Area Connection 4
if %INTEMP% == e5 set INTERFACE=Local Area Connection 5
cls
goto MENU:QUICK
set /p POLICY= [請輸入默認設置的名稱,中文、英文或數字:]
if exist ip"%POLICY%".txt goto QDO
echo.
echo 沒有發現默認設置文件!
goto END:QDO
netsh -f .\ip"%POLICY%".txt
echo.
echo %POLICY% 默認設置已經完成設置!
goto END:DEFAULT
set /p POLICY= [請輸入默認設置的名稱,中文、英文或數字]
netsh -c interface ip dump > .\ip"%POLICY%".txt
echo.
echo %POLICY% 默認設置已經生成!
goto END:DHCP
echo.
echo 快速設置IP地址和DNS為“自動獲得”
echo.
netsh interface ip set address "%INTERFACE%" dhcp
netsh interface ip set dns "%INTERFACE%" dhcp
goto END:MANUAL
ECHO.
ECHO 您選擇了手工修改設置。
ECHO.echo 默認IP地址是%IP%,回車輸入默認地址
set /p IP= [請輸入 IP 地址:]
echo.
echo 默認MASK是%MASK%,回車輸入默認值
set /p MASK= [請輸入 MASK 地址:]
echo.
echo 默認網關地址是%GATEWAY%,回車輸入默認地址
set /p GATEWAY= [請輸入GATEWAY地址:]
ECHO.
echo 默認主DNS地址是%DNS1%,回車輸入默認地址
set /p DNS1= [請輸入主 DNS地址:]
echo.
echo 默認第二DNS地址是%DNS2%,回車輸入默認地址
set /p DNS2= [請輸入第二DNS地址:]
echo.
goto LIST
:LIST
echo 即將對“%INTERFACE%”進行設置
ECHO 即將生效的 IP 地址是%IP%
ECHO 即將生效的 MASK 是%MASK%
ECHO 即將生效的GATEWAY地址是%GATEWAY%
ECHO 即將生效的 主DNS 地址是%DNS1%
ECHO 即將生效的第二DNS地址是%DNS2%
echo.
set /p REEN= [馬上更改請按 1,重新設置請按 2,退出請按任意鍵]
if %REEN% == 1 goto DO
if %REEN% == 2 goto MANUAL
GOTO END:DO
echo.
echo 正在更改IP......
echo.echo IP地址及子網掩碼設置完成
netsh interface ip set address name="%INTERFACE%" source=static addr=%IP% mask=%MASK%
echo 網關地址設置完成
netsh interface ip set address name="%INTERFACE%" gateway=%GATEWAY% gwmetric=0
echo 主DNS地址設置完成
netsh interface ip set dns name="%INTERFACE%" source=static addr=%DNS1% register=PRIMARY
echo 第二DNS地址設置完成
netsh interface ip add dns name="%INTERFACE%" addr=%DNS2% index=2
goto end:end
echo.
pause