Wake-On-LAN

WOL

去年在Limo那里看过一阵子Wake-On-LAN的东西,用一个Windows下的程序在局域网实现了WOL。现在在家平常用笔记本,用wakeonlan包提供的wakeonlan命令来开台式机:

wakeonlan MAC Address

WOW

WOW即Wake-On-WAN,就是说在因特网上远程开机。

http://www.wakeonlan.me/http://www.depicus.com/wake-on-lan/woli.aspx的页面试图开过台式机。首先要在路由器里面设置把端口9 (discard)转发给台式机的IP 192.168.1.2,但仍然不成功。在笔记本上抓取ARP包,发现每次用这两个页面发送开机包的时候,会立刻显示3个APR包:

22:10:49.314895 ARP, Request who-has 192.168.1.2 tell 192.168.1.1, length 28

22:10:50.314895 ARP, Request who-has 192.168.1.2 tell 192.168.1.1, length 28

22:10:51.314881 ARP, Request who-has 192.168.1.2 tell 192.168.1.1, length 28

上面ARP的诊断信息很有帮助,说明至少数据包是被路由器转发到了局域网。

192.168.1.1(路由器)问网内的用户:谁的IP是192.168.1.2?

笔记本192.168.1.3也收到了。路由器不知道谁的IP是192.168.1.2,所以才持续地询问。我们还需要在路由器的设置中,把192.168.1.2和台式机的MAC地址绑定,即在路由器增加一条静态APR记录。这样,当通过因特网发送WOL魔法包的时候,这个魔法包通过端口9转发给192.168.1.2,可是这个IP根本就无法到达(电脑没有开机呢)。通过静态ARP表查询,数据包可以知道这个IP(不管它能不能到达)在链路层对应的MAC地址,这样WOL魔法包顺利到达台式机,达到了从因特网开启局域网机器的目的。

从因特网开启局域网机器,需要知道路由器的IP地址。对于ADSL网络,这个地址会经常变化,需要在路由器设置动态DNS。此外,需要记住要开机电脑网卡的MAC地址。