给大批量Windows机器设置固定IP及DNS

身为一名售后人员,经常会遇到客户的奇葩需求,比如,有一个客户向我提出:“要给100台机器设置固定的IP地址或者DNS”,针对这个需求呢,最笨的方法自然是一台台手动更改了,但是由于点点点点点,然后去修改IP地址和DNS的话,需要输入100遍几乎相同的东西,而且在输入的过程中谁也无法保证不会出错,所以这无疑是出错率最高也耗时最长的。

那是不是可以做一个脚本来实现批量的自动去修改每一台机器的IP地址和DNS呢?答案自然是肯定的了~


但是方案的解决场景有限哦:

  1. 客户提供的是一个连续的网段地址,并不是一堆毫无规律的IP地址


那么我们思考需要有一个文件来在不同的机器上传点信息,让脚本知道它要执行的这台机器上应该使用什么参数,于是出现了ip.txt,这个文件只记录起始IP,比如客户提供的IP是192.168.99.0/24并且第一个可以使用的IP是2,那么ip.txt中就需要写入1。


那么剩下的我们就交给程序去做吧,新建一个SetIP.bat,并把下列内容复制进去

--------------------------------------------------------------------------------------------------------------------------

@echo off

set /a m=0

for /f %%i in (ip.txt) do ( 

set /a m=%%i+1

)

echo %m% > a.txt

set name="±μ¨Ω”"

set mask="255.255.255.0"

set gw="192.168.99.1"

set ip=192.168.99.%m%

set dns="192.168.99.1"

netsh interface ip set address name=%name% source=static %ip% %mask% %gw% 1

netsh interface ip set dns name=%name% source=static %dns% primary 


--------------------------------------------------------------------------------------------------------------------------

相信大家已经知道了,name="",mask="",gw="",ip=192.168.99.%m%,dns=""等等都是我们需要根据实际情况修改的,修改以后的执行效果如下:

wKioL1YCt1PwcQJlAAC8PjEi6g8262.jpg


现在,大家就可以把这个SetIP.bat和ip.txt拷贝到U盘根目录(记得修改ip.txt为初始值),然后拿着这个U盘到不同的电脑上点点点吧~,大概30s一台吧~100台,1个小时搞定,so easy。

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章