Estoy luchando con la configuración WOL de mi Ubuntu en este momento. La idea es tener un servidor HTTP/SVN para que duerma mientras no se utiliza y se active cuando se accede a él. Hasta ahora, Wake-on-LAN funciona y se activa al inicio:
Settings for eth1:
Supported ports: [ TP ]
Supported link modes: 10baseT/Half 10baseT/Full
100baseT/Half 100baseT/Full
1000baseT/Full
Supports auto-negotiation: Yes
Advertised link modes: Not reported
Advertised pause frame use: No
Advertised auto-negotiation: Yes
Speed: 1000Mb/s
Duplex: Full
Port: Twisted Pair
PHYAD: 0
Transceiver: internal
Auto-negotiation: on
MDI-X: Unknown
Supports Wake-on: pg
Wake-on: pg
Current message level: 0x0000003f (63)
Link detected: yes
Como puedes ver, también puse la wol p
bandera ('despertar a la actividad física'). Supuse que podía convencer al dispositivo para que se activara no solo con paquetes mágicos, sino también con cualquier acceso a la red. Sin embargo, esto parece estar mal.
¿Qué significa entonces esta bandera y (cómo) puedo hacer mal uso de ella para mis malvados planes?
Respuesta1
Nota: la pregunta es una publicación cruzada de hace más de 4 añosaquí. No estoy seguro de por qué recibe una recompensa después de más de 4 años, pero probablemente recibió un paquete wol ;-)
Elmanual de herramientas ethdice:
wol p|u|m|b|a|g|s|d...
Set Wake-on-LAN options. Not all devices support this. The
argument to this option is a string of characters specifying
which options to enable.
p Wake on phy activity
u Wake on unicast messages
m Wake on multicast messages
b Wake on broadcast messages
a Wake on ARP
g Wake on MagicPacket(tm)
s Enable SecureOn(tm) password for MagicPacket(tm)
d Disable (wake on nothing). This option clears all previous
options.
La actividad PHY se refiere a lachip físico, que maneja la comunicación en la capa física delmodelo OSI. En términos simples: cualquier paquete enviado directamente a este dispositivo de red debería activar la máquina.
Se deben cumplir las siguientes condiciones antes de que funcione Wake on PHY:
- su dispositivo de red admite estoysu controlador de red lo admite. No estoy seguro de si ethtool está comprobando esto exhaustivamente antes de configurar el parámetro. Consulte su manual/especificaciones para ver si esta característica específica es compatible.
- su tarjeta ethernet todavía está encendida después del apagado (las luces LED deben estar encendidas). Si este no es el caso, asegúrese de que su sistema operativo no esté apagando la tarjeta (en la mayoría de las distribuciones de Linux instaladas
NETDOWN=no
)/etc/default/halt
. - La configuración de wol se conserva después del modo de suspensión/apagado.
- wol está habilitado en la configuración de su BIOS.
También tenga en cuenta que el tiempo de espera predeterminado de ARP es de 30 segundos (consulte tambiénesta publicación de SU). Después de eso, la dirección IP de su máquina de destino será olvidada por la máquina desde donde envía cualquier paquete físico. Asegúrese de configurar una dirección ARP estática en la máquina desde donde envía el paquete.
Ahora cualquier solicitud dirigida (ping, http, ssh, un paquete wol, ...) debería hacer que su máquina se active.
Respuesta2
Creo que tu suposición es correcta. Hay muchos eventos diferentes desde los que puedes configurar tu dispositivo para que se despierte. Desafortunadamente, la documentación sobre ethtool no es muy clara sobre la bandera p.
Algunas preguntas que podrían ayudar a analizar el problema: Cuando su máquina está apagada, ¿puede confirmar que la tarjeta de red todavía está funcionando (los LED parpadean)? ¿Está intentando reactivar su máquina desde la misma subred o a través de un enrutador? ¿Cómo intentas despertarlo? ¿Puede utilizar un rastreador de red (wireshark) en la misma red para confirmar que los datos realmente se envían en la subred?