求一批处理修改IP地址和计算机名

作者&投稿:只河 (若有异议请与网页底部的电邮联系)
怎样通过批处理设置IP和计算机名~

要修改地址的网络“以太网”(非本地连接)

ip:192.168.1.22
掩码:255.255.255.0
网关:192.168.1.1
DNS:192.168.1.1
计算机名:XXX-22
批命令内容如下:
echo off
netsh interface ipv4 set address "以太网" static 192.168.1.22 255.255.255.0 192.168.1.1
netsh interface ipv4 set dns "以太网" static 192.168.1.1 primary
wmic computersystem where "name='%computername%'” call rename "XXX-22“
第一条命令设置IP地址,第二条命令设置DNS,第三条命令修改计算机名。
希望对你有用

wmic computersystem where "name='当前计算机名'" call rename 修改后计算机名
没分 就给一个

如XP系统将以下代码另存为mach.bat 可满足你的要求(IP 计算机名称都可以任意填写或自动更改)
不过MAC设置 需要参考个人机器注册表网卡ID键值所以MAC设置以下代码并不通用 需要视情况改动 代码行上有说明视情况做更改
如使用IPV4或IPV6协议的需略微改下NETSH加载项接口名称 IP--IPV4或IPV6

@echo off
mode con cols=80 lines=27&color 1f
:start
rem eth //eth 为网卡名称,可在网络连接中查询,如"本地链接"
set eth="本地连接"
rem //设置菜单
echo 1 手动设置IP
echo 2 自动设置IP
echo 3 动态设置IP
echo 4 查看本机IP状况
echo 5 更改计算机名
echo 6 更改MAC
echo 7 退出
echo 8 重启
echo 9 DNS查询
set /p answer=请按数字选择:
if %answer%==1 goto 1
if %answer%==2 goto 2
if %answer%==3 goto 3
if %answer%==4 goto 4
if %answer%==5 goto 5
if %answer%==6 goto 6
if %answer%==7 goto 7
if %answer%==8 goto 8
if %answer%==9 goto 9dns
cls
echo --------------------------------
if "%answer%"=="%answer%" echo 输入错误,请重新输入正确数字选项
echo --------------------------------
goto :start
:1
echo 请输入IP 例如:192.168.1.XXX
set /p A=IP:
echo %A%|findstr "^[0-9]*\.[0-9]*\.[0-9]*\.[0-9]*$">nul||goto fail
set _A=%A:.= %
call :check %_A%
:check
if "%4"=="" goto fail
for %%i in (%1 %2 %3 %4) do (
if %%i gtr 255 goto fail
)
goto A1
:fail
cls
echo 格式错误,请重新输入
echo.
goto :1
:A1
echo 正在检查网络. . .
echo.
for /f "tokens=1 delims= " %%i in ('arp -a^|find " "') do set gw=%%i
if %gw%==No goto A2
echo 网关的地址为%gw%
echo.
goto 1b
:A2
echo 无网络数据
echo.
:1b
echo 请输入网关 例如:192.168.1.1
set /p B=网关:
echo %B%|findstr "^[0-9]*\.[0-9]*\.[0-9]*\.[0-9]*$">nul||goto fail
set _B=%B:.= %
call :check %_B%
:check
if "%4"=="" goto fail
for %%i in (%1 %2 %3 %4) do (
if %%i gtr 255 goto fail
)
goto 1c
:fail
echo 格式错误,请重新输入
echo.
goto :1b
:1c
echo.
echo 请输入DNS 请正确输入本省DNS如不清楚请查询
set /p C=DNS:
echo %C%|findstr "^[0-9]*\.[0-9]*\.[0-9]*\.[0-9]*$">nul||goto fail
set _C=%C:.= %
call :check %_C%
:check
if "%4"=="" goto fail
for %%i in (%1 %2 %3 %4) do (
if %%i gtr 255 goto fail
)
goto 1d
:fail
echo 格式错误,请重新输入
echo.
goto :1c
:1d
rem ip //ip 为你想更改的IP
set ip=%A%
rem gateway //gateway 为网关地址
set gateway=%B%
rem netmasks //netmasks 为子网掩码
set netmasks=255.255.255.0
rem dns //dns 为首选DNS
set dns=%C%
echo 正在将本机IP更改到: %ip% 请等候...
rem
if %gateway%==none netsh interface ip set address %eth% static %ip% %netmasks% %gateway% > nul
if not %gateway%==none netsh interface ip set address %eth% static %ip% %netmasks% %gateway% 1 > nul
if %dns%==none netsh interface ip set dns %eth% static %dns%> nul
if not %dns%==none netsh interface ip set dns %eth% static %dns%> nul
echo...................
echo 检查更改后本机IP:
echo...................
ipconfig /ALL
echo 成功将本机IP更改为%ip%!
pause>nul
CLS
goto :start
:2
echo 正在进行本地IP设置,请稍等...
rem //以下设置可以根据需要更改 依次为IP 掩码 网关 首选DNS 备选DNS
netsh interface ip set address %eth% static 192.168.1.24 255.255.255.0 192.168.1.1 1
netsh interface ip set DNS %eth% static 61.139.2.69
netsh interface ip add dns %eth% 202.98.96.68 index=2
if exist %SystemRoot%\setupapi.log del /q %SystemRoot%\setupapi.log
echo ----
echo 全部设置完成!
pause>nul
goto :start
:3
echo 正在进行动态IP设置,请稍等...
echo. IP 地址正在从DHCP自动获取...
netsh interface ip set address %eth% dhcp
echo. DNS地址正在从DHCP自动获取...
netsh interface ip set dns %eth% dhcp
echo ----
echo 全部设置完成!
pause
goto :start
:4
echo 检查%eth%状况
ipconfig /all
pause>nul
goto :start
:5
echo 输入计算机名:
set /p Name=

