假设我有一个 Internet 连接,其公共 IP 地址为 123.123.123.123。此连接将连接到一个路由器,该路由器提供从 192.168.1.100 到 192.168.1.200 的地址。
中继器作为客户端连接到路由器。然后,中继器连接到另一个路由器,该路由器提供从 192.168.2.100 到 192.168.2.200 的地址。
我想要唤醒的电脑在第二个路由器上的IP是192.168.2.102,MAC是11:aa:11:aa:11:aa。
局域网唤醒使用本地网络上的 192.168.2.102 进行,使用 MAC 11:aa:11:aa:11:aa。
如何使用此设置使 LAN 唤醒从外部 IP 工作?
下面的图表说明了该设置:
路由器带有 进一步的路由器带有 内置内置 DHCP。 DHCP 服务器 WAN 端口---| 192.168.2.100-200 范围 [目标计算机] | | \->| | | | | 范围为 192.168.1.100-200 的 LAN | | | 外部 IP --------/ \-------------------(中继器)-----/ \-----------(LAN 部分 2)--------- 123.123.123.123 WOL 对目标不起作用 WOL 对目标起作用
答案1
为了做到这一点,你的内部路由器必须支持子网定向广播。
子网定向广播
标准广播局域网唤醒的主要限制是广播数据包通常不被路由。这使得该技术无法在大型网络或互联网上使用。子网定向广播 (SDB) 可用于克服此限制。SDB 可能需要更改中间路由器配置。子网定向广播被视为普通网络数据包,直到由最终(本地)路由器处理。此路由器将数据包转换为真正的广播数据包。此技术允许在远程网络上发起广播,但要求所有中间路由器转发 SDB。在准备网络以转发 SDB 数据包时,必须小心进行过滤,以便只允许所需的(例如 WoL)SDB 数据包 - 否则网络将成为 DDoS 攻击(例如 Smurf 攻击)的参与者。
请参阅路由器的固件文档,了解它是否支持此功能。
您的第二个选择是让内部 LAN 中始终处于开启状态的计算机监听正常的 TCP 连接,并让该计算机广播 WOL 数据包(如果您有可自定义的固件,如 dd-wrt,您可以让路由器本身成为该计算机)。这就是 LogMeIn 服务执行 WOL 的方式,如果它检测到同一网络上的两台计算机正在使用该服务,它将使用开启的计算机向关闭的计算机广播 WOL 数据包。