如何批量开启多台电脑如何将几台电脑

说来也巧,云子可信刚好最近出了个一键批量开关机的功能,支持一键开启局域网内的所有计算机,可能能帮到答主。

当然,远程开机功能现而今是个比较普通的功能,市面上还有很多产品也支持这个功能,包括一些硬件产品和一些免费的软件产品。

一键开关机功能的部分

下面讲一讲批量开机功能的大概原理:

远程开一台计算机

要解决批量开机的问题,首先要解决开指定的一台计算机的问题,即用一台计算机去使得另一台计算机开机,也就是大家平常所说的“远程开机”。

远程开机的问题早在1980年左右就被 inter 和 IBM 团队解决了,提出一种叫 Wake on LAN ( WoL ) 的局域网唤醒的协议。该协议需要硬件如主板、电源、网卡的支持。由于硬件在当时没有特别普及,Wake on LAN 协议并未得到很好的普及。

IBM PCI Token-Ring Adapter 2 上的 Wake-On-LAN 物理接口(白色模块),图片来源于 wikipedia.org

随着计算机硬件的逐渐发展,Wake on LAN 现在已经作为一个工业标准协议广泛普及,用于在低功耗模式下远程唤醒计算机,即远程开机。

怎样的计算机硬件才能支持 Wake on LAN 进行远程开机呢?

  • 计算机需要有ATX电源网卡需要支持 Wake on LAN 协议主板需要支持相应的电源和网卡BIOS上也有相应设置Windows 系统上开启相关设置

Wake on LAN 是如何工作的呢?

这得从一个叫魔术包( Magic Packet )的特殊数据包说起,要让计算机被远程唤醒,也就是说需要计算机收到并处理这个魔术包的信息。

Wake on LAN 魔术包,图片来源于 howtogeek.com

可以看出,Wake on LAN 的魔术包是以UDP包的形式发送的,UDP Header 中包含了如下几个信息:

  • Source IP : 发送魔术包的设备的 IP 地址(这里的设备不仅仅是计算机,也有可能是其他可以发包的设备,比如市面上常见的开机棒等)。Destination IP : 目的计算机的 IP 地址,即需要唤醒计算机的 IP 地址。Source Port、Destination Port : 上述对应设备的端口号。

值得注意的是,魔术包中经常也会发送目的计算机的 MAC Address( MAC 地址 )。通过 Destination IP 和 MAC Address 可以确定需要唤醒计算机。

计算机之间发送魔术包的图例,图片来源于 baike.baidu.com

现在大家可能对设备之间怎样唤醒计算机有了一定的了解。即只要有一台计算机或硬件设备能给目标计算机发送魔术包(Magic Packet 即可)。

大家说 Wake on LAN ,都会说远程开机。光靠上面的描述并无法很好地完成“远程”这个特点。那么作为市面上声称的“远程开机”产品,特别是云子可信终端管理这样的 SaaS 产品,是如何做到“远程”的呢?

远程开机流程示意图

说道远程开机就得说到云服务,这里就拿云子可信为例,说明一下如何做到“远程”开机:

  • 前期准备:首先设备A处于开机状态,且能够发送 Wake on LAN 的魔术包。如果是计算机则仅需要安装相应软件,如云子可信终端管理客户端。若是开机棒则需要保证开机棒运行、联网正常。开机流程:作为管理员可以通过PC端下发开机策略给云服务器 C(对于云子可信也可以用移动端的微信小程序下发策略)。云服务器在接到管理员的策略之后,云服务器 C会发送一条消息给局域网内的设备A( A 已经开机且具有发魔术包的能力)。设备 A 在接收到云服务器 C 发送的消息后,便会将魔术包发送给目标设备 B 。目标设备 B 通过 Wake on LAN 协议被唤醒,执行开机。

远程批量开启计算机

现在我们知道了如何远程开启一台计算机,那么如何批量开启多台电脑呢?

前面说道,Wake on LAN 所发送的魔术包是 UDP 包,采用的 UDP 协议。UDP 协议是一种无连接的传输协议,即发送 UDP 包时不需要像 TCP 包一样需要在通信双方进行三次握手,更像是一种广播。为局域网内所有计算机发送的开机广播。

既然是广播,会导致局域网内不希望开机的计算机也开机吗?

答案是不会,正如上面魔术包中的信息所示,魔术包中包含了目的设备的IP、MAC等信息,只有符合IP、MAC的计算机才能被开机。就云子可信而言,开机需要发送的魔术包中已经包含了需要开机的计算机信息。

Published by

风君子

独自遨游何稽首 揭天掀地慰生平

发表回复

您的电子邮箱地址不会被公开。 必填项已用 * 标注