for /l %%i in (3,-1,0) do ping -n 2 127.0.0.%%i>nul && @echo. %%i s 后修改机器名……

reg add "HKEY_CURRENT_USER\Software\Microsoft\Windows\ShellNoRoam" /v @ /t REG_SZ /d "%Name%" /f
reg add "HKLM\SYSTEM\CurrentControlSet\Control\ComputerName\ComputerName" /v "ComputerName" /t REG_SZ /d "%Name%" /f
reg add "HKLM\SYSTEM\CurrentControlSet\Control\ComputerName\ActiveComputerName" /v "ComputerName" /t REG_SZ /d "%Name%" /f
reg add "HKLM\SYSTEM\CurrentControlSet\Services\Eventlog" /v "ComputerName" /t REG_SZ /d "%Name%" /f
reg add "HKLM\SYSTEM\CurrentControlSet\Control\ComputerName\ComputerName" /v "ComputerName" /t REG_SZ /d "%Name%" /f
reg add "HKLM\SYSTEM\CurrentControlSet\Services\Tcpip\Parameters" /v "NV Hostname" /t REG_SZ /d "%Name%" /f
reg add "HKLM\SYSTEM\CurrentControlSet\Services\Tcpip\Parameters" /v "Hostname" /t REG_SZ /d "%Name%" /f
echo 刷新注册表. . .
if exist c:\winnt (secedit /refreshpolicy machine_policy /enforce) else (gpupdate /force)
PAUSE
GOTO :start
:6
for /f "tokens=12 delims= " %%i in ('ipconfig/all^|find "Physical Address"') do set localmac=%%i
echo 当前MAC地址:%localmac%
:6v
echo ----------------------------
echo 输入MAC格式:11-22-33-44-55-66
echo.
echo.
set /p macx=输入MAC地址:
::----------------------------以下为判断MAC地址格式正误代码
echo %macx%|findstr "^[0-F][0-F]\-[0-F][0-F]\-[0-F][0-F]\-[0-F][0-F]\-[0-F][0-F]\-[0-F][0-F]$">nul||goto fail
echo.
goto 6x
:fail
cls
echo %macx% 错误的mac请重新输入
echo.
goto :6v
:6x
::-----------------------------以下为将11-22-33-44-55-66格式转换为注册表要求格112233445566值赋予mac
set mac=%macx:-=%
::------------------------------
goto 6r

::这段代码无效---------------------------------------------------------------------------------无效
goto :6a
:6a
echo -------------------------
set /p mac=输入MAC:
call :stringlenth "%mac%" num ::判断数据长度
:6a1
if "%num%"=="17" goto :6r
echo 长度不符合要求,请重新输入
goto 6a
:StringLenth ::判断数据长度计算子程序
set theString=%~1
if not defined theString goto :6a1
set Return=0
:StringLenth_continue
set /a Return+=1
set thestring=%thestring:~0,-1%
if defined thestring goto StringLenth_continue
if not "%2"=="" set %2=%Return%
goto :6a1
::-----------------------------------------------------------------------------------------------无效

