摘 要:本文利用WOL的工作原理及路由器的配置实现通过网络唤醒电脑,文中介绍了WOL的执行标准,详细给出了各项网络设置参数和所涉及到的应用软件,此方法能够简化网络管理员维护系统时的工作量,提高机动性和时效性。
关键词:WOL;WAN;LAN;路由;转发
1 WOL原理
WOL(Wake on Lan),即局域网唤醒,从根本上来说是硬件设备提供的一项管理功能。该功能可以使电脑处于关机或休眠状态时,通过给网卡发送特定的数据包从而命令网卡向主板发送开机指令,进而实现上电开机。可见,网络唤醒需要硬件(主要是主板和网卡)的支持。目前几乎所有品牌的硬件都支持WOL,但有可能在软件上默认WOL处于关闭状态,当然是出于安全考虑。
2 前提条件
1、电脑网卡或者主板支持wol,远端被唤醒计算机的网卡必须支持WOL,而用于唤醒其他计算机的网卡则不必支持WOL。
2、电脑必须安装有符合ATX 2.03标准的ATX电源,+5VStandby电流至少应在720mA以上。有的早期电源可能只设计到500mA,在进行网络开机时,某些耗电较大的网卡可能会无法启动。
3、广域网IP为固定IP或者可用动态DNS
4、如果广域网经由路由器,路由器必须有静态ARP功能。
5、一个同时支持广域网和局域网远程开机的软件,实现远程唤醒的软件有很多,原理都是相同的。
3 关于电脑的设置
1、主板WOL启动:进入BIOS,将“Power Management Setup”中的“Wake Up On LAN
”或“Resume by LAN” 或“Boot by LAN”项设置为“Enable”或“On”, 或“Power On By PCI Devices”或“Power On By PCIE Devices”项设置为“Enable”。如果是PCI网卡的话,“Wake on PCI Card”设置为Enable”现在许多主板支持直接通过PCI 插槽向网卡提供 Standby 电源(这类主板的BIOS 中往往有 “Wake on PCI Card”设置项),这种情况就不需要连接电缆,这也是有些支持远程唤醒的网卡没有WOL接口的原因。
2、网卡WOL启动:进入windows后,进入设备管理器,选择要用于WOL的网卡,进入属性窗口选择“高级” 选项卡,在列表里能到“Wake up Capabilities(唤醒功能)”设置值为“Magic Packet”或”Both”或“关闭状态唤醒”设置为启用。“唤醒功能”设置为两种方式都选的那个选项“幻数据包和模式匹配”。
3、要打开网卡的属性“电源管理”,去掉“允许计算机关掉此设备以节约电源”的勾。
要通过internet来唤醒,必须首先确保在局域网内是可以正常唤醒的。
1、局域网远程开机。这里以WakeOnLan工具为例介绍。
在局域网内唤醒时,只要MAC正确,Send Options选为Local Subnet,点击“Wake Me
UP”就可以唤醒对应的电脑了。怎样获取被控端网卡的MAC地址:单击“开始→运行”命令在“运行”对话框中输入“cmd”命令“确定”后打开命令提示符。输入“ipconfig /all”命令后出现的Physical Address就是MAC地址。
2、通过internet唤醒电脑
如果广域网经由路由器远程开机,数据包就必须经过路由器中转。而虽然可以设置DMZ主机或者端口转发,但有一个很严重的问题是电脑关机之后路由内部的相应ARP记录会消失,于是即使路由器收到了激活数据包,它也不知道应该发给局域网里的哪个网卡,所以这里就必须要路由器具备静态路由表的功能,因此要将IP地址和网卡的mac地址绑定之后,就能顺利从广域网远程开机。WAN与LAN的不同在于在广域网上,有许多的路由器等网络设备,这些设备可能会使Magic Packet的包不能到达我们想唤醒的电脑网卡上。因此,要实现通过internet来唤醒,必须得到路由器的支持。
下面以TP-Link WR841N无线路由为例来说明配置过程。
首先确保路由器可以正常接入internet,即通过服务商得到一个公网IP,(对于家庭来
说ADSL、Cable Modem是常见的上网方式),进入路由器WEB配置页面http://192.168.1.1
1、端口映射(虚拟服务器):“转发规则”-“虚拟服务器”,添加一新条目,端口为7(7是默认的端口号,也可以是其它端口号,只要不和其它的冲突),IP地址为需要唤醒电脑网卡所使用的IP地址(比如192.168.1.8),协议为UDP,并使之处于“生效”状态。这一步使得当路由器收到发到它7端口的数据都会转发到192.168.1.8这台电脑上。
2、IP与MAC绑定:“IP与MAC绑定”-“静态ARP绑定设置”,添加一新条目,MAC地址添为网卡(被唤醒电脑上的)MAC,如00-0B-2F-XX-XX-XX,IP为上一步设置的IP192.168.1.8,路由器收到从internet发来的MagicPacket包时,由于设了端口映射就需要将其转发到192.168.1.8上。但由于电脑是处理关机状态,ARP无法通过广播到192.168.1.8这台电脑,Magic包将被路由器丢弃,因此进行静态的IP-MAC绑定,使数据包可以直接发往MAC为00-0B-2F-XX-XX-XX的网卡上。
3、为了确保该电脑在启动后可以获得192.168.1.8这个IP,需要在DHCP服务器中设置一个静态地址分配,即MAC 00-0B-2F-XX-XX-XX 静态分配192.168.1.8永不过期。
4、在路由器上使用动态DDNS功能,这样可以用一个域名来访问而不用查看经常改变的公网IP(ADSL拨号上网的IP是经常变的)。同时,允许路由器可以进行无端WEB管理,以方便当我们在任何地方都可以检查路由器的状态。重新启动路由器,就可用上面那个WOL for windows来通过internet过程唤醒(WOL over the internet)。
下面利用LanHelper局域网助手为例,介绍如何实现对学校机房多台电脑的远程批量开机。
要求:每台电脑都支持远程唤醒功能。
设置BIOS,将“Wake on Lan”设置为“Enable”(如果是通过PCI 插槽直接向网卡供电的还需要对“Wake on PCI Card”项作相应设置)。
步骤1:收集“被控计算机”的信息。
对机房的学生机进行唤醒与关闭操作,所以学生机就是被控机。首先启动所有学生机,再运行安装于教师机的Lanhelper电脑休眠,选择“扫描局域网”(扫描位于同一局域网的所有电脑)或“扫描工作组”(指定扫描某一工作组中的计算机,例如学校的机房电脑均位于student工作
组中,就只勾选 student工作组而进行扫描)。将扫描结果保存下来,以后需批量开关机时可随时打开保存文件,执行相关操作。保存扫描结果的方法为:执行 “文件”菜单中的 “另存为”命令。
步骤2:远程唤醒:
1、关闭所有学生机,注意一定要正常关机,如果非正常关机(包括突然断电或关机时死机)可能导致唤醒失败。
2、回到教师机,从Lanhelper 扫描结果的列表中,选择一台或多台电脑(用Shift 或Ctrl 组合键选择一批计算机),再点击工具栏中的 “远程唤醒”工具按钮,在出现的窗口中直接点击 “唤醒(w)”按钮就行了。执行情况可通过查看“工具→日志→查看日志”来获知。
参考文献
[1]王新良. 计算机网络 2014-09-01
[2]吴功宜,吴英. 计算机网络应用技术教程 2013-04-01
发布评论