
Я могу успешно вывести свой компьютер из спящего режима, если мое устройство Android подключено к локальной сети, но я не могу вывести свой компьютер из спящего режима из другой сети.
Все настройки BIOS WOL включены. Я также открыл порт (9 UDP) и использую DDNS.
В моем брандмауэре есть правило, разрешающее входящие пакеты на порт 9.
Я пытаюсь проверить, получает ли мой компьютер пакет Magic Packet с помощью Wireshark, но не вижу входящих пакетов. Я отправляю пакет с помощью Fing (приложение для Android).
Что я делаю не так?
Примечание:Я использую Ubuntu 14.04 LTS.
решение1
Wake-on-lan не работает через интернет
Это хорошо. Вы же хотите, чтобы случайные люди будили вашу систему через Интернет?
Ваш компьютер находится за маршрутизатором. Практически везде, где ваш телефон имеет доступ в Интернет, он также находится за маршрутизатором, будь то муниципальный Wi-Fi, Starbucks, ваше рабочее место и т. д.
Пакеты WOL являются широковещательными пакетами. Стандартные маршрутизаторы не пересылают широковещательные пакеты. Широковещательные пакеты не предназначены для выхода за пределы вашей локальной сети, можете ли вы представить себе возможности для злоупотреблений, если бы они это сделали?
Правильный способ сделать то, что вы пытаетесь сделать, заключается в следующем: вам нужна система в вашей сети, которая постоянно включена, в которую вы можете зайти, войти и сказать, чтобы она выдала пакет WOL в вашей сети. DD-WRT имеет такую возможность, если ваш маршрутизатор прошит на нее.
решение2
Вот почему это называется «Пробуждение по-Локальная сеть". Предполагается, что он будет работать в локальных сетях.
Однако мне не раз говорили, что, к моему удивлению,любойПакет, полученный сетевой картой компьютера, может быть магическим пакетом, если он
- адресован широковещательному MAC-адресу, и
- содержитв любом местев полезной нагрузке магическая строка (6x
FF
и 16xcomputer's MAC address
)
Однако ваш маршрутизатор должен разрешать пересылку пакетов на широковещательный MAC-адрес, или система WoL вашего компьютера должна быть более гибкой, например, принимать WoL, адресованные на его собственный MAC-адрес (я на самом деле думал, что это стандартный подход, ноВикипедия говорит, что я не прав).
Поскольку, похоже, что Интернет WoL ненадежен, так как вы будете зависеть от промежуточных маршрутизаторов, которые его разрешают, вы, вероятно, будете в большей безопасности, если найдете в своей сети что-то, что вы можете использовать для выполнения WoL за вас. Например, возможность ssh
(или telnet
, но это опасно) на ваш маршрутизатор и отправить оттуда пакет Magic. Или, если ваш маршрутизатор поддерживается, проверьтеdd-wrtи прошейте ваш маршрутизатор, если вы с этим согласны. dd-wrt
может использоваться для отправки магического пакета из вашей сети, и поскольку он всегда включен, вам не понадобится дополнительное оборудование, работающее круглосуточно.
Я использую Raspberry Pi в качестве "платформы" WoL - маршрутизатор имеет порт, перенаправленный на ssh
сервер Pi, поэтому я ssh
отправляю пакет Magic на Raspberry Pi оттуда. Поскольку он находится внутри локальной сети, почти гарантированно, что WoL будет работать.