维护机房(教学用的电子教室)时经常要部署计算机,如果采用同传的方式会导致所有计算机的IP和计算机都是一个,这时就需要挨个改动。如果采用手动方式,在一个机房数十台计算机的情况下非常麻烦,这时主要有这么几个方式:
- 官方管理软件,比如联想的同传软件,可以自动处理,这点就不说了
- 使用DHCP来自动获取IP,计算机名手动改
- 使用批处理同时修改IP和计算机名
- 用软件来分配(这个我没用过,不知道有什么合适的软件)
- 其它不了解的方式
目前我主要使用的方式就是部署好一台电脑后作为发送端,然后用PXE方式启动其它计算机,进入PE系统,再使用网络对拷软件同传系统,这样每一台接收端电脑都会得到发送端电脑的系统和数据,最后使用脚本修改IP和计算机名,这里的脚本运行后需要用键盘输入一个序号作为IP的最后一段和计算机名的一部分。
当然有些内容是需要提前修改好,比如IP的前三段、网关、DNS、计算机名前缀等,在配置好这些内容的基础上,拼接上输入的一个编号(1~255的数字)就可以完成自动IP配置和计算机名的修改。
其实自动配置IP、计算机名的脚本也有很多种,如Powershell、批处理、VB脚本等都是可以完成目标任务的,本来我主要使用的是批处理脚本,现在又查着Microsoft文档写了一份Powershell脚本,放到这里以备不时之需。
PowerShell脚本
#######################################################################################
# 使用方式:
# 在CMD命令行窗口中运行:powershell -executionpolicy bypass -file [xx路径]\ip.ps1
# 执行策略:
# Unrestricted 脚本执行不受限制,不管来自哪里、是否有签名,在运行前会进行安全性提示
# Restricted 不能运行脚本,可以执行单个的命令【默认值】
# AllSigned 仅当脚本由受信任的发布者签名才能运行
# RemoteSigned 本地创建的脚本可以运行,但从网上下载的脚本不能运行
# ByPass 脚本的执行不设任何的限制,任何脚本都可以执行,并且不会有安全性提示
#######################################################################################
Import-Module NetTCPIP
Import-Module DnsClient
Write-Output 半自动配置网络连接和计算机名
###################################################
######## 执行前一定要按实际情况修改以下信息 ##########
###################################################
# 网卡别名,指定要配置的网卡
$interface_name = "以太网"
# IP地址前缀(前三位)、网关、DNS
$ip_prefix = "192.168.3."
$gateway = "192.168.3.254"
$dns1 = "180.76.76.76"
$dns2 = "114.114.114.114"
# 计算机名前缀
$computer_name = "dczj503pc"
# 读入要设置的 IP 地址的最后一位
$ip4 = Read-Host "请输入IP尾号(第四位,1~255)"
# 拼接成完整的 IP 地址
$ip = $ip_prefix + $ip4