-->

quarta-feira, 30 de julho de 2008

Ressuscitando roteadores Linksys



Um amigo me entregou um Linksys BEFW11S4 v4 para testar e de cara percebi algo estranho: o led Power piscando permanentemente.

Editado: Após consertado constatei que o normal é Power piscar apenas nos primeiros três segundos e depois ficar permanentemente aceso.

Numa pesquisa rápida constatei que isso sinaliza firmware corrompido e que a Linksys tem um procedimento de recuperação para esses casos, que na teoria parecia fácil, mas apanhei feio por causa de lacunas nas explicações e links quebrados. Neste post eu vou explicar como se contornam as muitas falhas nas explicações da Linksys.

Primeiro passo: Veja se a comunicação ainda é possível
  • Limpe a configuração do roteador pressionando o botão RESET por 30 segundos. Eu não fiz isso, mas o teste deu certo assim mesmo. Caso o seu não dê, faça;
  • Conecte diretamente seu computador a uma das portas LAN do roteador. Eu conectei à porta 1;
  • Mude a configuração de sua placa de rede para "10baseT half-duplex" ou semelhante. Normalmente a placa de rede está configurada como "Negociação Automática".
  • Mude o endereço IP da placa de rede para 192.168.1.2 com máscara 255.255.255.0. Você pode colocar 192.168.1.1 como gateway, mas não creio que seja necessário.
  • Abra um prompt de comando e execute ping 192.168.1.1. Se houver resposta, ainda há esperança e você pode passar para a instalação do firmware.

Nota: 192.168.1.1 é o endereço IP padrão do BEFW11S4 e do WRT54G. O que li até agora me levou a entender que seja o endereço padrão da maioria dos roteadores Linksys, mas na dúvida (caso o teste não funcione) verifique se o endereço IP padrão do seu modelo é esse mesmo.


Segundo passo: Instalar o firmware

Atenção: Se você tiver um firewall de terceiros instalado poderá ser melhor desligá-lo durante esse procedimento. O meu estava ligado, mas como estava em modo "learning" e não tinha nenhuma regra para isso já definida me permitiu liberar a comunicação.
  • Baixe o firmware correspondente ao seu roteador no site da Linksys. Provavelmente você vai baixar um arquivo *.bin.
  • Como o nome original do arquivo pode ser algo impronunciável como "befw11s4_v4_v1.52.02_000_FCC_code.bin", renomeie para um nome mais simples de ser digitado, como "linksys.bin" (usuários *nix gostam de digitar longas seqüências de caracteres com letras maiúsculas misturadas com minúsculas e símbolos mas nós usuários Windows tendemos a achar isso masoquismo);
  • Desligue o roteador da tomada;
  • Abra um prompt de comando na pasta onde está linksys.bin e deixe pronto (digitado sem o ENTER) o comando
    "tftp -i 192.168.1.1 put linksys.bin
    "
  • Ligue a fonte do roteador e dê ENTER (uma pausa de 1 segundo pode ser necessária);
  • Aguarde, porque parecerá ter travado. Em cerca de 30 segundos (para um firmware de 315KB) você deverá receber uma mensagem "Transferência bem sucedida";
  • Teste acessando http://192.168.1.1 no browser;
  • Não esqueça de reconfigurar sua placa de rede para "negociação automática" e o endereço IP que você tinha antes.

A explicação longa (as pedras no caminho)

É na instalação que as explicações oficiais falham miseravelmente. A única explicação oficial que encontrei vai só apenas até o teste e omite como se instala. Em vários fórums e sites fala-se que você precisa do utilitário tftp.exe da Linksys e que ele já vem no zip (que supostamente também tinha as instruções) com o firmware, mas hoje nenhum firmware no site da linksys vem acompanhado do programa ou instruções e o link direto para o arquivo está quebrado há muito tempo. Nenhum outro lugar parece ter o arquivo para download.

Então eu encontrei instruções em uma página sobre o modelo WRT54G5 sobre como fazer isso com o cliente tftp que já vem no Windows XP:

tftp -i 192.168.1.1 put nomedofirmware.bin

Mas ao tentar isso recebi repetidas vezes a mensagem

Erro no servidor: Flash is in used !!

Além do inglês capenga, não existe documentação sobre esse erro. Apenas quatro resultados no Google (este post provavelmente será o quinto agora) e o único relevante informava que nem o suporte da Linksys sabia do que se tratava e ainda tinha um idiota sugerindo reformatar o HDD para resolver o problema. Animador, né?

Eu cheguei a pensar que a instalação só fosse mesmo possível com o tftp.exe da Linksys e perdi mais um bom tempo procurando por ele. Então eu esbarrei em uma página não-oficial que sugeria que o roteador só esperava pelo firmware até cinco segundos após ser ligado. Fazia sentido, já que a mensagem de erro sugeria que a flash "estava em uso". Preparei o prompt com o comando, desliguei o roteador da tomada, liguei e dei ENTER para enviar. Pareceu ter travado mas esperei e 32 segundos depois deu a mensagem:

Transferência bem sucedida: 322036 bytes em 32 segundos, 10063 bytes/s

Digitei http://192.168.1.1 no browser e finalmente o roteador respondeu perguntando a senha!

O par login/senha padrão "admin/admin" não funcionou, então apertei o botão de reset do roteador até o LED "wireless" piscar e tentei de novo.

Problema resolvido.

