首先简单介绍一下什么是WakeOnLan
Wake-On-LAN简称WOL,是一种电源管理功能;它是由IBM公司提出的网络唤醒标准,目前该标准已被大多数主板厂商支持。支持该标准的主板允许从远程通过网络唤醒计算机,也就是远程开机。

大多数主板厂商默认wol功能是禁用的。要使用这个功能,需要对主板进行一定的设置。同时,网卡也要开启相关功能。

远程唤醒相关设置

一:网卡设置

    Win10与win7设置方法一致。此外以win7为例。

右键单击电脑任务栏右下角小电脑图标。选择打开网络和共享中心。

 

3670 BIOS Vostro 网络唤醒 bios开启网络唤醒_VPN

 

 

点击本地连接--属性--配置。

3670 BIOS Vostro 网络唤醒 bios开启网络唤醒_自动重启_02

 


 

选择高级选项卡。将关机_网络唤醒和魔术封包唤醒的值设置为开启。然后选择电源管理。勾选允许此设备唤醒计算机。

3670 BIOS Vostro 网络唤醒 bios开启网络唤醒_自动重启_03

3670 BIOS Vostro 网络唤醒 bios开启网络唤醒_自动重启_04

 


 

二:主板设置

主板设置由于不同厂商的命名及进入BIOS方式不同。本文只针对公司常用的三种厂商主板进行配置。具体进入BIOS方法可以百度。

2.1 Dell台式机网络唤醒BIOS设置

关机状态下,按下开机按钮。一直不停的按动F2键。直至显示器显示如下画面,即代表进入BIOS。

3670 BIOS Vostro 网络唤醒 bios开启网络唤醒_三层交换机_05

 

使用键盘上下方向键。选中Power Management。空格键打开此菜单。选中Deep Sleep Control。将此选项至为Disabled。

3670 BIOS Vostro 网络唤醒 bios开启网络唤醒_自动重启_06

 


 

继续向下,选中Wake on LAN/WLAN。将此选项至为LAN OR WLAN。

3670 BIOS Vostro 网络唤醒 bios开启网络唤醒_VPN_07

 


 

单击右下角Apply。选中OK。然后选择exit。电脑会自动重启。

3670 BIOS Vostro 网络唤醒 bios开启网络唤醒_自动重启_08

 


 

DELL新版BIOS设置完毕。

 

2.2 联想电脑网络唤醒BIOS设置。

 

关机状态下,按下开机按钮。一直不停的按动F1键。直至显示器显示如下画面,即代表进入BIOS。

3670 BIOS Vostro 网络唤醒 bios开启网络唤醒_VPN_09

 

 

使用键盘左右键移动光标至power选项。将Enhanced power Saving mode 改为Disabled。如下图:

3670 BIOS Vostro 网络唤醒 bios开启网络唤醒_VPN_10

 


 

光标继续向下。选择Automatic Power On。回车进入子菜单。将Wake on lan设置为Primary。Wake from PCI Modem 设置为Primary。

3670 BIOS Vostro 网络唤醒 bios开启网络唤醒_自动重启_11

 


 

按F10进行保存。选择yes。电脑自动重启。

3670 BIOS Vostro 网络唤醒 bios开启网络唤醒_VPN_12

 


 

联想主板WOL设置至此结束。

 

2.3方正电脑(华硕主板)BIOS设置

 

关机状态下,按下开机按钮。一直不停的按动DEL键。直至显示器显示如下画面,即代表进入BIOS。

3670 BIOS Vostro 网络唤醒 bios开启网络唤醒_自动重启_13

 

 

点击右上角-高级模式。选择引导选项。关闭闪速启动,开启从板载LAN引导

3670 BIOS Vostro 网络唤醒 bios开启网络唤醒_自动重启_14

 

 

然后选择高级选项卡--选择ACPI配置。开启PCIE设备开机

3670 BIOS Vostro 网络唤醒 bios开启网络唤醒_VPN_15

 

 

选择退出--保存设置并退出。电脑自动重启。

至此,方正电脑(华硕主板)BIOS设置完成。

完成以上配置,即可通过广播魔术包去找到目的主机进行网络唤醒了。但是由于是广播,所以只能在二层网络进行。但是在实际工作中,我们需要的大多要跨三层网络进行网络唤醒。例如远程唤醒公司电脑,或者家庭电脑。那么我就还需进行其他配置。以下针对公司网络配置跨三层网络唤醒。

跨三层网络远程唤醒

 

 

 

 

 

 

 

 

 

因为wol使用广播的方式进行通信。所以即使进行了以上设置也只能唤醒本地二层网络内的电脑。当广播包到达网关后,会被网关丢弃。导致无法跨网段唤醒处于三层网络的主机。大多情况下我们遇到的反而需要跨三层网络去唤醒公司或者家里的电脑。

 

实现原理

随着现在越来越多的移动办公,通过VPN接入公司。那么我们是不是可以通过VPN接入公司内网。然后再在同一个局域网内,对我们的主机进行唤醒呢。

但是还有一个问题,我们企业一般都使用三层交换机做网关,增强网络的安全性,灵活性。上面说到,远程唤醒使用的广播数据包,是无法通过三层交换机的。

那么只需要三层交换机转发广播包,那么就能像二层网络那样实现远程唤醒。

在三层交换机上开启IP Forward-broadcast功能,使能接口转发广播包。这样我们的远程唤醒广播包就能转发到我们所要唤醒的电脑网卡上,从而实现远程唤醒。但是由于开启转发功能之后。无法抑制广播风暴。我们可以配合访问控制列表使用。建立一条控制策略,只转发指定ip的广播包。

3670 BIOS Vostro 网络唤醒 bios开启网络唤醒_自动重启_16

 

 

配置步骤

例如我们要在外网远程唤醒公司17F楼的电脑。

#开启交换机的端口转发功能

 

telnet 交换机管理IP

<huawei>system-view

[huawei] acl 3001                #创建ACL控制列表

[huawei-acl-ipv4-adv-3200] rule 0 permit ip source 3.0.0.0 0.0.0.255  #放行VPN网段

[huawei-acl-ipv4-adv-3200]quit

[huawei]interface Vlan-interface 17

[huawei-VLAN-interface17] ip forward-broadcast acl 3200    #放行acl 3200列表广播包

[huawei]save

配置验证

我们通过命令行发起对目标主机10.1.17.190的远程唤醒。

使用wolcmd.exe 【mac-address】 【ip-address】 【subnet mask】 【port number】 格式发生魔术包。由于采用广播方式。所以Port number 可以随意填写。

3670 BIOS Vostro 网络唤醒 bios开启网络唤醒_自动重启_17

 


 

观察目标主机是否正常启动。或者使用监听软件WakeOnLanMonitor查看我们的主机是否接收到魔术包。

3670 BIOS Vostro 网络唤醒 bios开启网络唤醒_三层交换机_18

 

 

 

UDP端口=唤醒时采用的端口。

 

总结

 

远程网络唤醒就是将一段基于wol标准的代码发送至被唤醒主机。通过以上设置,我们的远程唤醒服务器发送的代码魔术包就可以发送到指定主机了。

 

主要应用于远程打开家庭及公司电脑。远程打开家庭电脑,需要配置路由器,这里不做展开。