麻豆小视频在线观看_中文黄色一级片_久久久成人精品_成片免费观看视频大全_午夜精品久久久久久久99热浪潮_成人一区二区三区四区

首頁 > 編程 > BAT > 正文

網管專用自動更改IP/機器名/工作組的批處理

2020-07-26 20:23:53
字體:
來源:轉載
供稿:網友
本人負責的部門有上百臺機器,重裝完后需要恢復原有配置,我曾使用過很多方法:
1:手工更改,這條就不要說了
2:使用netsh dump +文件和 netsh -f +文件來更改,但是整個盤都格式化就沒用.
3:使用專用的更改ip地址的小程序,但還是需要手工來指定IP

最后,我想到如下辦法:
1:首先實現:netsh interface ip 來更改IP
2:使用wmic computersystem 修改工作組
3:使用reg add 來更改機器名
4:因為修改機器名后要重啟才生效,于是使用:reboot.inf 來重啟
5:后來增加了新機器名和ip的配置,使用機器的序列號(聯想機:wmic bios get SerialNumber)來做機器名,ip地址最后1位使用隨機
因為可以通過 wmic來讀取序列號,那么我們可以用來登記本機的網絡配置時,就方便多了.
6:最后將自己整理的IP地址等對應表放到了bat中,避免bat調用其他文件.
7:實現上面功能后,我就可以將該bat文件封裝到gho文件里面,恢復重啟完后就可以自動設置,我不要做其他操作,用戶就可以使用.如果有必要,你可以加上執行完后自動刪除本身.

整個代碼如下:(歡迎大家繼續優化和整理)
復制代碼 代碼如下:

@echo off & code by m13632750052
for /f "tokens=12 delims= " %%i in ('ipconfig/all^|find "Physical Address"') do set localmac=%%i
echo 通過MAC地址%localmac%查找對應的機器名
for /f "skip=90 tokens=1,2,3,4 delims= " %%i in (%~f0) do (
if [%%k]==[%localmac%] set Name=%%i
if [%%k]==[%localmac%] set IP=%%j
if [%%k]==[%localmac%] set MAC=%%k
if [%%k]==[%localmac%] set Workgroup=%%l
set mask=255.255.0.0
set gway=168.30.1.233
set dns=168.1.4.147
set dns2=168.1.6.243
)
echo 顯示查找結果 code by cn-dos breakme
if defined Name (echo %Name% %IP% %mac% %Workgroup%) else (goto newset)
:Enterset
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)

echo 修改工作組
wmic computersystem where Name="%Name%" call JoinDomainOrWorkgroup Name="%Workgroup%"
wmic computersystem where Name="%ComputerName%" call JoinDomainOrWorkgroup Name="%Workgroup%"

echo 修改IP
::查找MAC所對應的連接名稱
for /f "tokens=1,2,3,4,5,6 delims=-" %%A in ("%MAC%") do set MacWMIC=%%A:%%B:%%C:%%D:%%E:%%F
for /f "skip=2 tokens=2* delims==" %%A in ('WMIC NIC WHERE "MACAddress='%MacWMIC%' AND NetConnectionID!=NULL" GET NetConnectionID /value') do set "ConnName=%%A"
if not defined ConnName set ConnName="本地連接"
netsh interface ip set address name="%ConnName%" source=static addr=%IP% mask=%mask%
netsh interface ip set address name="%ConnName%" gateway=%gway% gwmetric=0
netsh interface ip set dns name="%ConnName%" source=static addr=%dns% register=PRIMARY
netsh interface ip add dns name="%ConnName%" addr=%dns2% index=2
netsh interface ip set wins name="%ConnName%" source=static addr=none


echo arp綁定 %IP% %MAC%
arp -d
arp -s %IP% %MAC%
echo arp綁定網關 %gway%,如果網絡不通,將使用默認網關的MAC:00-00-5e-00-01-01
ping -n 2 %gway%>nul 2>nul
if [%ERRORLEVEL%]==[1] (set GateMac=00-00-5e-00-01-01) else (
for /f "skip=3 tokens=2" %%H in ('arp -a %gway%') do set GateMac=%%H
)
cmd /c arp -s %gway% %GateMac%

for /l %%i in (3,-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

:newset
echo 您的機器可能是新機器,需要手工輸入ip
for /f "tokens=1,2 delims==" %%i in ('wmic bios get SerialNumber /value^|find "="') do set Name=%%j
if not defined Name set /p Name=請輸入新機器的名字
echo 機器名:%Name%
call :select "Physical Address" "mac"
echo mac :%mac%
set /a aa=%random%%%9
set IP=168.30.7.1%aa%
set mask=255.255.0.0
set gway=168.30.1.233
set dns=168.1.4.147
set dns2=168.1.6.243
set Workgroup=vga00l
echo IP 配置: %ip% %mask% %gway% %dns% %dns2% %Workgroup%
for /l %%i in (5,-1,0) do ping -n 2 127.0.0.%%i>nul && @echo. %%i s 后修改機器名……
goto Enterset

:select
for /f "tokens=2 delims=:" %%i in ('ipconfig /all ^| findstr /i /c:%1') do if not "!%~2!" == "" set "%~2=%%i"
GOTO :eof
發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 91麻豆精品国产91久久久点播时间 | 久久毛片 | 国产一区免费在线 | 激情福利视频 | 久久久青 | 久久免费视频精品 | 成人h精品动漫一区二区三区 | 激情综合网俺也去 | 成人福利在线视频 | 日韩视频在线一区二区三区 | 黄色网址免费入口 | 国产a级片电影 | 一区二区免费网站 | 久久国产精品久久精品国产演员表 | 亚洲一区动漫 | 日日草夜夜 | 国产精品久久999 | 一级啪啪片 | 黄网站免费入口 | 在线观看国产 | 久久精品视频一区二区三区 | 日本成年免费网站 | 一级网站| 国产最新网站 | 欧美成人免费看 | 国产精品久久久久久久久久 | 国产乱淫a∨片免费观看 | 久久久久久久久久亚洲精品 | 12av毛片| 毛片网站视频 | www.9191.com| 国产艳妇av视国产精选av一区 | 九九热精品视频在线 | 激情小说激情电影 | 国产精品久久久久久久久岛 | 成年人在线免费播放视频 | 亚洲精品午夜电影 | 国产精品剧情一区二区三区 | 精品1 | 黄污网址 | 日韩大片在线永久观看视频网站免费 |