20 comentários:

  1. Jefferson! Post muito útil! Vai salvar a vida de muita gente!

    Observação interessante: Tenho acesso a um Linksys WRT54G na casa do meu pai, e lá é eu que gerencio 92,7% das coisas relacionadas com tecnologia recente, e isso inclui a rede de computadores. Instalei o firmware DD-WRT (v24) nesse Linksys e essa característica de que "o roteador só esperava pelo firmware até cinco segundos após ser ligado" é opcional no firmware, vem ligada por padrão e foi batizada de Boot Wait. O help do DD-WRT fala um pouco sobre isso:

    ABRE ASPAS.

    Boot Wait
    Boot Wait is a feature you will hopefully never need. It introduces a short delay while booting (5s). During this delay you can initiate the download of a new firmware if the one in the flash rom is not broken. Obviously this is only necessary if you can no longer reflash using the web interface because the installed firmware will not boot. See the DD-WRT documentation for more information.

    Note
    It is recommended that you enable the Boot Wait feature. This will help you recover in the future should you flash your router improperly.

    FECHA ASPAS.

    Obviamente que depois de ler isso deixei o Boot Wait em enabled, bem quietinho, como estava. Vai que um dia eu precise dele. E um boot 5 segundos mais rápido não paga a dor de ter um roteador peso-de-papel.

    ResponderExcluir
  2. Certa vez utilizei este comando (tftp) para atualizar a firmware de um D-Link 500G geração 2. Copie a firmware de um geração 4 utilizando um outro comando no promp que não lembro agora e atualizei o geração o geração 2 (fiz isso pois acho o geração 4 melhor para configurar), e deu certo. Ficou com hardware de geração 2 e firmware de um geração 4. No meu caso funcionou, mas não garanto que funcione em todos.

    ResponderExcluir
  3. Este comentário foi removido por um administrador do blog.

    ResponderExcluir
  4. Anônimo5/8/08 21:17

    Este comentário foi removido por um administrador do blog.

    ResponderExcluir
  5. Este comentário foi removido por um administrador do blog.

    ResponderExcluir
  6. Este comentário foi removido por um administrador do blog.

    ResponderExcluir
  7. Anônimo6/8/08 20:38

    Este comentário foi removido por um administrador do blog.

    ResponderExcluir
  8. Gente,

    Essa discussão sobre o DD-WRT não tem nada a ver com o assunto do post. Eu vou começar a eliminar/bloquear posts sobre isso.

    ResponderExcluir
  9. Meu WRT54G versão 8 estava funcionando perfeitamente, ate que comprei um notebook sony vaio vgn fw140AE com o s.o. windows vista.

    Ao conectar na rede com o notebook, o power do WRT54G começa a desligar e liga, ele fica ligado por uns 3 segundos e depois desliga. A conexão do notebook nao cai, entretanto so consigo ficar na internet 3 segundos. Então desconectei o notebook da rede e o WRT54G voltou a funcionar perfeitamente.
    Conectei um outro notebook, desta vez com o XP e tudo funcionou perfeitamente. Não atualizei firmeware pq vejo que esta tudo ok com ele o problema so é com o vista, alguem ja passou por isso? por favor me ajudem.

    ResponderExcluir
  10. Caro Jefferson,
    Seu post é "comida para quem te fome" (o meu caso). Cara, estou com um linksys wrt54g v8 parado, fui tentar atualizar o firmware e ele agora só responde através de ping. (ao menos isso), porém não consigo fazê-lo funcionar através do endereço 192.168.1.1 via browser. Fiz o seu procedimento mas obtive êxito. Algo mais que possa ser feito no intuito de fazer o "peso de papel" funcionar;

    ResponderExcluir
  11. Eu tenho um LINKSYS modelo BEFSR41 ver.2, fiz todo procedimento que você orientou e deu a seguinte mensagem Erro no Servidor:

    Oque eu faço???

    ResponderExcluir
  12. Anônimo5/9/09 19:48

    tenho um wrt610n e na transferencia ele para o meio e dá erro no servidor... o que faço ?

    ResponderExcluir
  13. Excelente! A observacao do led do power, permitiu diagnosticar, segui como um tutorial e recuperei um linksys 300. Muito obrigado pelas dicas! Parabens pelo blog. RHE

    ResponderExcluir
  14. Fantástico. Meu WT54G tinha dado pau e com esse tuto funfou de novo!!!!

    Parabéns!

    ResponderExcluir
  15. Jefferson eu nao entendi perfeitamente quando voce diz: Abra um prompt de comando na pasta onde está linksys.bin e deixe pronto (digitado sem o ENTER) o comando
    "tftp -i 192.168.1.1 put linksys.bin"
    Tem como me explicar melhor, sou novo nisso e perdi um befw11s4 ta com o led piscando. Uso o s.o Windows 7 professional 64bits. Agradeço desde ja.

    ResponderExcluir
    Respostas
    1. Estou com o mesmo problema. o comando "tftp -i 192.168.1.1 put linksys.bin" não funciona. O Dos diz não é uma comnado valido.

      Excluir
  16. Boa tarde!
    Eu estou com o mesmo problemas dos colega acima o meu é um wrt 150n. Fiz todas as suas recomendações acima, deu ping certinho (sem perdas), mas quando chega na parte (Abra um prompt de comando na pasta onde está linksys.bin)é que complica. Não dá certo.
    Por favor, me explique melhor!!!

    ResponderExcluir
  17. Estou com o seguinte problema no meu LINKSYS WRT54G V8.2 e já tentei muita coisa que mostra na internet sem funcionar, os leds de POWER - DMZ e WLAN estão desligados e os de ethernet e internet ficam ligados direto mesmo sem cabo conectado e o SISCO SYSTEM fica desligado, já havia dado este problema e eu consegui colocando o cabo de força a meia entrada dele, mas já não da certo mais.

    ResponderExcluir

Siga as regras do blog ou seu comentário será ignorado.