从Windows Server中唤醒客户端计算机

我有一些工作站和Windows Server 2008 R2在同一个局域网。 工作站显示在服务器的Active Directory中。 有一种方法可以在服务器断电时从服务器手动唤醒它们吗?

如果工作站是为WOL设置的,则可以使用Powershell从服务器发送唤醒LAN魔术数据包。 这也可以用来在特定的时间通过Windows任务调度程序运行脚本(如果需要的话)来唤醒工作站。

下面是一个示例脚本: http : //gallery.technet.microsoft.com/scriptcenter/Send-WOL-packet-using-0638be7b

用法:

Send-WOL -mac 00:11:32:21:2D:11 -ip 192.168.8.255 -port 7 

脚本:

 function Send-WOL { <# .SYNOPSIS Send a WOL packet to a broadcast address .PARAMETER mac The MAC address of the device that need to wake up .PARAMETER ip The IP address where the WOL packet will be sent to .EXAMPLE Send-WOL -mac 00:11:32:21:2D:11 -ip 192.168.8.255 #> param( [string]$mac, [string]$ip, [int]$port=9 ) $broadcast = [Net.IPAddress]::Parse($ip) $mac=(($mac.replace(":","")).replace("-","")).replace(".","") $target=0,2,4,6,8,10 | % {[convert]::ToByte($mac.substring($_,2),16)} $packet = (,[byte]255 * 6) + ($target * 16) $UDPclient = new-Object System.Net.Sockets.UdpClient $UDPclient.Connect($broadcast,$port) [void]$UDPclient.Send($packet, 102) } 

我可以想到这样做的商业产品 – 包括Deep Freeze Enterprise和Altiris Deployment Solution – 但我不知道Active Directory用户和计算机中内置的任何此类function。 在购买新function之前,请检查您已经拥有的用于此function的软件。