Discuta este tópico no fórum

Se este conteúdo te ajudou, deixe um presente!

sábado, 15 de março de 2014

OpenWRT: Lidando com a versão em desenvolvimento

Este é mais um artigo da série sobre o OpenWRT.

Tenho recebido o pedido de ajuda de pessoas que instalaram, intencionalmente ou por engano, a versão em desenvolvimento do OpenWRT (chamada de trunk). Ela é o que será a próxima versão estável, o Barrier Breaker, que ainda não tem data para lançamento.

Dependendo do roteador, se for um modelo novo, a versão trunk pode ser a única alternativa com suporte. Caso não seja o seu caso, recomendo fortemente sempre usar a versão estável.

OK, já estou rodando a versão trunk. O que eu faço agora?

Você tem algumas opções. A primeira é ficar com a versão trunk e viver com ela. Se estiver funcionando para você, ótimo! A segunda é fazer um downgrade para uma versão estável (12.09 - Attitude Adjustment). Por último, você pode voltar ao firmware original.

Vamos a primeira alternativa.

A versão trunk é, por definição, instável. Pode estar com os recursos que você precisa suficientemente estável. Pode estar com aquele bug que te atrapalha da versão estável corrigido. Pode ter um recurso novo que você não vive sem. Mas pode também resultar em uma firmware que simplesmente não funciona (raramente). Use-a por sua conta e risco.

O problema que mais escuto do pessoal que instalou a versão trunk é a ausência da interface WEB. Você inicia somente com um telnet ativo:
$ telnet 192.168.1.1
Trying 192.168.9.1...
Connected to 192.168.1.1.
 === IMPORTANT ============================
  Use 'passwd' to set your login password
  this will disable telnet and enable SSH
 ------------------------------------------

BusyBox v1.19.4 (2014-03-13 15:14:57 MST) built-in shell (ash)
Enter 'help' for a list of built-in commands.
  _______                     ________        __
 |       |.-----.-----.-----.|  |  |  |.----.|  |_
 |   -   ||  _  |  -__|     ||  |  |  ||   _||   _|
 |_______||   __|_____|__|__||________||__|  |____|
          |__| W I R E L E S S   F R E E D O M
 -----------------------------------------------------
 BARRIER BREAKER (Bleeding Edge, r39913)
 -----------------------------------------------------
  * 1/2 oz Galliano         Pour all ingredients into
  * 4 oz cold Coffee        an irish coffee mug filled
  * 1 1/2 oz Dark Rum       with crushed ice. Stir.
  * 2 tsp. Creme de Cacao
 -----------------------------------------------------
root@OpenWrt:/# 
Note o "BARRIER BREAKER (Bleeding Edge, r39913)". Isto significa que você está rodando uma versão instável ("Bleeding Edge") e na release r39913O aviso logo no começo indica que seria bom você definir uma senha pelo passwd (que desabilitará o telnet e habilitará o SSH), mas nada de interface WEB. O problema é que a versão em desenvolvimento não tem o Luci instalado.
root@OpenWrt:/# opkg list-installed | grep luci
root@OpenWrt:/# 
Mas não impede de você mesmo instalar.
root@OpenWrt:/# opkg update
root@OpenWrt:/# opkg install luci 
root@OpenWrt:/# /etc/init.d/uhttpd start
root@OpenWrt:/# /etc/init.d/uhttpd enable
A partir deste ponto, você já deve ter uma interface web funcional. Só entrar em http://192.168.1.1/. Agora, grande parte dos usuários terão capacidade de lidar com o OpenWRT, mesmo na versão trunk.

Algumas vezes isto não funciona pois o luci não configurou um tema. A interface web vai aparecer uma página de erro. Neste caso, você deve adicionar uma linha em /etc/config/luci (em destaque):

config internal 'themes'

option Bootstrap '/luci-static/bootstrap'

E a interface WEB estará funcionando.

