Możesz równie dobrze - zamiast logować się na serwer i z niego wysyłać "magic packet" - wysłać go z dowolnej maszyny w Internecie. "Magic packet" i tak jest enkapsulowany w udp (domyślnie) albo tcp, więc wystarczy na routerze przekierować odpowiedni port (z reguły udp/7) na maszynę, którą chcesz obudzić. Wtedy wysyłasz - czy to za pomocą linuxowego wakeonlan czy wol, czy też za pomocą jednego z kilku dostępnych windowsowych programików - magic packet na adres zewnętrzny routera, z portem docelowym (n.p.) udp/7
== EDIT ==
Właśnie sprawdziłem.
1. Przekierowuję port udp/9
Cytuj:
$i -t nat -A PREROUTING -p udp --dport 9 -j DNAT --to-destination <ip_hosta_do_obudzenia>:9
2. Wchodzę na stronkę
http://www.wakeonlan.me/
IP or host name - wpisuję adres publiczny routera
MAC - wpisuję MAC maszyny do obudzenia
Potem Klikam "Wake Up my PC !" i budzi
W /etc/ethers mam oczywiście wpisany IP MAC budzonego hosta.
== EDIT ==
Skrypt z zacytowanej stronki może wysyłać magic packet na inny, dowolny port, więc można sobie zmienić - chociażby po to, żeby ktoś nam głupich numerów nie robił