Art*_*rtM 9 router wake-on-lan
我有一个完美运行的 TP-WR741ND 路由器和它的原生固件(可能不那么重要,但这里是:3.12.4 Build 100910 Rel.57694n)。
路由器直接连接到 LAN PC(192.168.0.0/24 网络)。我可以从我的办公室(即从 Internet)管理路由器。我希望能够从办公室唤醒我的家用 PC。
我可以将 WoL 数据包(“魔法数据包”,UDP 端口 9)从我办公室的 PC 发送到我的路由器。我可以将路由器设置为将其重新发送到 LAN 地址(转发 > 虚拟服务器),并且在正在运行的目标 PC 上,我可以看到“魔术数据包”到达它(我已经检查了网络流量以确保)。问题是我在转发时无法提供 192.168.0.255 地址。我得到:
错误代码:26106 IP 地址与 LAN IP 地址不在同一子网中。
是否可以让路由器正常发送magic包到网络广播地址*.255?如果是,怎么做?
LAN 唤醒数据包通常针对特定的 MAC。远程执行此操作的问题在于您无法从非本地网络定位 MAC 地址。
通常,当一个数据包的目的地是一个 IP 地址时,与目标设备在同一网络上的路由器会说“谁有 IP 地址 xxxx”,拥有该地址的设备回复“是我,发送到 mac地址 xx:xx:xx:xx:xx:xx”。这是一个arp请求。应答后,路由器会将数据包转发到 mac 地址。
将数据包转发到关闭的机器的问题是它无法响应 arp 地址。但是,如果您使用路由器的 ARP 绑定功能,您可以说 IP 地址 xxxx 是 mac 地址 xx:xx:xx:xx:xx:xx,因此路由器不需要执行 ARP 请求 - 它已经知道IP 地址的 mac 地址,它包含在其 ARP 绑定表中。
所以你需要做三件事:
因此,WOL 数据包将以路由器的公共 IP 地址为目标,并定位到内部地址。然后路由器会看到它有一个存储在其 ARP 绑定表中的 MAC 地址,因此将数据包转发到 MAC 地址(即使机器关闭)而不尝试 ARP 请求。
WOL 功能将看到数据包到达其网卡,具有正确的 MAC 并打开 PC。