Assine a Lista Dicas-L
Receba diariamente por email as dicas
de informática publicadas neste site
Para se descadastrar, clique aqui.
Ligue seu micro remotamente (wake on lan)
Colaboração: Renato Mangini
Data de Publicação: 01 de Dezembro de 2007
Tenho uma configuração ideal para trabalhar em casa: um roteador+firewall, um PC com muito disco e um notebook. Porém, precisava com frequência acessar o meu computador de casa quando estava em viagem ou em algum cliente (por exemplo, para o repositório subversion, via SSH). Não gosto da idéia de deixar o computador ligado 24x7, pois baixo pouca coisa e acho um gasto de energia ($$) desnecessário.
Pois bem, para resolver esse problema configurei o tal Wake-on-LAN que muitos devem ter ouvido falar, para funcionar como Wake-on-WAN. Tem alguns caveats que descrevo abaixo, pois podem ser úteis para mais algúem.
Wake-on-LAN (WoL)
Se a sua placa-mãe suportar, o seu computador poderá ser ligado ao receber um pacote especial (chamado de Magic Packet) via UDP. O pacote deve conter uma sequência de bits predefinida (alguns 0xff) seguida do endereço MAC da sua placa de rede repetida três vezes. Ao reconhecer um pacote com esse formato chegando via protocolo UDP em uma determinada porta (geralmente 7 ou 9), a placa de rede aciona um dispositivo da sua placa-mãe e inicializa o computador. A placa de rede fica meio que hibernando enquanto o computador está desligado, e só responde a esse magic packet.
Mais informações sobre WoL na [Wikipedia http://en.wikipedia.org/wiki/Wake-on-LAN]
Quick-and-dirty WoL for (not-so) dummies
- Configurar a sua BIOS para permitir o WakeOnLan. Aproveite e confira qual a porta em que ele aceita os magic packets. Geralmente é a porta UDP 9.
- Configurar o seu roteador/firewall para, ao receber um pacote em uma porta arbitrária, redirecioná-lo para a porta correspondente do WoL. No meu caso, uso um roteador DLink DI-624. A porta aceita pela minha placa-mãe é a 9, e tive que fazer uma gambiarra para funcionar (veja observação abaixo). Se seu computador está ligado direto ao cable/ADSL modem, pode saltar esse passo;
- Arranjar um jeito de saber remotamente qual o IP da sua subrede. Uma idéia é usando um serviço de IP dinâmico, como o http://www.dyndns.com ou o http://www.no-ip.com . Alguns roteadores, como o DI-624, permitem configurar sua conta nesses serviços. Assim, se a energia acabar, quando o modem ADSL/cabo voltar um novo IP pode ter sido fornecido pelo seu provedor. O roteador, nesse caso, atualiza o DNS dinâmico automaticamente;
- Baixar e instalar no cliente (máquina que vai enviar o pacote) um programa que monta e envia o Magic Packet. Eu usei um [script em Perl http://gsd.di.uminho.pt/jpo/software/wakeonlan/], mas tem programas para várias outras linguagens. Para executá-lo, é necessário saber qual o IP ou nome da sua rede (veja item anterior), e o MAC address da sua placa de rede (digite ipconfig no Windows ou ifconfig no Linux).
Problemas com roteador/firewall
Se, por definição, a máquina que queremos ligar está desligada, então ela não obteve ainda um endereço IP e por isso não dá para configurar o roteador para fazer forwarding para o IP dela. A solução seria um broadcast para toda a rede, correto? (por isso que se chama Wake on LAN, e não Wake on WAN). O problema é que a maior parte dos roteadores não permite port forwarding para o endereço de broadcast da rede. O meu, inclusive, é um desses (Dlink DI-624).
Na tela de configuração avançada (Advanced->Virtual Server) do DI-624, tem um campo para endereço IP. Colocando o valor 192.168.0.255 (broadcast) gera um erro. Analisando a página, vi que a validação acontece no Javascript da página, e tentei arriscar olhando o formulário que é enviado. Mandei o formulário diretamente via GET e... adivinhem... funcionou! :-) Então, apesar da página de configuração não permitir, no software do roteador não há nenhuma restrição a broadcast, e funciona perfeito.
Para os preguiçosos, no caso do DI-624, basta acessar a seguinte URL (mude em pubPort e priPort os valores adequados para a sua configuração): http://192.168.0.1/adv_virtual.cgi?editRow=-1&delrow=-1&name=Wake+on+lan&ip=192.168.0.255&protocol=17&priPort=9&pubPort=1234&schd=0&hour1=0&min1=0&am1=0&hour2=0&min2=0&am2=0&day1=0&day2=0
Depois, confira em http://192.168.0.1/adv_virtual.html se apareceu uma regra de forwarding com o nome de "Wake on lan".
Li também que alguns roteadores permitem essa configuração por meio da interface telnet, mas não pela Web. Neste caso, basta logar via Telnet e tentar, conforme as instruções específicas do seu roteador.
Outra opção, caso o roteador tenha servidor telnet, é logar nele e tentar configurar uma entrada estática na tabela ARP.
Se não for possível fazer broadcast nem mudar a tabela ARP, aí desista. Provavelmente não terá jeito :-(
Referências Adicionais
Referências adicionais sobre os assuntos abordados neste site podem ser encontradas em nossa Bibliografia.
Avalie esta dica
Opinião dos Leitores
01 Jun 2012, 18:39
27 Jan 2012, 18:56
obrigado pela dica
11 Nov 2011, 16:49
O modem está configurado em modo bridge. (quem disca é o tp-link). No tp-link reservei um ip para o pc no item DHCP. Fiz o redirecionamento da porta 9 para esse ip (no item fowarding). No item Security - Remote Management hablitei o acesso remoto alterando o item Remote Management IP Address para 255.255.255.255. Assim habilita o acesso á pagina do roteador via internet. Fiz uma conta no Dyndns e preenchi os dados no item Dynamic DNS. No Setup do pc no item Power Management Setup habilitei os itens PME event Wake Up e o Power On By Ring. Nesse mesmo item so setup alterei o AC Back Function para Memory.
Pronto tudo configurado foi só instalar o programinha wol magic packet sender e preencher os dados solicitados nos campos.
10 Nov 2011, 10:02
tenho um d-link DVA-317oi e o meu problema é esse mesmo ... nao consigo ligar via internet o computador que está á distancia.
já experimentei mil maneira ... e só dá num curto espaço de tempo depois de desligar o computador (tipo 5/10 minutos) depois ... deixa de dár pura e simplesmente.
já tentei ligar um d-link dir-625 a este (e depois de abrir as portas 9 udp em todos) continua sem dár.
Pedia ajuda a todos que sabem e percebem mais de redes, para conseguir fazer isto.
Obrigado
01 Nov 2011, 21:08
04 Out 2011, 13:19
26 Mai 2011, 20:45
Estou encontrando dificuldades em fazer o WoL funcionar via internet para ligar meu computador doméstico daí pesquisando na net cheguei a este teu post. Possuo um modem D-Link 500B e já tentei fazer algumas configurações no mesmo e nada! Engraçado é que tudo me parece estar correto, pois eu abro o programa WOL Magic Packet Sender em meu local de trabalho e fico enviando "Magic Packets" para meu computador (que já se encontra ligado e no qual estou conectado remotamente) e o mesmo recebe estes pacotes. Tenho este mesmo programa instalado em casa e o coloco no modo Receive e o mesmo acusa o recebimento dos pacotes. O que pode estar ocorrendo ? Já fui à BIOS e habilitei o WoL. Alguma sugestão?
Grato pela atenção.
19 Fev 2011, 21:10
04 Jan 2011, 11:02
26 Nov 2010, 00:14
31 Out 2010, 12:08