:6r
for /l %%i in (5,-1,0) do ping -n 2 127.0.0.%%i>nul && @echo. %%i s 后修改MAC……
::下面那个0009项是本人网卡ID所在项并不通用;不同机器对应项目不尽相同需要翻查注册表从0000 0001..这些项目下查一一看DriverDesc的键值是否对应的是正在使用网卡的名称然后做更改
reg add "HKEY_LOCAL_MACHINE\SYSTEM\ControlSet001\Control\Class\{4D36E972-E325-11CE-BFC1-08002bE10318}\0009" /v "NetworkAddress" /t REG_SZ /d "%mac%" /f
reg add "HKEY_LOCAL_MACHINE\SYSTEM\ControlSet001\Control\Class\{4D36E972-E325-11CE-BFC1-08002bE10318}\0009\Ndi\Params\NetworkAddress" /v "Default" /t REG_SZ /d "%mac%" /f
echo 刷新注册表. . .
if exist c:\winnt (secedit /refreshpolicy machine_policy /enforce) else (gpupdate /force)
PAUSE
GOTO :start
:7
echo bye!
goto end
:8
echo 请输入ok确认重启,输入yes重启并且删除本批处理文件
set /p f=
if %f%==ok goto :9
if %f%==yes goto :10
cls
echo -------------------
if "%f%"=="%f%" echo 输入错误返回主菜单
echo -------------------
goto :start

:9
for /l %%i in (5,-1,0) do ping -n 2 127.0.0.%%i>nul && @echo. %%i s 后重启电脑……
setlocal
cd/d %temp%
echo [version] > reboot.inf
set inf=InstallHinfSection DefaultInstall
echo signature=$chicago$ >> reboot.inf
echo [defaultinstall] >> reboot.inf
rundll32 setupapi,%inf% 1 %temp%\reboot.inf
del reboot.inf
EXIT
:10
shutdown -r -t 5
del reboot.inf
del .\mach.bat
EXIT

:9dns
goto dnstest
:dnsress
set n=*
CLS
echo 输入查询省份的拼音字母缩写 如:内蒙古NMG(无大小写区分), 如有相同缩写请打全拼音
echo.
set /p sheng=请输入:
echo %sheng%|findstr/i "^[A-Z]*$">nul||goto fail
type DNSTEST.txt|findstr/i "\<%sheng%\>"||goto fail

echo.
:eu
echo.
set jxb=
set /p jxb=是否继续?(输入y继续,回车返回):
echo.
echo %jxb%|findstr/i "^[Y]$">nul||goto deltest
goto dnsress
:deltest
del .\DNSTEST.txt
goto start
:fail
echo.
echo 输入有误
pause>nul

goto dnstest

:dnstest
::-----:以下为电信接入的DNS 其它的可自己按格式更新或添加
echo GD 广东 202.96.128.143 >>DNSTEST.txt
echo SZ 深圳 202.96.134.133 >>DNSTEST.txt
echo SC 四川 61.139.2.69 >>DNSTEST.txt
echo GX 广西 202.96.128.68 >>DNSTEST.txt
echo HENAN 河南 202.102.227.68 >>DNSTEST.txt
echo FJ 福建 218.85.157.99 >>DNSTEST.txt
echo SHANXI 陕西 202.100.13.11 >>DNSTEST.txt
echo XM 厦门 202.101.103.55 >>DNSTEST.txt
echo HUNAN 湖南 202.103.0.68 >>DNSTEST.txt
echo JS 江苏 202.102.15.162 >>DNSTEST.txt
echo HB 湖北 202.103.0.68 >>DNSTEST.txt
echo SD 山东 202.102.154.3 >>DNSTEST.txt
echo ZJ 浙江 202.96.102.3 >>DNSTEST.txt
echo LN 辽宁 202.98.0.68 >>DNSTEST.txt
echo AH 安徽 202.102.192.68 >>DNSTEST.txt
echo HB 河北 202.99.160.68 >>DNSTEST.txt
echo JL 吉林 202.98.5.68 >>DNSTEST.txt
echo JX 江西 202.101.224.68 >>DNSTEST.txt
echo XJ 新疆 61.128.99.133 >>DNSTEST.txt
echo GZ 贵州 202.98.192.68 >>DNSTEST.txt
echo YN 云南 202.98.96.68 >>DNSTEST.txt
echo HLJ 黑龙江 202.97.229.133 >>DNSTEST.txt
echo NMG 内蒙古 202.99.224.68 >>DNSTEST.txt
echo QH 青海 202.100.128.68 >>DNSTEST.txt
echo XZ 西藏 219.151.32.66 >>DNSTEST.txt
echo HAINAN 海南 202.100.192.68 >>DNSTEST.txt
echo NX 宁夏 202.100.0.68 >>DNSTEST.txt
echo GS 甘肃 202.100.72.13 >>DNSTEST.txt
echo SX 山西 202.99.192.68 >>DNSTEST.txt
echo BJ 北京 202.96.199.133 >>DNSTEST.txt
echo SH 上海 202.96.199.132 >>DNSTEST.txt
echo TJ 天津 202.99.96.68 >>DNSTEST.txt
echo CQ 重庆 61.128.128.68 >>DNSTEST.txt
echo XG 香港 205.252.144.228 >>DNSTEST.txt
echo AM 澳门 202.175.3.8 >>DNSTEST.txt
goto dnsress

