Ver tópico anterior :: Ver tópico seguinte |
Autor |
Mensagem |
NARS Site Admin
Registo: 07 Set 2005 Mensagens: 1880 Localização: Lisboa
|
Colocada: 21 Mar 2007 02:52 Assunto: |
|
|
Boas,
Aqui estão os firmwares para USR 9105/6/7/8 com a modificação que falei.
ATENÇÃO: Não me responsabilizo por quaisquer problemas que possam ocorrer!
Versões para AnnexA (POTS):
USR9105A_2.5_NARSv2.zip (05-04-2007)
USR9106A_2.5_NARSv2.zip (05-04-2007)
USR9107A_1.4_NARSv2.zip (10-06-2007)
USR9108A_1.5_NARSv2.zip (05-05-2007)
Versões para AnnexB (RDIS):
USR9105B_2.5_NARSv2.zip (10-06-2007)
USR9106B_2.5_NARSv2.zip (10-06-2007)
USR9107B_1.4_NARSv2.zip (10-06-2007)
USR9108B_1.5_NARSv2.zip (10-06-2007)
(é recomendado actualizar o firmware através da página de configuração do router e não pelo easyconfigurator)
Modificações no firmware do 9105/6:
Alterações/melhoramentos na interface web:
- substituição da imagem de topo (para ganhar espaço para coisas mais úteis... )
- resolvidos pequenos problemas estéticos que aconteciam em alguns browsers, ex. firefox...
- melhoramentos na parte de virtual servers: auto-activação/desactivação dos controlos de "presets"/custom conforme os radio buttons (quantas vezes eu preenchia tudo e só no fim me lembrava de mudar o radio para custom e depois ele apagava-me tudo... ), completação automática de inicio/fim de portas (apenas tinha de int./ext.) e inserção automatica da parte inicial do ip...
- adicionei opção "Schedule Reconnect" para programar horas a que o router fará re-conexão automáticamente. Para usar esta opção ir a Service Provider Settings -> WAN Setup, editar a ligação e fazer next, next... até à parte de definir o username e pass, nessa página um pouco abaixo está a opção "Schedule Reconnect", basta marcar a opção e definir as horas para a re-conexão separadas por virgula (ex.: 01:15,07:45), em seguida avançar até ao final e fazer Apply e depois Finish (que fará reboot). Atenção que no 9105/6 tem de se definir horas GMT, quando estivermos em hora de verão tem de se definir horas com 1h a menos (ex.: 00:15,06:45), e não se deverá definir a hora 00:05 para a re-conexão por ser a hora a que o relógio do router é sincronizado e precisar de ter ligação à Internet nesse momento para o fazer.
Compilei a busybox com mais alguns comandos que o firmware original não tinha: chmod, cp, date, free, ln, ls, lsmod, mv, rdate, sleep, umount, uptime, wget (sem suporte a autenticação http) e crond (modificado/reduzido, no post abaixo explico como o usar...)
Modificações no pppd:
- limite maximo de tentativas de ligação modificado para 3 (antes era ilimitado) e com espaçamento de 3 seg. entre as mesmas (antes era 15). Ao falharem as 3 tentativas o pppd agora termina e passados 10 seg. reexecuta-se automaticamente, resolvendo o problema que acontece no Clix e também um outro problema que acontece esporadicamente em outros isp's (quando os servidores dizem que o login está errado, sem estar, o router não insistia mais, agora passa a insistir de 10 em 10 seg. nesse caso)
- corrigido bug que ao executar um novo processo do pppd (depois de ja ter sido estabelecida uma ligação com sucesso anteriormente) não actualizava a default gateway (importante no clix porque têm várias e normalmente cada vez que se estabelece ligação ficamos com uma diferente)
- corrigido pequeno bug que causava um "memory fault" ao executar o pppd sem parâmetros ou com parâmetros incorrectos em vez de mostrar o "usage: ..."
Para o fimware do 9108 fiz as modificações referidas acima em "Modificações no pppd", adicionei a opção "Schedule Reconnect" à interface web e compilei a BusyBox com alguns comandos a mais: uptime, free, top, ls, cp, mv, sleep, wget, umount, crond (modificado, apenas suporta um ficheiro crontab, para mais detalhes ver o post abaixo).
Para o fimware do 9107 fiz apenas as modificações referidas acima em "Modificações no pppd".
Cumps.
Editado pela última vez por NARS em 10 Jun 2007 20:37, num total de 15 vezes |
|
Voltar acima |
|
|
AdSense
|
Colocada: 21 Mar 2007 02:52 Assunto: Anúncios Google AdSense |
|
|
|
|
Voltar acima |
|
|
NARS Site Admin
Registo: 07 Set 2005 Mensagens: 1880 Localização: Lisboa
|
Colocada: 21 Mar 2007 02:57 Assunto: |
|
|
Como usar o crond que adicionei ao firmware do 9105/6/8 para reconectar a ligação a horas programadas
Edit: Este método não é mais necessário, nas novas versões (v2) é possível configurar a reconecção de forma permanente através da página de configuração do router, ver detalhes no post acima.
- Aceder ao router por telnet:
Código: | telnet 192.168.1.1 |
- Fazer login e entrar na shell da busybox executando simplesmente o comando sh, o simbolo antes do cursor passa a #
- Acertar o relogio interno do router:
Código: | rdate -s time-a.nist.gov |
- Adicionar 1ª tarefa ao ficheiro crontab para acertar relogio do router todos os dias às 00:00:
Código: | echo "0 0 * * * rdate -s time-a.nist.gov" > /var/crontab |
- Adicionar outra tarefa ao ficheiro crontab para reconectar ligação todos os dias às 01:10:
Código: | echo "10 1 * * * ifconfig nas33 down && ifconfig nas33 up" >> /var/crontab |
- Adicionar outra tarefa ao ficheiro crontab para reconectar ligação todos os dias às 07:50:
Código: | echo "50 7 * * * ifconfig nas33 down && ifconfig nas33 up" >> /var/crontab |
Executar crond:
Atenção que após executar o crond não mostra nenhuma informação, mas está a correr (não se deve executar várias vezes), para confirmar usar ps
Atenção: Após reboot ao router o ficheiro crontab perde-se e será necessário re-executar os passos acima... criar ficheiro e executar crond... se se justificar no futuro poderei compilar versões do firmware que executem o crond e tenham já o dito ficheiro crontab de forma persistente, mas as horas terão que ser definidas por mim ao compilar o firmware, sem hipótese de o utilizador as definir e guardar de forma persistente... mas será que se justifica? afinal... o router só vai abaixo quando falta a luz
Nota: Após o crond já estar a ser executado se se quizer modificar o ficheiro de crontab em seguida será necessário criar um ficheiro (sem conteudo) em /var/crontab.update, usar:
Código: | echo > /var/crontab.update |
De 1 em 1 min. o crond verifica a existencia deste ficheiro e se o encontrar recarrega o /var/crontab, isto não é necessário para os passos descritos acima, por se executar o crond após se criar/modificar o ficheiro crontab, só é necessário para modificações após o crond estar a correr para não se ter que lhe fazer kill e re-executar.
(se der jeito a alguém usar o vi para editar o ficheiro crontab pode obter uma versão compilada para correr no router em: http://nars.aloj.net/temp/vi )
Editado pela última vez por NARS em 07 Mai 2007 19:10, num total de 7 vezes |
|
Voltar acima |
|
|
soft666
Registo: 27 Out 2005 Mensagens: 741
|
Colocada: 21 Mar 2007 03:02 Assunto: |
|
|
Querem que eu altere o titulo do tópico para algo tipo US Robitcs 910x: firmware não oficial?
NARS: podias meter os FWs na secção de equipamento. Eu posso depois meter um link no post original deste tópico. |
|
Voltar acima |
|
|
NARS Site Admin
Registo: 07 Set 2005 Mensagens: 1880 Localização: Lisboa
|
Colocada: 21 Mar 2007 03:20 Assunto: |
|
|
flateric escreveu: | De onde sacas essas sources? Não percebo pq é que ainda n houve ninguém a fazer firmwares alterados... noutras marcas costuma haver sempre! |
Estão no site da USR, onde estão os firmwares para download têm um link para GPL source central... estão disponibilizados à muito tempo, a razão de ninguém ter feito mais por estes routers penso que é desmotivação, porque não é possível alterar tudo... apenas a parte baseada em linux, o resto, a parte de configuração, a parte que grava as settings permanentemente, drivers, etc... vêm em binários já compilados pela broadcom...
soft666: Sim, penso que o título do tópico está um pouco desajustado, faz isso... |
|
Voltar acima |
|
|
NARS Site Admin
Registo: 07 Set 2005 Mensagens: 1880 Localização: Lisboa
|
Colocada: 21 Mar 2007 04:02 Assunto: |
|
|
Correr pequeno servidor http no router 9105/6
Ok, esta é mais por brincadeira que outra coisa... mas se alguém estiver interessado em ter um pequeno servidor http a correr no router... cá vai...
Fazer telnet... login... sh...
criar directoria em /var/temp e monta-la numa "ramdrive":
Código: | mkdir /var/temp
mount -t tmpfs -o rw,size=300K tmpfs /var/temp |
cuidado ao definir o size no 9105 pois só tem 8MB de RAM e pouca ram livre pelo que sei... já no 9106 com 16MB e um bom bocado livre dá para mais aventuras
mudar para a directoria criada, fazer download do binario do mini_httpd compilado para mips (o cpu usado pelo router) e ajustar permissões do ficheiro para o mesmo se poder executar:
Código: | cd /var/temp
wget http://nars.aloj.net/temp/mini_httpd
chmod 755 mini_httpd |
Criar pasta para o conteudo que será servido e executar o servidor:
Código: | mkdir www
./mini_httpd -p 10080 -i mini_httpd.pid -r -d /var/temp/www/ |
O servidor foi executado de forma a estar à escuta na porta 10080, portando deve aceder-se a ele com http://ipdorouter:10080
Terá que se meter os conteudos a serem servidos dentro da pasta www ... a forma mais simples será usar wget para os descarregar de outro servidor http... bastará algo como:
Código: | cd www
wget http://blahblah.com/blahblah.htm |
Para tornar o servidor acessível exteriormente e na porta 80 usar:
Código: | iptables -I INPUT 1 -p tcp --dport 10080 -i ppp33 -j ACCEPT
iptables -t nat -A PREROUTING -i ppp33 -p tcp --dport 80 -j REDIRECT --to-ports 10080 |
Tudo isto vai-se ao se fazer reboot ao router... |
|
Voltar acima |
|
|
soft666
Registo: 27 Out 2005 Mensagens: 741
|
Colocada: 21 Mar 2007 04:41 Assunto: |
|
|
*título do tópico alterado |
|
Voltar acima |
|
|
flateric
Registo: 08 Nov 2005 Mensagens: 175
|
Colocada: 21 Mar 2007 10:17 Assunto: |
|
|
Logo à noite experimento no 9108! _________________
|
|
Voltar acima |
|
|
flateric
Registo: 08 Nov 2005 Mensagens: 175
|
Colocada: 21 Mar 2007 23:03 Assunto: |
|
|
Acabei de experimentar... funciona que é uma coisa linda no 9108A!
Finalmente uma solução! Obrigadão NARS. És grande _________________
|
|
Voltar acima |
|
|
v0rlon
Registo: 09 Nov 2005 Mensagens: 865 Localização: Lisboa
|
Colocada: 21 Mar 2007 23:46 Assunto: |
|
|
Elecassssss!!! Sô Nars daqui a pouco ja testo isto no meu 9105.
Mas dou-te ja os parabens antecipados pela tua iniciativa.
E uma sugestão: Compilar estas dicas tao uteis para dentro do zip para a malta ver logo a informaçao e ficar com ela gravada! Por ex num txt.
_________________
Netgear DG834G
USR9105 |
|
Voltar acima |
|
|
v0rlon
Registo: 09 Nov 2005 Mensagens: 865 Localização: Lisboa
|
Colocada: 22 Mar 2007 00:13 Assunto: |
|
|
Aqui ja bomba ja tirei o meu temporizador da fixa agora vamos ver como corre. Já vou dar feedback há hora de isto se desligar.
Nars Eu cá apoio tu colocares uma opçao para a pessoa activar o reiniciar do router ja em firmware. COmpreende-se q tenha q ser fixo mas será q consegues colocar um botao de activar desactivar a opçao de reconnectar na pag. do router?
Cumps _________________
Netgear DG834G
USR9105 |
|
Voltar acima |
|
|
v0rlon
Registo: 09 Nov 2005 Mensagens: 865 Localização: Lisboa
|
Colocada: 22 Mar 2007 01:38 Assunto: |
|
|
o crond n funcionou n sei pq.... eu mudei ali o valor "10 1" para "15 1" suponho q tenha feito para 1:15 lol..... ou entao ja fiz besteira. Fiz agora um ps e o crond esta a correr amanha corro mais testes mas aguardo os teus ensinamentos NARS.
Cumps! _________________
Netgear DG834G
USR9105 |
|
Voltar acima |
|
|
NARS Site Admin
Registo: 07 Set 2005 Mensagens: 1880 Localização: Lisboa
|
Colocada: 22 Mar 2007 02:02 Assunto: |
|
|
Obrigado pelo feedback
Citação: | Nars Eu cá apoio tu colocares uma opçao para a pessoa activar o reiniciar do router ja em firmware. COmpreende-se q tenha q ser fixo mas será q consegues colocar um botao de activar desactivar a opçao de reconnectar na pag. do router? |
Não, quer dizer... modificar as paginas para meter lá o botão até posso... mas faze-lo funcionar é que não... porque essa parte que aceita os pedidos de configuração e que os guarda permanentemente não é opensource, é um binario compilado pela broadcom... mas posso compilar uma outra versão com o temporizador para as 01:15 e 07:45...
v0rlon, sobre o problema com o crond, executa date e vê se o relogio do router está certo, podes também tentar ver se vês alguma entrada no log, é criada uma entrada no log na altura em que o crond arranca e sempre que ele vai executar um comando...
Outra coisa, experimenta executar só:
ifconfig nas33 down && ifconfig nas33 up
e vê se ele disconecta e passado uns segundos reconecta sozinho.
Um pormenor... não sei que resolução usas no monitor, em 800x600 pelo menos algumas das linhas no post lá de cima ficam em duas... e não são...
Já agora v0rlon sem ter nada a ver com isto do crond, executa top e faz aqui paste do que aparece... só para ver como é esse modelo em termos de memoria...
Edit: tive uma ideia que se calhar vou poder inserir a opção de reconectar na interface web... a ideia é "injectar" os valores pela configuração do username usado para estabelecer a ligação ppp (com um pouco de javascript na pagina a coisa nem fica visivel ao utilizador...), depois altero o pppd para ignorar essa info extra no username ao estabelecer a ligação e para ele proprio configurar o crond de acordo |
|
Voltar acima |
|
|
v0rlon
Registo: 09 Nov 2005 Mensagens: 865 Localização: Lisboa
|
Colocada: 22 Mar 2007 17:20 Assunto: |
|
|
O erro foi todo meu....em vez de estar a escrever crontab estava a escrever contrab. Distração....
Ja teste programar para religar agora a tarde e ja ta a bombar thx. _________________
Netgear DG834G
USR9105 |
|
Voltar acima |
|
|
v0rlon
Registo: 09 Nov 2005 Mensagens: 865 Localização: Lisboa
|
Colocada: 22 Mar 2007 17:40 Assunto: |
|
|
Já agora Nars no busybox há forma de enviar algo parecido a net send do windows? Gostaria de criar uma regra que enviasse uma mensagem aos pcs a avisar que a ligaçao vai ser restabelecida.
Depois de excutar o comando top como pediste:
Código: | Mem: 6080K used, 216K free, 0K shrd, 92K buff, 556K cached
Load average: 0.60, 0.21, 0.12 (State: S=sleeping R=running, W=waiting)
PID USER STATUS RSS PPID %CPU %MEM COMMAND
352 admin R 300 351 98.6 4.7 top
186 admin S 260 1 3.1 4.1 cfm
189 admin S 376 40 0.0 5.9 cfm
336 admin S 268 186 0.0 4.2 cfm
252 admin S 248 1 0.0 3.9 upnp
351 admin S 236 350 0.0 3.7 sh
196 admin S 220 1 0.0 3.4 pppd
350 admin S 212 336 0.0 3.3 sh
264 admin S 180 1 0.0 2.8 reaim
183 admin S 180 1 0.0 2.8 syslogd
40 admin S 172 13 0.0 2.7 cfm
1 admin S 172 0 0.0 2.7 init
333 admin S 168 1 0.0 2.6 crond
324 admin S 152 1 0.0 2.4 /bin/igmp
182 admin S 132 1 0.0 2.0 klogd
249 admin S 132 1 0.0 2.0 /bin/dnsprobe
124 admin S 132 1 0.0 2.0 pvc2684d
13 admin S 124 1 0.0 1.9 -sh
188 admin S 120 1 0.0 1.9 tftpd
3 admin RWN 0 0 0.0 0.0 [ksoftirqd_CPU0]
|
_________________
Netgear DG834G
USR9105 |
|
Voltar acima |
|
|
NARS Site Admin
Registo: 07 Set 2005 Mensagens: 1880 Localização: Lisboa
|
Colocada: 23 Mar 2007 05:23 Assunto: |
|
|
Fiz upload de novas versões para 9105 e 9106. Adicionei uma forma de se poder activar/desactivar a função de reconectar (e definir as horas a que se deseja fazê-lo) de forma não volátil. Depois de flashar o novo firmware basta ir a Service Provider Settings -> WAN Setup, editar a ligação e fazer next, next... até à parte de definir o username e pass, nessa página um pouco abaixo está a opção "Schedule Reconnect", é só marcar a opção e definir as horas separadas por virgula (ex.: 01:15,07:45), em seguida avançar até ao final e fazer Apply e depois Finish (que fará reboot, só após o mesmo a opção tem efeito)...
Quando a dita opção está ligada o crond é iniciado automaticamente no arranque do router com as devidas tarefas para acertar relógio todos os dias às 00:05 e as tarefas de reconectar a ligação para as horas que foram especificadas na interface web.
Nota: Se usarem esta nova opção neste firmware e posteriormente voltarem a um firmware oficial terão que ir a Service Provider Settings -> WAN Setup editar a ligação e corrigir o username (vão ver lá algo como xXXXXXXX@clix!01:15,07:45 porque eu no firmware modificado guardo as horas na definição do username, apesar de não ser visível tendo o firmware modificado, claro...)
v0rlon escreveu: | Já agora Nars no busybox há forma de enviar algo parecido a net send do windows? Gostaria de criar uma regra que enviasse uma mensagem aos pcs a avisar que a ligaçao vai ser restabelecida. |
Não... na busybox não estou a ver... |
|
Voltar acima |
|
|
|
|
Não pode criar novos tópicos Não pode responder a mensagens Não pode editar as suas mensagens Não pode remover as suas mensagens Não pode votar neste fórum
|
|
Atenção: Este fórum não tem qualquer ligação ou vínculo com o Clix ou a Sonaecom, sendo apenas uma comunidade não oficial mantida por utilizadores de serviços Clix e baseada na entreajuda dos mesmos. |
Copyright © 2005-2009 forumclix.net - Todos os direitos reservados Site alojado por:
|