A segunda alternativa é equivalente a um upgrade. Primeiro, localize a URL correta da firmware que você que gravar. Nesta situação, ela deve ter a palavra sysupgrade no nome. Vou usar o modelo TL-WR740N-v1 como exemplo. A URL da versão estável deste modelo na data da publicação deste artigo é:
http://downloads.openwrt.org/attitude_adjustment/12.09/ar71xx/generic/openwrt-ar71xx-generic-tl-wr740n-v1-squashfs-sysupgrade.bin
O processo pode ser realizado pelo telnet/SSH ou pela interface web (se fez o procedimento da primeira alternativa para ativá-la). Na interface web é só enviar o arquivo pelo navegador. Pelo telnet/SSH, estes são os procedimentos:
root@OpenWrt:/# cd /tmp/
root@OpenWrt:/# wget  http://downloads.openwrt.org/attitude_adjustment/12.09/ar71xx/generic/openwrt-ar71xx-generic-tl-wr740n-v1-squashfs-sysupgrade.bin
root@OpenWrt:/# sysupgrade -n openwrt-ar71xx-generic-tl-wr740n-v1-squashfs-sysupgrade.bin
O wget é na mesma linha do http://... e o sysupgrade do openwrt-ar... (mas faltou espaço aqui). Os comandos acima baixam a firmware no /tmp do roteador (que fica apenas na memória RAM), e gravam a firmware sem preservar as configurações. Claro, troque a URL e o nome do arquivo para o respectivo do seu modelo.

E se não tiver internet no roteador? Baixe na sua máquina e copie por scp (winscp no windows) para o /tmp do roteador. O scp é a cópia por SSH e, portanto, vai exigir que você defina uma senha no roteador (comando passwd) para ativá-lo antes da cópia. Com o arquivo em /tmp, execute o sysupgrade como mostrado anteriormente.

E para a última alternativa? Já escrevi sobre isto anteriormente. Depende de cada modelo/fabricante.

Se encontrar algum bug, seja na versão em desenvolvimento ou mesmo na versão estável, você pode reportar em https://dev.openwrt.org/newticket (somente em inglês). Só não esqueça de informar a release que você está usando (como r39913).

Até a próxima.