开代理吧..到网上找免费代理IP.那的都有..
如果是ADSL(宽带连接上网)可以把网断了.再连IP就变了.
ADSL.是连一次网.IP自动换一次..动态IP..

@echo off
netsh int ip set add 本地连接 static 192.168.88.8 255.255.255.0 192.168.88.1 1
netsh int ip set dns 本地连接 static 219.150.32.132
netsh int ip add dns 本地连接 219.146.0.130

写不下去了,5分。。。在长点?。。。涨得越高,写的越多~~ — —

这个好像没有,因为在配置过程中,一般会采用在一台PC机上,通过软件自动分配给局域网中机器静态IP,这种方法是现在最常用的,你可以试试》

你要是行不通可以 换一块以太网卡 试试看


一键修改IP地址的批处理怎么写?
echo off set slection1= set\/p slection1=请输入IP地址:netsh interface ip set address name="本地连接" source=static addr=%slection1% mask=255.255.255.0 set slection2= set\/p slection2=请输入网关地址:netsh interface ip set address name="本地连接" gateway=%slection2% gwmetric...

Windows7 64位系统下创建批处理文件实现快速更换IP的技巧
1、首先将以下代码用记事本保存为.bat文件,如:IPadd.bat:echo off rem eth \/\/eth 为网卡名称,可在网络连接中查询,如”本地链接”set eth=”无线网络连接”rem ip \/\/ip 为你想更改的IP set ip=192.168.1.8 rem gw \/\/gw 为网关地址 set gw=192.168.1.1 rem netmasks \/\/netmasks...

如何写批处理文件修改IP地址,网关,DNS等
3、直接点击bat文件,选择第二个就可以进行IP地址等的设置;4、以下文档中的,本地连接,请根据你电脑中的本地连接名称进行修改。(如:我想改无线的IP地址,右键文本编辑,将本地连接修改为"无线网络连接"即可)echo off :start echo ===工具=== echo 1.选择ping的IP echo 2.设置IP地址DNS地址 ...

IP切换批处理怎么写
使用批处理来切换IP地址,需要使用netsh命令,Netsh (Network Shell) 是windows系统本身提供的功能强大的网络配置命令行工具,是命令行脚本实用工具,它允许从本地或远程显示或修改当前正在运行的计算机的网络配置。批处理如下:ECHO OFFCLScolor 0aTitle 切换IP批处理工具:menuclsecho.echo 切换IP批处理工...

求一批处理修改IP地址和计算机名
求一批处理修改IP地址和计算机名要求是运行这个批处理程序提示输入一个数字比如输入的数字是1则ip地址换成192.168.0.1同时计算机名字也变成aa1若输入的数字是2则IP地址变成192.168.0... 求一批处理修改IP地址和计算机名 要求是运行这个批处理程序提示输入一个数字 比如输入的数字是1 则ip地址换成192.168.0.1 同时计算...

