早在2006年的时候Pop就参考网上的资料写过一篇文章(DOS下修改IP和DNS的地址信息的批处理+可保存记录的IP自动切换软件 https://429006.com/article/technology/123.htm),只是当时比较简单,只能保存一组IP地址和DNS地址
前几天又有这个需求的了,发现网上有个更好的批处理,所以就整理了一下,重新发出来了。
将下面的代码保存为 *.bat 格式的文件,如 IP_Change.bat,然后双击运行
@echo.
@echo ※※※※※※※※※※※※※※※※※※※※※※※※※※※※
@echo ※ ※
@echo ※ Pop's IP及DNS地址切换程序 ※
@echo ※ ※
@echo ※ 本命令用于自动设置无线网络和本地连接的IP地址 ※
@echo ※ ※
@echo ※ ※
@echo ※ 1 - 设置无线网络地址为192.168.31.88,用于公司WIFI ※
@echo ※ ※
@echo ※ 2 - 设置无线网络地址为自动获取,用于外部上网 ※
@echo ※ ※
@echo ※ 3 - 设置本地连接地址为192.168.1.36,用于网线连接 ※
@echo ※ ※
@echo ※ 4 - 设置本地连接地址为自动获取,用于外部上网 ※
@echo ※ ※
@echo ※ 5 - 显示本机所有网卡的接口名称 ※
@echo ※ ※
@echo ※※※※※※※※※※※※※※※※※※※※※※※※※※※※
@echo.
@echo.
@echo.
@echo ******请选择设置方式[1,2,3,4,5],并按回车确定执行******
@echo.
@echo.
@echo.
@echo.
@ SET /P ST="方式选择: "
echo.
if /I "%ST%"=="1" goto setip1
if /I "%ST%"=="2" goto setip1no
if /I "%ST%"=="3" goto setip2
if /I "%ST%"=="4" goto setip2no
if /I "%ST%"=="5" goto setipshow
:setip1
cls
@echo.
@echo ---------------------------------------------
@echo 本命令将自动为“无线网络连接”填写以下内容:
@echo IP地址: 192.168.31.88
@echo 子网掩码:255.255.255.0
@echo 网关: 192.168.31.1
@echo 首选DNS: 180.76.76.76
@echo 备用DNS: 114.114.114.114
@echo ---------------------------------------------
@echo.
@echo.
@echo.
@echo.
@echo.
@ pause
@echo 设置IP地址...
@echo off
netsh interface ip set address name="WLAN" source=static addr=192.168.31.88 mask=255.255.255.0 gateway=192.168.31.1
@echo 设置首先DNS...
@echo off
netsh interface ip set dns name="WLAN" source=static addr=180.76.76.76 register=primary
@echo 设置备用DNS...
@echo off
netsh interface ip add dns name="WLAN" 114.114.114.114 index=2
@echo 设置完成。
@ pause
exit
:setip1no
cls
@echo.
@echo ----------------------------------------
@echo 本命令将自动为“无线网络连接”填写以下内容:
@echo.
@echo 自动获取IP地址
@echo 自动获取DNS服务器地址
@echo -----------------------------------------
@echo.
@echo.
@echo.
@echo.
@ pause
@echo.
@echo off
@echo 设置自动获取IP地址...
netsh interface ip set address name="WLAN" source=dhcp
@echo 设置自动获取DNS服务器地址...
netsh interface ip set dns name="WLAN" source=dhcp
@echo.
@echo 设置完成。
@ pause
exit
:setip2
cls
@echo.
@echo ---------------------------------------------
@echo 本命令将自动为“本地连接”填写以下内容:
@echo IP地址: 192.168.1.36
@echo 子网掩码:255.255.255.0
@echo 网关: 192.168.1.1
@echo 首选DNS: 180.76.76.76
@echo 备用DNS: 114.114.114.114
@echo ---------------------------------------------
@echo.
@echo.
@echo.
@echo.
@echo.
@ pause
@echo.
@echo off
@echo 设置IP地址...
netsh interface ip set address name="Local Area Connection" source=static addr=192.168.1.36 mask=255.255.255.0 gateway=192.168.1.1
@echo 设置首先DNS...
@echo off
netsh interface ip set dns name="Local Area Connection" source=static addr=180.76.76.76 register=primary
@echo 设置备用DNS...
@echo off
netsh interface ip add dns name="Local Area Connection" 114.114.114.114 index=2
@echo 设置完成。
@ pause
exit
:setip2no
cls
@echo.
@echo ----------------------------------------
@echo 本命令将自动为“本地连接”填写以下内容:
@echo.
@echo 自动获取IP地址
@echo 自动获取DNS服务器地址
@echo -----------------------------------------
@echo.
@echo.
@echo.
@echo.
@ pause
@echo.
@echo off
@echo 设置自动获取IP地址...
netsh interface ip set address name="Local Area Connection" source=dhcp
@echo 设置自动获取DNS服务器地址...
netsh interface ip set dns name="Local Area Connection" source=dhcp
@echo.
@echo 设置完成。
@ pause
exit
:setipshow
cls
@echo.
@echo ----------------------------------------
@echo 显示本机所有网卡的接口名称
@echo -----------------------------------------
@echo off
netsh int ip show interfaces
@echo.
@echo 设置完成。
@ pause
exit
注意:
address name和dns name的值要根据本机的实际情况进行修改,代码中的"WLAN"和"Local Area Connection"并不是所有都通用,可以先选第5项获取网卡接口名称。