Board logo

标题: [系统相关] [已解决]批处理如何根据网卡MAC地址自动设置IP和计算机名? [打印本页]

作者: 2000klw    时间: 2010-11-10 17:46     标题: [已解决]批处理如何根据网卡MAC地址自动设置IP和计算机名?

如何根据网卡MAC地址自动设置IP和计算机名!

例如: 计算机名              MAC地址                IP地址  

         Q801          00-E0-4B-04-30-ED      192.168.2.1
         Q802          00-E0-4D-05-30-EC      192.168.2.2
         Q804          00-ED-1F-05-35-DF      192.168.2.4
          ..........
         Q816          00-EC-3D-04-31-8B      192.168.2.16
         .............
         Q899          00-EF-1D-DG-GD-4F    192.168.2.99


计算机名Q8后面两位就是IP地址的了后一节,IP从1到99就够了,三位数以上的用不着,没那么多电脑!子网掩码为255.255.255.0   网关和DNS等留空不管! 只要IP和子网掩码!

我把以上些数据保存为MAC.TXT文件,放到C盘里面.如何写一个批处理,让它从MAC里面查找到本机的MAC地址后,自动改为文件里的IP地址和计算机名

这样子做好的GHOST文件到不同的机子上恢复后就可以不用麻烦的修改了
烦请哪位知道的朋友帮个忙,写出这个批处理文件!

[ 本帖最后由 2000klw 于 2010-11-11 12:01 编辑 ]
作者: lxzzr    时间: 2010-11-10 19:44

给个例子给你,我以前用的
  1. @echo off
  2. rem 原理:根据MAC地址来判断IP及机号.
  3. rem 先要获取网吧全部机器的MAC地址,再将其添加到如下例表中.
  4. rem 将本脚本添加到开始启动菜单.
  5. rem GHOST完成之后选择自动重启客户机即可!
  6. rem ...............以下是MAC、IP及机号对照表.................
  7. rem 00-19-5b-32-64-da 192.168.1.1 JIN001
  8. rem 00-19-5b-32-63-db 192.168.1.2 JIN002
  9. rem 00-19-5b-32-65-08 192.168.1.3 JIN003
  10. rem 00-19-5b-2e-f7-75 192.168.1.4 JIN004
  11. rem 00-E0-81-02-1C-B0 192.168.1.5 JIN005
  12. rem 00-19-5b-2e-f7-67 192.168.1.6 JIN006
  13. rem 00-0e-0c-c2-ae-cd 192.168.1.7 JIN007
  14. rem 00-50-09-00-05-4b 192.168.1.8 JIN008
  15. rem 00-E0-A0-0A-14-A4 192.168.1.9 JIN009
  16. rem ......
  17. rem .........................................................
  18. rem 脚本开始:
  19. for /f "tokens=12 delims= " %%a in ('ipconfig /all^|find /i "Physical Address"') do set local_mac=%%a
  20. for /f "tokens=3,4 delims= " %%a in ('find /i "%local_mac%" %~dpnx0') do (
  21.           set local_ip=%%a
  22.           set local_name=%%b
  23. )
  24. rem 以上是获取本机IP及预设机号.
  25. if not defined local_ip (
  26.           echo.
  27.           echo.
  28.           echo.
  29.           echo             本机现在的MAC地址与原MAC地址有差异,请手动输入!
  30.           echo.
  31.           set /p local_ip=            请输入IP:
  32.           set /p local_name=            请输入计算机名:
  33.           goto :start_
  34. )
  35. rem 以上是在主板被更换之后MAC地址有差异的情况下的手动输入.
  36. :start_
  37. netsh interface ip set address name="100" source=static addr=%local_ip% mask=255.255.254.0 gateway=192.168.0.249 gwmetric=0
  38. netsh interface ip set dns name="100" source=static addr=192.168.0.249
  39. netsh interface ip add dns name="100" addr=202.96.128.68 index=2
  40. rem 以上是设置本机IP、子网掩码、网关等,请根据具体情况修改.
  41. reg add "HKEY_LOCAL_MACHINE\System\CurrentControlSet\Control\ComputerName\ActiveComputerName" /v ComputerName /t reg_sz /d %local_name% /f
  42. reg add "HKEY_LOCAL_MACHINE\System\CurrentControlSet\Services\Tcpip\Parameters" /v "NV Hostname" /t reg_sz /d %local_name% /f
  43. reg add "HKEY_LOCAL_MACHINE\System\CurrentControlSet\Services\Tcpip\Parameters" /v Hostname /t reg_sz /d %local_name% /f
  44. rem 以上是设置本机计算机名亦或机号.
  45. rem .......
  46. copy "D:\Soft\XYgam\pubwin\聊天区\dlglock.jpg" "C:\Program Files\HintSoft\PubwinClient\SKINS\" /y
  47. regedit /s C:\WINDOWS\system32\chyooy\2\聊天区.reg
  48. regedit /s D:\Soft\XYgam\data\桌面\聊天区.reg
  49. rem 如果母盘分类的话(聊天区一个母盘,高端区一个母盘)就不用判断,否则应该判断本机是属于高端区还是其它区.
  50. xcopy C:\WINDOWS\system32\Chyooy\2\PubwinClient.lnk "F:\system\「开始」菜单\程序\启动\"
  51. xcopy C:\WINDOWS\system32\Chyooy\2\pubwin.lnk "F:\system\「开始」菜单\程序\启动\"
  52. shutdown -r -t 5
  53. rem 以上是其他命令,请根据具体情况修改.
  54. del %0 /q
  55. rem 删除自身
复制代码

作者: 2000klw    时间: 2010-11-11 12:00

谢谢版主,我根据实际情况来改一下!
作者: lx427    时间: 2011-1-20 13:53     标题: 非常感谢

找了很久,非常需要这个批处理文件,谢谢了。




欢迎光临 批处理之家 (http://www.bathome.net/) Powered by Discuz! 7.2