24 comentários:

  1. Ola.
    Luiz nunca lidei com o servidor nas e o media box.
    Minha intenção é ter acesso na minha rede e fora dela caso tenho a intenção de ver algum filme.
    Pois bem.
    as duvidas.
    no servidor media box como eu poderia acessar pelo celular ? tem algum programa especifico ?
    no windows 7 como poderia mapear esse hd de forma facil e sem problemas de cair conexão ?
    é possivel nas configurações melhorar o sinal do OpenWRT ? o firmeware original tem sinal melhor !
    poderia explicar como conectar dois roteadores com OpenWRT para repetir sinal e assim melhorar a conexão wifi ?
    ao usar um segundo roteador como modo repetidor seria possível usar ele também como um segundo servidor nas ou mesmo com torrent instalado e baixar coisas ?

    ResponderExcluir
    Respostas
    1. "no servidor media box como eu poderia acessar pelo celular ?"
      Da mesma rede, o melhor seria por upnp. De fora, talvez vc não tenha banda para uplink suficiente.
      Existe algumas alternativas de acesso aos arquivos do roteador (em um HD externo, por exemplo) usando SFTP, SCP, SMB (compartilhamento do windows).


      "no windows 7 como poderia mapear esse hd de forma facil e sem problemas de cair conexão ?"
      Na rede interna, usando SMB, seria equivalente a ter um outro PC windows compartilhando um disco.

      "é possivel nas configurações melhorar o sinal do OpenWRT ? "
      Normalmente o que você pode fazer de melhor é aumentar a potência ou trocar a antena por uma melhor. Sim, pode ter diferenças por problemas de driver. Você pode brincar com as opções avançadas. As vezes, desativar alguns recursos avançados pode, inclusive, melhorar a qualidade.

      "poderia explicar como conectar dois roteadores com OpenWRT para repetir sinal e assim melhorar a conexão wifi ?"
      http://luizluca.blogspot.com.br/2013/05/openwrt-utilizando-conexoes-wireless_18.html

      ao usar um segundo roteador como modo repetidor seria possível usar ele também como um segundo servidor nas ou mesmo com torrent instalado e baixar coisas ?
      Sim.

      Excluir
    2. Cara, por favor, faz um tutorial de como instalar e configurar o QOS dele. Eu preciso limitar o download e aumentar o upload no meu roteador.

      Excluir
    3. Derlandes,

      A taxa de download/upload são do seu plano, não do roteador. Com o QoS, você simplesmente melhoraria a resposta em situações de congestionamento (ex: skype não vai engasgar com um torrent baixando coisas).

      Posso fazer um artigo sobre isto mas creio que não vai ser a solução do seu problema.

      Excluir
  2. Boa tarde Luiz,

    Você conhece o firmware Gargoyle? Baseado no OpenWRT.

    Pelo que vi ele tem um ótimo sistema de QoS, estou testando em um WR740Nv1, quando coloquei ele para fazer todas as funções de Router + Gateway e QoS acabou travando, agora está apenas como repetidor de um WR2543 com DD-WRT (v24-sp2 (03/13/14) std [SVN revision 23720]), porém o QoS do DD-WRT não é muito bom, ou pelo menos eu não consegui configurar bem, quando utlizei o Gargoyle tive uma grande felicidade com o QoS, porém o router não aguentou.

    Estou cogitando em instalar o Gargoyle no WR2543. O que acha?

    Acredito que você prefira o OpenWRT ao DD-WRT, certo?

    ResponderExcluir
    Respostas
    1. > Você conhece o firmware Gargoyle? Baseado no OpenWRT.

      Sim. Mas nunca usei. Basicamente são pacotes sobre o OpenWRT.

      >Pelo que vi ele tem um ótimo sistema de QoS, estou testando em um WR740Nv1, quando coloquei ele para >fazer todas as funções de Router + Gateway e QoS acabou travando, agora está apenas como repetidor de um WR2543 com DD-WRT (v24-sp2 (03/13/14) std [SVN revision 23720])

      Vc sabe prq travava? Aquecimento? Memória? Kernel panic? Vc chegou a acompanhar as msg do kernel? É estranho travar com o QoS, que não é uma coisa muito complicada para as conexões de internet no BR. Talvez seja o QoS do Gargoyle (que parece ser algo próprio: active monitoring).

      >porém o QoS do DD-WRT não é muito bom, ou pelo menos eu não consegui configurar bem, quando utlizei >o Gargoyle tive uma grande felicidade com o QoS, porém o router não aguentou.
      >Estou cogitando em instalar o Gargoyle no WR2543. O que acha?

      Tenho um 2543. :-) Por coincidência, meu primeiro router tbm era o WR740Nv1. Ele vai funcionar com o Gargoyle mas para saber se vai aguentar o QoS só se vc soubesse o motivo do travamento. Toda linha WR{7,8,9,10}xx da tp-link são muito parecidos. Processador do 2543 é o mesmo até a linha 740. Muda só na linha WDR. O 2543 tem 64 de ram enquanto todo os anteriores tem 32.

      Se o problema no qos for falta de memória (difícil), vai ser melhor. Caso contrário, provavelmente não fará diferença. Creio que é mais fácil ser um bug.

      > Acredito que você prefira o OpenWRT ao DD-WRT, certo?

      Sim, quando entrei nesse mundo, precisava de uma firmware para um 740N tirando uns pacotes e adicionando outros. Isto não é bem a filosofia do dd-wrt. Nem vai modificar alguma coisa nele se precisar.
      Com openwrt, só baixar o fonte, alterar e ser feliz.

      Excluir
    2. Eu acredtio que o WR740N travava por falta de memória, porém não conseguia chegar os logs.

      Por exemplo agora como repetidor está assim:

      Memory Usage:12.7MB / 28.5MB (44.7%)

      WR2543 estou com vontade instalar o OpenWRT ou o Gargoyle. :P

      Excluir
  3. Sei que não tem muito a ver postar minha duvida nesse post, mas por ser mais recente, você pode até apagar depois de ler se quiser, pra resumir eu fiz alguma configuração errada no Tp-link 740N V1 o Open WRT funcionou bem nele, mas quando eu alterei o ip do router pra 192.168.1.2 e mandei mudei a configuração para pppoe acho que fiz algo mais porque eu perdi o acesso web, telnet e ssh, não teve jeito, o bixinho não responde mais, existe alguma coisa que você possa fazer por min ? meu e-mail eduardo777lopes@yahoo.com.br, vi que muita gente por aqui perdeu o acesso WEB ou Telnet ou ssh ou qualquer outro com esse modelo 740n com open wr, ficaria muito feliz se você pudesse me ajudar a recuperar meu roteador =) não queria que ele fosse pro céu dos roteadores =(
    PS: o botão reset atrás do roteador não faz nada, e ao reiniciar e apertar esse botão a luz SYS fica piscando e fica nisso eternamente... ou seja botão reiniciar não faz nada.

    ResponderExcluir
  4. Continuando agora logado... a wifi do roteador fica ativada e é claro que eu tentei entrar com a mesma faixa de ip e mascara de subrede mas não funcionou, nem mesmo configurando manualmente o getway para 192.168.1.2, HELP HERE

    ResponderExcluir
  5. Ola instalei o OpenWRT em um TPLINK TL WR3220 V2.3 porem versão trunk, consegui fazer funcionar a parte da internet e da wifi porem não consigo instalar o luci da erro de falta de espaço ou coisa assim ao instalar os pacotes, teria alguma dica para me dar? queria usar apenas para download de torrent e salvar em um pendrive via usb, poderia ser outra firmware ou algo mais simples. obrigado e parabéns pelo blog

    ResponderExcluir
    Respostas
    1. Felipe,

      Sugiro que vc instale uma versão estável. É bem mais tranquilo.
      Depois, aumente o espaço utilizando seu pendrive:
      http://luizluca.blogspot.com.br/2013/03/openwrt-expandindo-o-espaco-do-disco.html

      Tem diversos posts interessantes no blog. "Folheie" que você vai achar tudo que você precisa.

      Excluir
    2. Olá qual versão estável você me recomenda usar?

      a minha versão trunk encontrei pra baixar nesse endereço

      http://downloads.openwrt.org/snapshots/trunk/ar71xx/generic/

      Obrigado desde já

      Excluir
    3. Felipe,

      A barrier breaker (BB) 14.07:
      https://downloads.openwrt.org/barrier_breaker/14.07/ar71xx/generic/

      Excluir
    4. cara obrigado consegui usando esse comando que voce postou acima

      root@OpenWrt:/# cd /tmp/
      root@OpenWrt:/# wget http://downloads.openwrt.org/attitude_adjustment/12.09/ar71xx/generic/openwrt-ar71xx-generic-tl-wr740n-v1-squashfs-sysupgrade.bin
      root@OpenWrt:/# sysupgrade -n openwrt-ar71xx-generic-tl-wr740n-v1-squashfs-sysupgrade.bin

      agora resta conseguir usar o que quero, q é baixar torrents e salvar em um pen drive, pelo menos agora consegui abrir a interface web

      Excluir
  6. Luiz, td bem?

    Cara estou com o seguinte problema, instalei o openwrt sem problema, acessei o luci sem problema e até cheguei a criar uma rede wireless.

    Mas eu fiz uma cagada e q confesso, não sei exatamente oq fiz, mas perdi completamente o acesso via ssh telnet e luci

    Tentei conectar o roteador em modo de reparo, conforme um video seu explicativo, mas eu não consigo conectar via ssh e nem telnet, e fiz exatamente como foi dito no video, o led sys piscou bemmmm rapido e tal

    1ª opção: talvez eu tenha colocar Lan e Wan em bridge e daí cagou...
    2ª opção: talvez eu tenha feito algo errado no firewall, fazendo com que todos os acessos fossem bloqueados...

    Eu não sei mais oq fazer... :/

    Se puder me ajudar, agradeço muito!!!!!

    ResponderExcluir
    Respostas
    1. ahhh esqueci de falar

      Roteador: TP-LINK WR941ND v3
      acesso telnet e ssh faço pelo putty

      Excluir
    2. Anderson,

      Se piscou rapidamente, ele entrou no modo de recuperação. Deve ser algo no seu computador. No modo de recuperação, ele não liga a wireless, ssh e nem o DHCP. Revisa a configuração ip da sua máquina que vai funcionar. Ela tem que estar com 192.168.1.2, máscara 255.255.255.0. Acesse pelo telnet 192.168.1.1

      Outra coisa, tem um link para o forum do blog lá em cima e lá em baixo. É mais fácil responder por lá.

      Excluir
    3. Sim, realmente wireless ele não sobe mesmo, isso eu vi. Vou revisar as configurações do meu pc então, vou até acessar via linux pra ver se obtenho sucesso.

      Obrigado pelo rapido comentário, daqui pra frente vou acessar o forum e tirar as duvidas por lá!!!

      Abraço!

      Excluir
  7. Olá Luiz Angelo Daros de Luca,
    Boa tarde!

    Sou de Vitória da Conquista, Bahia e estou com o seguinte problema:
    Atualizei o meu TP-Link wdr3600 para o WRT + LUci. Acessei pela Web, configurei tudo redondinho... Tudo funcionava perfeitamente, até que mexi em uma configuração para corrigir a rede 2.4 GHz que não estava correto e não esperei o router atualizar a página e mudei.
    Quando voltei a acessar pelo browser, não conseguir mais.
    Vi as dicas, as segui mas só conseguir ir até o Telnet e ter acesso ao router. Tudo está lá. Mas não sei como configurar. Já baixei a versão original do TP-Link e também uma versão 12.09 do WRT para reinstalar.. Mas não manjo como fazer isso por telnet.
    Quando reinicializo, ele não reseta o modem, dá a seguinte linha de comando>
    a versão instalada é a: Attitude Adujustment 12.09, r36088

    depois que dei o comando "firstboot" recebi a seguinte linha de comando:
    firstboot has already been run
    jffs2 partition is mounted, only resetting files MTD partition not found.
    daí dei reboot e volta a ficar na mesma>

    O que significa MTD partition not found e como corrigir isto?
    Givaldo Vieira de Sousa
    givaldovieiradesousa@gmail.com

    Grato

    ResponderExcluir
    Respostas
    1. Givaldo, o melhor seria abrir um tópico no fórum (links no comeco e fim do blog)
      Talvez você instalou a versão jffs2 que não tem como desfazer as configurações.

      Use uma firmware squashfs-sysupgrade do seu roteador. Se nao tem acesso a internet do roteador, você pode colocar um servidor http no seu computador e fazer o wget de lá.

      Excluir
  8. Favor tenho uma proposta favor entre em contato pelo whatsapp 21 983216173

    ResponderExcluir
  9. amigo nao sei o que fazer nesta tela , pelo que vi na net muita coisa confusa , nada passo a passo tem como me ajudar colocar meu roteador funcional já usei este commando e nao resolveu meu roteador wdr 3500 tplink obrigado



    === IMPORTANT ============================
    Use 'passwd' to set your login password
    this will disable telnet and enable SSH
    ------------------------------------------


    BusyBox v1.23.2 (2015-07-25 15:09:46 CEST) built-in shell (ash)

    _______ ________ __
    | |.-----.-----.-----.| | | |.----.| |_
    | - || _ | -__| || | | || _|| _|
    |_______|| __|_____|__|__||________||__| |____|
    |__| W I R E L E S S F R E E D O M
    -----------------------------------------------------
    CHAOS CALMER (15.05, r46767)
    -----------------------------------------------------
    * 1 1/2 oz Gin Shake with a glassful
    * 1/4 oz Triple Sec of broken ice and pour
    * 3/4 oz Lime Juice unstrained into a goblet.
    * 1 1/2 oz Orange Juice
    * 1 tsp. Grenadine Syrup
    -----------------------------------------------------
    ================= FAILSAFE MODE active ================
    special commands:
    * firstboot reset settings to factory defaults
    * mount_root mount root-partition with config files

    after mount_root:
    * passwd change root's password
    * /etc/config directory with config files

    for more help see:
    http://wiki.openwrt.org/doc/howto/generic.failsafe
    =======================================================

    root@(none):/#

    ResponderExcluir
    Respostas
    1. Você pode rodar o comando firstboot para limpar as configurações.

      Se você está com dúvidas do que fazer, provavelmente não tem experiência com Linux. Os demais comandos vão exigir mais do que rodar um comando. Melhor evitar.

      Mas, enfim, o que você quer fazer? O que estava fazendo que chegou aqui?

      Excluir