批处理判断IP获取方式,执行修改IP怎么做?
if "!isNetWork!"=="1" ( if not defined isDHCP ( echo %%i|findstr "DHCP 已启用">nul && set isDHCP=%%j && set isNetWork=0 ) )if defined isDHCP (if "!isDHCP:~1,-1!"=="否" (echo 该IP是固定IP,不做任何修改&&pause&&exit ) else (echo 修改IP中...echo netsh ...

通过批处理或者其他脚本更改ip
按任意键退出...echo.echo.echo.echo. 【W.G制作】pause >nul ___将上面的代码保存为:设置IP.bat后运行,如果需要加入更改dns功能请追问.此脚本可根据楼主需要进行优化.

怎么改ip地址
回答:1、新建一个文本文档改成“名字.cmd” 2、复制一下内容: @echo. @echo ----------------------------------------- @echo 本命令将自动为“本地连接”填写以下内容: @echo IP地址:192.168.1.118 @echo 网关: 192.168.1.1 @echo DNS: 202.96.128.86 @echo ----...

Windows批处理双击切换IP地址方便、快捷
一、设置IP地址批处理,将如下代码用记事本保存为。bat文件,如:IPadd.bat,双击运行即可。复制代码 代码如下:echo off echo HTMer修改IP地址工具 echo 正在设置您的IP地址,请稍等……netsh interface ip set address name="本地连接"source=static addr=192.168.0.2 mask=255.255.255.0 netsh ...

想要一个批处理,能够定时更改IP地址自动+1,当加到254时,自动退出。_百 ...
set MASK=255.255.255.0 set GATE=192.168.0.1 ::设置主DNS set DNS1=218.85.152.99 ::设置副DNS,如果没有请留空 set DNS2= :setip set IP=%IP1%.%n echo.&echo 正在将IP设置为:%IP netsh interface ip set address name="本地连接" static %IP% %MASK% %GATE% 1 >nul n...

水磨沟区19867947996: 批量修改IP及计算机名的批处理文件 -
彤味迪克: @echo offfor /f "tokens=2 delims=:" %%a in ('ipconfig /all^|find "Host Name"') do set pcName=%%aset pcName=%pcName:~1%WMIC computersystem where Name="%pcName%" call Rename Name="新的电脑名称写在这里"wmic ...

水磨沟区19867947996: 求一个批处理可以自动修改计算机的 计算机名和ip地址 -
彤味迪克: wmic computersystem where "name='当前计算机名'" call rename 修改后计算机名没分 就给一个

水磨沟区19867947996: 我们学校的机房有几十台电脑想用批处理来设置ip和计算机名,不想一台一台的去设置,怎么做?? -
彤味迪克: 用DHCP自动获取IP啊!可以设置一台为服务器.操作系统是windows sever2003. 可以再域控制器里面进行操作啊!

水磨沟区19867947996: 求一个IP地址和DNS的批处理程序!! -
彤味迪克: 下面的两个批处理文件内容.记得你的网上邻居--属性--本地连接名字要一定为“本地连接”不是是什么"本地连接1"或"本地连接2"什么的.自动获取IP @echo off netsh interface ip set address "本地连接" dhcp netsh interface ip set dns ...

水磨沟区19867947996: 哪位高人,帮我做个批处理,就是不用重启电脑可以改机器名,按照机器IP地址更改的,万分感谢!要测试过 -
彤味迪克: @ ECHO OFF color 0A :name set /p cname=请输入计算机名: echo REGEDIT4 >c:\windows\reg.reg echo [HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\ComputerName] >> c:\windows\reg.reg echo [HKEY_LOCAL_MACHINE\...

水磨沟区19867947996: 批处理修改ip,DNS等. -
彤味迪克: @echo off color a echo. echo. set /p name=请输您的计算机名: reg add "HKEY_LOCAL_MACHINE\System\CurrentControlSet\Control\ComputerName\ActiveComputerName" /v ComputerName /t reg_sz /d %name% /f reg add "HKEY_LOCAL...

水磨沟区19867947996: 求一个简单的xp系统设置ip地址的批处理命令,谢谢! -
彤味迪克: echo 正在配置ip,请稍等…set name="本地连接"set ipaddress=1.2.3.4set mask=255.255.255.0set gateway=1.2.3.4set dns=1.2.3.4set wins=1.2.3.4echo 正在配置%name%,请稍等…echo 正在配置首选DNS:%dns%…netsh ...

水磨沟区19867947996: 请问怎样批量分配IP地址与计算机名,开一台机器获取一个地址的那种?急用 -
彤味迪克: 对于计算机名右键“我的电脑”或“计算机”属性一栏里面可以更改计算机名 XP系统的话右键网上邻居,选择网络连接———右键本地连接打开属性栏——双击TCP/IP协议——然后可以自己添加IP地址;对于WIN7系统,右下角打开网络共享中心,然后右键 相应的连接更改,情况基本类似.——————物联网校企联盟 技术部

水磨沟区19867947996: 找一个批量更换IP的软件,或是批处理 IP从192.168.0.2到121依次顺序更换 网关也得换,DNS和机器名可以不换 -
彤味迪克: @echo offFor /l %%i in (2 1 121) do ( netsh interface ip set address "本地连接" static 192.168.0.%%i 255.255.255.0 192.168.0.1 1)

水磨沟区19867947996: 批处理根据MAC修改计算机名双网卡IP -
彤味迪克: 本地连接 2

你可能想看的相关专题

本站内容来自于网友发表,不代表本站立场,仅表示其个人看法,不对其真实性、正确性、有效性作任何的担保
相关事宜请发邮件给我们
© 星空见康网