wakeonlan do host remoto

wakeonlan do host remoto

Eu configurei wake on lano serviço no meu servidor. Tudo funciona bem na rede local:

root@server$: poweroff
user@local$ wakeonlan AA:BB:CC:DD:EE:FF

e o servidor acorda.

AA:BB:CC:DD:EE:FFé um endereço MAC do meu server, que possui IP 192.168.1.2e nome de host: example.com. Está conectado ao roteador, que possui IP 192.168.1.1 (público: xxx.xxx.xxx.xxx)

Quando o servidor estiver ativo, posso executar ping:

ping example.com

ou faça login via ssh:

ssh [email protected]

Até agora tudo bem. Agora consigo ativar o servidor da área local, mas como ativar o servidor do local remoto?

Eu tentei: user@local$ wakeonlan -i xxx.xxx.xxx.xxx AA:BB:CC:DD:EE:FF, mas não funciona (nada acontece;).

Preciso configurar meu roteador de alguma forma para encaminhar pacotes mágicos? Como?

A solução

DepoisA resposta de Ragnara solução parecia muito fácil.

Mas, na verdade, foi um pouco complicado.

Meu roteador é Linksys WAG200g, que não suporta Wake on LAN por padrão. Além disso, não permite encaminhar para trigêmeos acima 254(meu endereço de transmissão era 192.168.1.255).

A solução foi encaminhar a porta UDP 7para o endereço do servidor, que era 192.169.1.2, e então chamar:

wakeonlan -i example.com -p 7 AA:BB:CC:DD:EE:FF

Também instalei um novo firmware:

que é uma ótima atualização de opções de roteador (por exemplo, adiciona a opção Wake on LAN).

Também mudei minha máscara de rede de 255.255.255.0para 255.255.255.128, então minha transmissão é agora 192.168.1.127e passa nas regras de validação do roteador.

Aqui está o script que uso para conectar-me à máquina e ativá-la, se necessário:

#!/bin/bash
## This sends magic packets to Wake on Lan
## please note, you must formard port 7 to the target machine on your router

## host to wake up
host="example.com"
## mac address of the machive to wake up
mac="AA:BB:CC:DD:EE:FF"
## user to login
user="administrator"

echo "Looking for $host..."
wget -q --tries=2 --wait=1 --waitretry=5 http://$host/
if [ $? -ne 0 ];
then
    echo "$host is not available."
    echo "Waking up $host."
    wakeonlan -p 7 -i $host $mac
    echo "$host is booting up.  Please wait..."
    sleep 30
    wget -q --waitretry=5 --wait=5 http://$host/
    echo ^G
    echo $host is up! Lucky you!
fi
ssh "$user@$host"

Não se esqueça de instalar:wakeonlan

Responder1

Você precisa encaminhar a porta UDP 9 para o endereço de broadcast na sua rede (192.168.1.255 ou similar).

informação relacionada