无忧启动论坛

标题: 求一个批处理机房ip通过mac 自动换 [打印本页]

作者: therfer    时间: 2024-11-4 00:07
标题: 求一个批处理机房ip通过mac 自动换
帮忙写个win10下 通过mac 自动更改 固定ip  及计算机名是ip末位的批处理
pc1 192.168.2.1 mac pc1
pc2 192.168.2.2 mac pc2


实现一个批处理机房所有pc ip自动换
作者: 熄灭的火焰    时间: 2024-11-4 08:17
到tongyi.ai上问问,利用winRM  PowerShell


简单点的话,在路由器或者交换机上,绑定MAC就行。


作者: holley2008    时间: 2024-11-4 08:56
本帖最后由 holley2008 于 2024-11-4 08:59 编辑

现在都很少动脑子,先用ai来一遍
  1. @echo off
  2. setlocal

  3. :: 设置 IP 的映射
  4. set "pc1_mac=XX-XX-XX-XX-XX-XX"  :: 替换为 PC1 的实际 MAC 地址
  5. set "pc1_ip=192.168.2.1"

  6. set "pc2_mac=YY-YY-YY-YY-YY-YY"  :: 替换为 PC2 的实际 MAC 地址
  7. set "pc2_ip=192.168.2.2"

  8. :: 获取当前计算机的 MAC 地址
  9. for /f "tokens=2 delims=:" %%a in ('getmac /fo csv /nh') do (
  10.     set "current_mac=%%~a"
  11. )

  12. :: 去除 MAC 地址中的空格
  13. set "current_mac=%current_mac: =%"

  14. :: 从 IP 中提取最后一位作为计算机名
  15. for /f "tokens=3 delims=." %%i in ("%pc1_ip%") do (
  16.     set "ip_suffix=%%i"
  17. )
  18. set "computer_name=pc%ip_suffix%"

  19. :: 检查 MAC 地址并设置 IP 和计算机名
  20. if /i "%current_mac%"=="%pc1_mac%" (
  21.     echo Setting IP to %pc1_ip% and Computer Name to %computer_name%
  22.     netsh interface ip set address "Ethernet" static %pc1_ip% 255.255.255.0
  23.     WMIC computersystem where name="%COMPUTERNAME%" call rename name="%computer_name%"
  24.     shutdown /r /t 0
  25. ) else if /i "%current_mac%"=="%pc2_mac%" (
  26.     echo Setting IP to %pc2_ip% and Computer Name to pc%ip_suffix%
  27.     netsh interface ip set address "Ethernet" static %pc2_ip% 255.255.255.0
  28.     for /f "tokens=3 delims=." %%i in ("%pc2_ip%") do (
  29.         set "ip_suffix=%%i"
  30.     )
  31.     set "computer_name=pc%ip_suffix%"
  32.     WMIC computersystem where name="%COMPUTERNAME%" call rename name="%computer_name%"
  33.     shutdown /r /t 0
  34. ) else (
  35.     echo No matching MAC address found. Exiting...
  36. )

  37. endlocal
复制代码

作者: yxldh    时间: 2024-11-4 09:54
楼主想要的是这种吗?
  1. echo off
  2. echo 正在配置IP地址,请稍候……
  3. set "MASK=255.255.255.0"
  4. set "GATEWAY=192.168.1.1"
  5. set "DNS1=8.8.8.8"
  6. set "DNS2=114.114.114.114"
  7. set "WINS=192.168.1.1"

  8. for /f "tokens=*" %%i in ('wmic Nic where "NetEnabled='true'" get MacAddress^,NetConnectionID /format:List^|find "="') do set "%%i"

  9. for /f "delims=:" %%i in ('findstr /n /b /e ::::.*:::: "%~f0"') do (
  10.     for /f "tokens=1,2,4" %%i in ('more /e +%%i "%~f0" ^| find /i "%MacAddress::=-%"') do (
  11.         set "name=%%i" & set "IP=%%j" & set "Description=%%k"
  12.     )
  13. )

  14. if not defined name (
  15.     echo;没有匹配的MAC地址 & pause & exit /b
  16. ) else if not defined NetConnectionID (
  17.     echo;没找到已连接的网络 & pause & exit /b
  18. )
  19. reg add "HKLM\SYSTEM\ControlSet001\Services\lanmanserver\parameters" /v srvcomment /d "%Description%" /f >nul 2>nul
  20. reg add "HKLM\SYSTEM\CurrentControlSet\Services\lanmanserver\parameters" /v srvcomment /d "%Description%" /f >nul 2>nul
  21. reg add "HKLM\System\CurrentControlSet\Control\ComputerName\ComputerName" /v ComputerName /d "%name%" /f >nul 2>nul
  22. reg add "HKLM\System\CurrentControlSet\Services\Tcpip\Parameters" /v "NV Hostname" /d "%name%" /f >nul 2>nul
  23. reg add "HKLM\System\CurrentControlSet\Services\Tcpip\Parameters" /v Hostname /d "%name%" /f >nul 2>nul
  24. netsh interface ip set address "%NetConnectionID%" static %IP% %Mask% %GATEWAY% 1 >nul 2>nul
  25. netsh interface ip set dns "%NetConnectionID%" static %DNS1% register=PRIMARY >nul 2>nul
  26. netsh interface ip add dns "%NetConnectionID%" %DNS2% index=2 >nul 2>nul
  27. netsh interface ip set wins "%NetConnectionID%" static %WINS%  >nul 2>nul
  28. pause & exit /b
  29. shutdown -r -t 3
  30. del /q %0

  31. :::: Your IP and MAC Addresses Here ::::
  32. PC101 192.168.1.101 11-11-11-11-11-11 101号机
  33. PC102 192.168.1.102 22-22-22-22-22-22 102号机
  34. PC103 192.168.1.103 33-33-33-33-33-33 103号机
复制代码


修改上面的掩码、网关等数据,并按照下面三行格式配置好参数,MAC地址务必正确,运行程序后就会匹配MAC地址然后自动修改计算机名、IP地址、计算机描述,最后清理自身,重启电脑。
作者: 孟仁飞    时间: 2024-11-4 10:15
学习
作者: fruds9981    时间: 2024-11-4 10:21
标记以方便后续学习
作者: yyz2191958    时间: 2024-11-4 12:14
yxldh 发表于 2024-11-4 09:54
楼主想要的是这种吗?

助人为乐
作者: yyz2191958    时间: 2024-11-4 12:15
holley2008 发表于 2024-11-4 08:56
现在都很少动脑子,先用ai来一遍

助人为乐
作者: wang1126    时间: 2024-11-4 13:01
谢谢3、4楼分享
作者: 熊哥    时间: 2024-11-4 14:29
标记学习
作者: szwp    时间: 2024-11-4 15:42
机房一般不进去,服务器也不太换
作者: therfer    时间: 2024-11-5 18:10
yxldh 发表于 2024-11-4 09:54
楼主想要的是这种吗?

C:\Users\Administrator\Desktop\1.bmp
作者: therfer    时间: 2024-11-5 21:58
yyz2191958 发表于 2024-11-4 12:14
助人为乐

win10 不ok  win7 ok 不知哪里的问题
作者: yxldh    时间: 2024-11-6 09:06
我就是在win10下做的 没有问题

作者: wn168cn@163.com    时间: 2024-11-6 09:25
yxldh 发表于 2024-11-4 09:54
楼主想要的是这种吗?

谢谢分享
作者: cqh    时间: 7 天前
学习




欢迎光临 无忧启动论坛 (http://wuyou.net./) Powered by Discuz! X3.3