ethtool, WOL: ¿Qué significa realmente "despertar con actividad física" y (cómo) puedo usarlo?

ethtool, WOL: ¿Qué significa realmente "despertar con actividad física" y (cómo) puedo usarlo?

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 pbandera ('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?

información relacionada