Estou lutando com as configurações WOL da minha caixa Ubuntu no momento. A idéia é ter um servidor HTTP/SVN para dormir enquanto não estiver em uso e acordar quando for acessado. Até agora, o wake-on-LAN funciona e é ativado na inicialização:
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 você pode ver, também coloquei a wol p
bandeira ('acordar com atividade física'). Minha suposição era que eu poderia convencer o dispositivo a ativar não apenas em pacotes mágicos, mas em qualquer acesso à rede. Isto, no entanto, parece estar errado.
O que esta bandeira significa então, e: (Como) posso usar isso indevidamente para meus planos malignos?
Responder1
Nota: a pergunta é uma postagem cruzada de mais de 4 anos deaqui. Não sei por que ele recebeu uma recompensa depois de mais de 4 anos, mas provavelmente recebeu um pacote wol ;-)
Omanual ettooldiz:
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.
A atividade PHY refere-se aoChip físico, que lida com a comunicação na camada física doModelo OSI. Em termos leigos: qualquer pacote enviado diretamente para este dispositivo de rede deve ativar a máquina.
As seguintes condições devem ser atendidas antes que o wake on PHY funcione:
- seu dispositivo de rede suporta issoeseu driver de rede suporta isso. Não tenho certeza se o ethtool está verificando isso extensivamente antes de definir o parâmetro. Verifique seu manual/especificações para ver se esse recurso específico é compatível.
- sua placa Ethernet ainda está ligada após o desligamento (as luzes LED devem estar acesas). Se este não for o caso, certifique-se de que seu sistema operacional não esteja desligando a placa (na maioria das distribuições Linux instaladas
NETDOWN=no
)/etc/default/halt
. - as configurações wol são preservadas após suspensão/desligamento.
- wol está ativado nas configurações do BIOS.
Observe também que o tempo limite padrão do ARP é de 30 segundos (veja tambémesta postagem SU). Depois disso, o endereço IP da sua máquina alvo será esquecido pela máquina de onde você está enviando qualquer pacote físico. Certifique-se de definir um endereço ARP estático na máquina de onde você está enviando o pacote.
Agora qualquer solicitação direcionada (ping, http, ssh, um pacote wol, ...) deve ativar sua máquina.
Responder2
Acho que sua suposição está correta. Existem muitos eventos diferentes dos quais você pode configurar seu dispositivo para despertar. Infelizmente, a documentação do ethtool não é muito clara sobre o sinalizador p.
Algumas perguntas que podem ajudar a analisar o problema: Quando sua máquina é desligada, você pode confirmar se a placa de rede ainda está funcionando (LEDs piscam)? Você está tentando ativar sua máquina na mesma sub-rede ou por meio de um roteador? Como você está tentando acordá-lo? Você pode usar um sniffer de rede (wireshark) na mesma rede para confirmar se os dados são realmente enviados na sub-rede?