批处理怎么获取网卡MAC,并根据网卡分配IP地址

为了方便虚拟机操作,需要将虚拟机ip分配固定ip,假如10台虚拟机,网卡MAC已通过设定为00:13:5D:01:01:01至00:13:5D:01:01:10,也就是每台虚拟机网卡MAC最后两位以数字递增,IP需要设置为192.168.1.1至192.168.1.10,一样根据网卡最后两位数递增ip的D段,网关跟DNS都是固定的,如何使用批处理读取网卡MAC并使用MAC最后两位数判断修改IP

把下面的批处理存为mac_set_ip.bat,该批处理需要以管理院身份运行,且要求本机只有一个网卡才能运行成功。

网络连接的名字暂定:“本地连接”,其中的网管(gate)和子网掩码(mask)我是按习惯方式先填了一个,请根据您实际的情况修改。

@setlocal enabledelayedexpansion
@set ip0=192.168.1.
@set gate=192.168.1.254
@set mask=255.255.255.0
@for /f "delims= " %%i in ('getmac|find "-"') do (
set mac=%%i
goto I
)
:I
@if "mac"=="" echo "获取mac出错"&goto X
@set ip=%ip0%%mac:~-2%
@netsh interface ipv4 set address "以太网" static %gate% %mask% %ip%
@netsh interface set interface 本地连接 disabled
@ping -n 1 127.0.0.1 >nul
@netsh interface set interface 本地连接 enabled
:X

温馨提示:答案为网友推荐,仅供参考
相似回答