Wake On Lan在一段时间后不工作,我该如何解决?

上周我安装了Ubuntu,并试图用Wake On Lan启动它。

我将所有传入的数据包在端口9重新路由到服务器。 当它是魔术包服务器将启动。 一切顺利,直到我第二天从不同的位置尝试。 这是行不通的。 于是我开始Googlesearch并做了一些testing,发现服务器在x分钟后不会响应这个魔法数据包。

我有telnet访问我的路由器,如果有什么我需要改变那里。

如果您的路由器configuration为将WOL数据包转发到您的睡眠计算机,则需要能够根据IP地址(这是ARP协议的作用)来发现计算机的MAC地址。 但是,在电脑closures的情况下,ARP将无法工作,所以一旦路由器的ARPcaching过期,相关条目将被删除,而且你运气不好(这显然需要20分钟的时间)。

有些路由器可以静态configuration这个ARP映射,或者使用静态IPconfiguration作为ARP映射,或者包含他们自己的WOL工具来完成这个工作(例如Tomato和DD-WRT固件) – 你必须检查你的看看是否支持。

另一个select是将WOL数据包转发到广播地址(如192.168.1.256,如果这是你的子网的地址),但是这在所有路由器上都不被支持。

如果您正在使用企业级交换机或路由器,则可能需要查看以下两条指令:

ip directed-broadcast 

 ip forward-protocol 

这些指令大多在思科或其他采用思科CLI的供应商中普遍使用。 ip directed-broadcast指令指示交换机/路由器转发任何发往子网广播地址的数据包,就像它是一个单播数据包一样。 这意味着,你的UDP数据包的目的地为192.168.1.255(对于子网192.168.1.0/24)将被转发到目标子网192.168.1.0/24,就好像它是可寻址的。 一旦数据包到达直接连接到192.168.1.0/24的跳(路由器/交换机),您的ip forward-protocol指令将接pipe。

由于192.168.1.255是广播地址,因此不存在与其相关的MAC地址。 因此,交换机必须将目标MAC地址分解为FF:FF:FF:FF:FF:FF。 意思是,交换机/路由器必须将数据包发送到交换机上的所有操作端口(即2层广播)。 ip forward-protocol指令就是这样做的。 这样就不需要在路由器/交换机的ARP表中存储静态ARP条目。 注意,你不想使用ip helper-address指令(除非你需要),因为它仅限于转发像NTP,NetBIOS等一些常见的udp协议。局域网唤醒不是其中之一。

而且,在我们的工作环境中,机器上的BIOS设置和不同的网卡都出现了问题。 在某些情况下,WoL只能工作一次,然后失败。 将电脑完全从墙上断开(networking和电源线),让主板上的电容放电,然后重新连接这些电脑似乎可以解决问题。 但是,这是无法解决的。 我们目前正在与我们的供应商(戴尔)调查这些exception。 希望这可以帮助。

一些路由器不会将lan包的唤醒转发到本地networking,您将需要检查您的路由器是否会