我有一个通过 Linux 机器连接到互联网的网络,该机器进行路由。路由器有两个接口:
- eth1:连接到互联网
- eth2: 局域网
在局域网中我有两台机器:
- 工作站
- 目标
所有机器都在 Debian Linux 下运行。
我尝试使用 wakeonlan 工具远程启动“目标”主机。
当我这样做时,在工作站上:
sudo wakeonlan 94:c6:91:1b:3d:2a
大约一分钟后,目标主机启动。
但是当我在路由器上执行同样的事情时,目标没有启动。
我猜想这与接口有关,但是 wakeonlan 不允许我指定发送魔术包的接口。
有什么方法可以诊断并修复它吗?
路由器上安装了防火墙(使用 iptables),但我确实没有看到任何禁止 wakeonlan 的规则。
答案1
我认为您关于所使用的接口是问题所在这一假设是正确的。
也许您可以通过提供更有限的广播地址来强制接口使用。假设您的 LAN 网络是192.168.10.0/24
,请尝试
sudo wakeonlan -i 192.168.10.255 <mac address>
(这尚未测试,仅供尝试)。
如果这不起作用:etherwake
让您指定带有交换机的接口-i
,并在 Debian 存储库中可用。