使用bat一键修改ip地址(包括静态、动态ip)

单位分内外网,每次拔掉网线得重新设置ip,之前在别人电脑上试过过小工具ip地址切换器,自己电脑却不行了,还是用bat稳一点,顺便记录下遇到的问题。

代码中需修改两点:

一、name="以太网 5"(名称中居然有空格,害我找半天= =。可以在cmd中输入netsh interface ip show addresses查看)

二、静态ip的相关信息。

1.设置ip

参数说明:

1.source:获取IP的途径。动态获取,则为dhcp,手动设置,则为static。

2.addr:要设置的IP地址。

3.mask:子网掩码。

4.gateway:网关地址。

5.gwmetric:网关跃点数,可以设置为整型数值,也可以设置为“自动”:auto。

2.设置dns

参数说明:

1.name:网络连接名称,一般为“本地连接”。你可以在“控制面板”->“网络连接”中看到。

2.source:获取IP的途径。动态获取,则为dhcp,手动设置,则为static。

3.addr:要设置的IP地址。

4.register:

5.none: 禁用动态 DNS 注册。

6.primary: 只在主 DNS 后缀下注册。

7.both: 在主 DNS 后缀下注册,也在特定连接后缀下注册。

8.index:设置的DNS的顺序号。

报错:1.文件名、目录名或卷标语法不正确。检查name="以太网 5"是否输入错误;

2.dns不正确或不存在。实际已修改dns,想不报错的话在dns地址196.xx.xx.xx后 加">null"(语句中已加入)

@echo off ::修改ip >nul 2>&1 "%SYSTEMROOT%\system32\cacls.exe" "%SYSTEMROOT%\system32\config\system" if '%errorlevel%' NEQ '0' ( goto UACPrompt ) else ( goto gotAdmin ) :UACPrompt 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 修改ip地址:1:自动获取ip, 2:内网ip, 3:外网ip set sel= set/p sel=请选择修改方式: if "%sel%"=="1" goto auto if "%sel%"=="2" goto inside if "%sel%"=="3" goto outside echo 您没有选择修改方式。 goto end :auto "以太网 5"中间有空格 ::netsh interface ip set address name ="以太网 5" source = dhcp ::netsh interface ip set dns name ="以太网 5" source = dhcp netsh interface ip set address name="以太网 5" source=dhcp netsh interface ip delete dns "以太网 5" all ipconfig /flushdns echo 更改IP地址完成! goto end :inside echo 正在更改IP地址,请稍等...... netsh interface ip set address name="以太网 5" source=static addr=196.73.11.23 mask=255.255.255.0 gateway=196.73.11.254 gwmetric=1 netsh interface ip set dns name="以太网 5" source=static addr=196.73.11.20 >null register=PRIMARY netsh interface ip add dns name="以太网 5" addr=196.73.11.21 >null index=2 ipconfig /flushdns echo 更改IP地址完成! goto end :outside echo 正在更改IP地址,请稍等...... netsh interface ip set address name="以太网 5" source=static addr=196.21.265.23 mask=255.255.255.0 gateway=196.21.265.254 gwmetric=1 netsh interface ip set dns name="以太网 5" source=static addr=196.21.265.41 >null ipconfig /flushdns echo 更改IP地址完成! goto end echo 更改IP地址完成! goto end :end pause :若显示文件名、目录或语法不正确,检查name是否为“以太网”。在cmd中查看netsh interface ip show addresses

原文链接:https://blog.csdn.net/Danieaz/article/details/123662618

© 版权声明
THE END
喜欢就支持一下吧
点赞10 分享