5

我想远程唤醒我的 NAS 服务器,但我的路由器阻止了 WOL 数据包。我想我可以通过 ssh 进入我们的 androidTV 盒子,然后在 LAN 上从那里发送一个 WOL 数据包来规避这个问题。我可以 ssh 进入 androidTV,但不能发送 WOL 数据包。是否可以对 androidTV 运行图形 ssh 会话,然后使用 Play 商店中的 WOL 应用程序之一?或者有什么方法可以从终端使用 WakeOnLan 应用程序?

4

1 回答 1

0

当我试图实现同样的目标时,我已经找到了解决方案。

问题: 我需要使用 Wake on Lan (WoL) 命令远程开启我家中的服务器。为了让 WoL 可靠地工作,需要使用 LAN 内的 PC 来发送 WoL 命令,而不是远程 PC。我不完全理解原因,但它与路由器在设备断电后清除ARP表缓存有关。在我们的例子中,服务器已关闭但我们想远程打开它。有关详细信息,请在此处阅读:https ://serverfault.com/questions/161560/how-to-get-wake-on-lan-working/349783#349783

解决方案 您可以在 LAN 中拥有一个设备,该设备可以将 WoL 命令发送到断电的服务器。一种方法是拥有一个运行 SSH 服务器的根 Android 设备。您可以使用 SSH 远程登录 Android 设备,然后发送 WoL 命令。

我使用的步骤

  1. 根 Android 设备并确保您已安装BusyBox
  2. 在 Android 上安装 SSH 服务器。https://android.stackexchange.com/questions/9905/is-there-some-ssh-server-for-android。我使用了SSHDroid。
  3. 使用 SSH 远程登录您的 Android 设备。前任:ssh -p 2222 root@xxx.xxx.x.xxx
  4. 使用 发送 WoL 命令ether-wake -b -i wlan0 XX:XX:XX:XX:XX:XX。参考:https ://forum.xda-developers.com/showthread.php?t=2495288
  5. 使用此示例,可以一次性组合步骤 3 和 4:ssh -p 2222 root@xxx.xxx.x.xxx "su -c ether-wake -b -i wlan0 XX:XX:XX:XX:XX:XX"

笔记:

  • 上述步骤可能因设备类型而异。更新步骤适用于 Android 设备,但相同的原理可用于非 Android 设备。
  • 在 Android 上,您不能使用wakeonlan命令。你必须使用ether-wake命令。这是因为 BusyBox 没有安装wakeonlan.
  • 您必须具有 sudo 或 root 权限才能发出ether-wake命令
于 2018-02-06T06:14:19.303 回答