Adsl600ew
Origem: Wikipédia, a enciclopédia livre.
| Um editor detectou que este artigo ou partes de seu texto podem não ser de natureza enciclopédica. Por favor consulte o que a Wikipédia não é e tente resolver estas objeções na página de discussão deste artigo. |
Índice |
[editar] Especificações
[editar] ADSL/ATM
- ADSL, ADSL2+, RE-ADSL
[editar] Rede Cabo
- Suporte para IP estático e roteamento RIP dinâmico
- Suporte para aplicações IP/TCP/UDP/ICMP/ARP/RARP
- Network Address Translation (NAT)
- Redireccionamento e mapeamento de portas
- Servidor, Relay e Cliente DHCP
- DNS Relay Agent
- Suporte para DMZ
- PPP "Always on" com timeout configurável
- PPP Dial on Demand
[editar] Rede Wireless
- Suporte para IEEE 802.11, 802.11b e 802.11g
- Em conformidade com a Wireless Ethernet Compatibility Alliance (WECA) Wireless Fidelity (Wi-Fi tm) Standard
- Suporta 802.11b e 802.11g simultaneamente
- Seamless WLAN roaming
- Banda de Frequências:
- 2412 MHz - 2462 MHz (América do Norte/FCC)
- 2412 MHz - 2472 MHz (ETSI/Europa)
- 2412 MHz - 2484 MHz (Japão)
- 2457 MHz - 2472 MHz (França)
- 2457 MHz - 2462 MHz (Espanha)
- Tecnologia Direct Sequence Spread Spectrum (DSSS)
- Modulação: OFDM com BPSK, QPSK, 16QAM, 64QAM, DBPSK, DQPSK, CCK
- Wireless Media Access Protocol- CSMA/CA with ACK
- Escalonamento Dinâmico entre 1, 2, 5.5, 6, 9, 11, 12, 24, 36, 48 e 54 Mb/s
- Raio de alcance: 300 metros (campo aberto)
[editar] Gestão
- Ferramenta de gestão HTTP
- Suporte TFTP/FTP para upgrade do firmware
- Suporte para upgrade do firmware via Web (localmente)
- Reset por software, acessível através do interface HTTP e pelo terminal
- Ferramentas de diagnóstico (DSL, OAM, Network, Ping Test)
- Telnet/CLI (apenas leitura)
- Suporte SSH, que posteriormente permite acesso a uma shell (Busybox)
- Suporte para Syslog
- Permite o upgrade do firmware (é possível alterar a imagem do kernel para as nossas necessidades)
[editar] Segurança
- NAT, para um nível básico de firewall
- Suporte para Packet Filtering Firewall
- Stateful Packet Inspection
- Protecção para ataques Denial of Service (DOS)
- Autenticação por password
[editar] Hardware
- Texas Instrument TNETD7300 Single Chip Network Processor/AFE/Line Driver Chipset
- Marvell 88E6060-RCJ 5+1 Port 10/100 MAC/PHY Switch (Suporta Auto MDI/MDIx)
- Texas Instrument TNETW1130 based IEEE802.11b/g MiniPCI Daughter Board
- Uma porta USB 1.1
- Flash ROM de 4 Mb
- SDRAM de 16 Mb
- Suporte para Dying Gasp
- Suporte para ITU K.21
[editar] Plataformas
- Para Ethernet e Wireless LAN
- Independente da plataforma
- Para USB
- Windows 98SE
- Windows ME
- Windows 2000
- Windows XP
- Windows 2003
[editar] Alimentação
- Voltagem de entrada: 9V DC +/- 10%
- Input Current: 1.0A
[editar] LEDs
- 1 x Internet Status LED (LED Verde)
- 1 x Power LED (LED Verde e Vermelho)
- 1 x DSL Status LED (LED Verde, Vermelho e Amarelo)
- 4 x Ethernet Link Status LED (LED Verde)
- 1 x USB Link Status LED (LED Verde)
- 1 x Wireless LAN Link/Activity Status (LED Verde)
[editar] Ligações ao exterior
- 1 x Entrada para RJ-11 (linha telefónica/ADSL)
- 4 x RJ45 para 10/100Base-T Ethernet (AutoMDI/MDIx)
- 1 x Interface USB 1.1 Type B
- 1 x DC Jack para Power Input
- 1 x Botão para Hardware Reset
- 1 x Botão On/Off
- 1 x Conector Co-axial para Antena 2.4Ghz 3 dBi Desatarrachável e capaz de rodar até 180 °
[editar] Dimensões
- 176.5 (Comprimento) x 118.9 (Largura) x 37.9 (Altura) mm
- Peso: +/- 450 g
[editar] Software
- BusyBox
- Montavista Linux
[editar] Procs
[editar] Processador
# cat /proc/cpuinfo processor : 0 cpu model : MIPS 4KEc V4.8 BogoMIPS : 149.91 wait instruction : no microsecond timers : yes extra interrupt vector : yes hardware watchpoint : yes VCED exceptions : not available VCEI exceptions : not available #
[editar] Memória
# cat /proc/meminfo
total: used: free: shared: buffers: cached:
Mem: 14696448 14254080 442368 0 1744896 3784704
Swap: 0 0 0
MemTotal: 14352 kB
MemFree: 432 kB
MemShared: 0 kB
Buffers: 1704 kB
Cached: 3696 kB
SwapCached: 0 kB
Active: 6132 kB
Inactive: 1512 kB
HighTotal: 0 kB
HighFree: 0 kB
LowTotal: 14352 kB
LowFree: 432 kB
SwapTotal: 0 kB
SwapFree: 0 kB
#
[editar] Kernel
# cat /proc/version Linux version 2.4.17_mvl21-malta-mips_fp_le (felix.ian@atmos2) (gcc version 2.95.3 20010315 (release/MontaVista)) #3 Thu Sep 15 15:56:07 SGT 2005 #
[editar] Processos
# ps
PID Uid VmSize Stat Command
1 root 1300 S init
2 root S [keventd]
3 root S [ksoftirqd_CPU0]
4 root S [kswapd]
5 root S [bdflush]
6 root S [kupdated]
7 root S [mtdblockd]
34 root 2880 S /usr/bin/cm_pc
36 root 1300 S init
37 root 1176 S /usr/sbin/thttpd -d /usr/www -u root -p 80 -c /cgi-b
38 root 3620 S /usr/bin/cm_logic -m /dev/ticfg -c /etc/config.xml
60 root 608 S /usr/bin/cm_klogd /dev/klog
62 root 996 S /usr/sbin/wlan/wpa_authenticator
65 root 1068 S /usr/sbin/ec_usp -d -c /var/tmp/ec_usp.conf
66 root 1668 S /usr/sbin/snmpd
84 root 1068 S /usr/sbin/ec_usp -d -c /var/tmp/ec_usp.conf
95 root 1068 S /usr/sbin/ec_usp -d -c /var/tmp/ec_usp.conf
96 root 1068 S /usr/sbin/ec_usp -d -c /var/tmp/ec_usp.conf
182 root 1304 S /bin/sh /usr/bin/appwrapper tinyproxy-bin
187 root 1248 S tinyproxy-bin
188 root 1248 S tinyproxy-bin
209 root 2352 S /usr/sbin/pppd plugin pppoe nas0 user xxx@ISP
265 root 684 S /usr/sbin/udhcpd /var/tmp/udhcpd.conf
369 root 640 S /sbin/dproxy -c /etc/dproxy.conf -d
374 root 2280 R /usr/sbin/dropbear
375 root 1220 S -cmcli
376 root 1304 S sh -c /bin/sh
377 root 1308 S /bin/sh
395 root 1300 R ps
#
[editar] Mounts
# cat /proc/mounts /dev/mtdblock/0 / squashfs ro 0 0 none /dev devfs rw 0 0 proc /proc proc rw 0 0 ramfs /var ramfs rw 0 0 #
[editar] Discos
# df Filesystem 1k-blocks Used Available Use% Mounted on /dev/mtdblock/0 2304 2304 0 100% / #
[editar] MTD
# cat /proc/mtd dev: size erasesize name mtd0: 00320000 00010000 "mtd0" mtd1: 000c0000 00010000 "mtd1" mtd2: 00010000 00002000 "mtd2" mtd3: 00010000 00010000 "mtd3" mtd4: 003e0000 00010000 "mtd4" #
[editar] Módulos
# lsmod Module Size Used by tiap 708536 1 tiatm 143000 1 avalanche_usb 63296 1 #
[editar] Status
# cat /proc/avalanche/avsar_modem_stats
AR7 DSL Modem Statistics: -------------------------------- [DSL Modem Stats] US Connection Rate: 256 DS Connection Rate: 4096 DS Line Attenuation: 27 DS Margin: 21 US Line Attenuation: 16 US Margin: 31 US Payload : 644823024 DS Payload: 65240208 US Superframe Cnt : 2177582 DS Superframe Cnt: 2177582 US Transmit Power : 0 DS Transmit Power: 0 LOS errors: 0 SEF errors: 0 Frame mode: 3 Max Frame mode: 0 Trained Path: 0 US Peak Cell Rate: 603 Trained Mode: 3 Selected Mode: 1 ATUC Vendor Code: 414C4342 ATUC Revision: 1 Hybrid Selected: 1 Trellis: 1 Showtime Count: 1 DS Max Attainable Bit Rate: 10784 BitSwap: 1 US Max Attainable Bit Rate: n/a
[Upstream (TX) Interleave path] CRC: 0 FEC: 0 NCD: 1 LCD: 0 HEC: 0
[Downstream (RX) Interleave path] CRC: 0 FEC: 0 NCD: 0 LCD: 0 HEC: 0
[Upstream (TX) Fast path] CRC: 1 FEC: 0 NCD: 0 LCD: 0 HEC: 0
[Downstream (RX) Fast path] CRC: 13 FEC: 0 NCD: 0 LCD: 0 HEC: 0
[ATM Stats] [Upstream/TX] Good Cell Cnt: 13433813 Idle Cell Cnt: 8917217
[Downstream/RX)] Good Cell Cnt: 1359171 Idle Cell Cnt: 356257289 Bad Hec Cell Cnt: 13 Overflow Dropped Cell Cnt: 0
[SAR AAL5 Stats] Tx PDU's: 648029 Rx PDU's: 498931 Tx Total Bytes: 628350332 Rx Total Bytes: 55244565 Tx Total Error Counts: 0 Rx Total Error Counts: 0
[OAM Stats] Near End F5 Loop Back Count: 0 Near End F4 Loop Back Count: 0 Far End F5 Loop Back Count: 0 Far End F4 Loop Back Count: 0 #
[editar] Interfaces
# ifconfig
br0 Link encap:Ethernet HWaddr 00:30:0A:1E:E2:EE
inet addr:192.168.1.1 Bcast:192.168.1.255 Mask:255.255.255.0
UP BROADCAST RUNNING MULTICAST MTU:1500 Metric:1 ASYMMTU:1500
RX packets:740921 errors:0 dropped:0 overruns:0 frame:0
TX packets:580408 errors:0 dropped:0 overruns:0 carrier:0
collisions:0 txqueuelen:0
RX bytes:679886481 (648.3 Mb) TX bytes:100093838 (95.4 Mb)
br1 Link encap:Ethernet HWaddr 00:00:00:00:00:00
UP BROADCAST RUNNING MULTICAST MTU:1500 Metric:1 ASYMMTU:1500
RX packets:0 errors:0 dropped:0 overruns:0 frame:0
TX packets:0 errors:0 dropped:0 overruns:0 carrier:0
collisions:0 txqueuelen:0
RX bytes:0 (0.0 b) TX bytes:0 (0.0 b)
br2 Link encap:Ethernet HWaddr 00:00:00:00:00:00
UP BROADCAST RUNNING MULTICAST MTU:1500 Metric:1 ASYMMTU:1500
RX packets:0 errors:0 dropped:0 overruns:0 frame:0
TX packets:0 errors:0 dropped:0 overruns:0 carrier:0
collisions:0 txqueuelen:0
RX bytes:0 (0.0 b) TX bytes:0 (0.0 b)
eth0 Link encap:Ethernet HWaddr 00:30:0A:1E:E2:EE
UP BROADCAST RUNNING MULTICAST MTU:1500 Metric:1 ASYMMTU:1500
RX packets:711222 errors:0 dropped:0 overruns:0 frame:0
TX packets:537120 errors:0 dropped:0 overruns:0 carrier:0
collisions:0 txqueuelen:100
RX bytes:680714222 (649.1 Mb) TX bytes:39280830 (37.4 Mb)
Base address:0x2800
lo Link encap:Local Loopback
inet addr:127.0.0.1 Mask:255.0.0.0
UP LOOPBACK RUNNING MTU:16436 Metric:1 ASYMMTU:0
RX packets:0 errors:0 dropped:0 overruns:0 frame:0
TX packets:0 errors:0 dropped:0 overruns:0 carrier:0
collisions:0 txqueuelen:0
RX bytes:0 (0.0 b) TX bytes:0 (0.0 b)
nas0 Link encap:Ethernet HWaddr 00:30:0A:1E:E2:F0
UP BROADCAST RUNNING MULTICAST MTU:1500 Metric:1 ASYMMTU:1500
RX packets:580826 errors:0 dropped:0 overruns:0 frame:0
TX packets:732640 errors:0 dropped:0 overruns:0 carrier:0
collisions:0 txqueuelen:100
RX bytes:95749134 (91.3 Mb) TX bytes:691692548 (659.6 Mb)
ppp0 Link encap:Point-Point Protocol
inet addr:82.154.55.157 P-t-P:194.65.169.218 Mask:255.255.255.255
UP POINTOPOINT RUNNING NOARP MULTICAST MTU:1492 Metric:1 ASYMMTU:1500
RX packets:580807 errors:0 dropped:0 overruns:0 frame:0
TX packets:732627 errors:0 dropped:31 overruns:0 carrier:0
collisions:0 txqueuelen:0
RX bytes:91101780 (86.8 Mb) TX bytes:668248201 (637.2 Mb)
usb0 Link encap:Ethernet HWaddr 00:30:0A:1E:E2:EF
UP BROADCAST RUNNING MULTICAST MTU:1500 Metric:1 ASYMMTU:1500
RX packets:0 errors:0 dropped:0 overruns:0 frame:0
TX packets:0 errors:0 dropped:0 overruns:0 carrier:0
collisions:0 txqueuelen:100
RX bytes:0 (0.0 b) TX bytes:0 (0.0 b)
wlan0 Link encap:Ethernet HWaddr 00:50:F1:12:12:10
UP BROADCAST RUNNING MULTICAST MTU:1500 Metric:1 ASYMMTU:1500
RX packets:34639 errors:0 dropped:0 overruns:0 frame:0
TX packets:48544 errors:0 dropped:0 overruns:0 carrier:0
collisions:0 txqueuelen:100
RX bytes:2924729 (2.7 Mb) TX bytes:62223688 (59.3 Mb)
#
[editar] Route
# route Kernel IP routing table Destination Gateway Genmask Flags Metric Ref Use Iface 194.65.169.218 * 255.255.255.255 UH 0 0 0 ppp0 192.168.1.0 * 255.255.255.0 U 0 0 0 br0 239.0.0.0 * 255.0.0.0 U 1 0 0 br0 default dial-*-*-+ 0.0.0.0 UG 0 0 0 ppp0 #
[editar] DSL status
# cat /proc/avalanche/avsar_modem_stats
AR7 DSL Modem Statistics: -------------------------------- [DSL Modem Stats] US Connection Rate: 256 DS Connection Rate: 4096 DS Line Attenuation: 27 DS Margin: 22 US Line Attenuation: 16 US Margin: 31 US Payload : 714079248 DS Payload: 121542336 US Superframe Cnt : 2399991 DS Superframe Cnt: 2399991 US Transmit Power : 0 DS Transmit Power: 0 LOS errors: 0 SEF errors: 0 Frame mode: 3 Max Frame mode: 0 Trained Path: 0 US Peak Cell Rate: 603 Trained Mode: 3 Selected Mode: 1 ATUC Vendor Code: 414C4342 ATUC Revision: 1 Hybrid Selected: 1 Trellis: 1 Showtime Count: 1 DS Max Attainable Bit Rate: 10784 BitSwap: 1 US Max Attainable Bit Rate: n/a
[Upstream (TX) Interleave path] CRC: 0 FEC: 0 NCD: 1 LCD: 0 HEC: 0
[Downstream (RX) Interleave path] CRC: 0 FEC: 0 NCD: 0 LCD: 0 HEC: 0
[Upstream (TX) Fast path] CRC: 1 FEC: 0 NCD: 0 LCD: 0 HEC: 0
[Downstream (RX) Fast path] CRC: 15 FEC: 0 NCD: 0 LCD: 0 HEC: 0
[ATM Stats] [Upstream/TX] Good Cell Cnt: 14876651 Idle Cell Cnt: 9757218
[Downstream/RX)] Good Cell Cnt: 2532132 Idle Cell Cnt: 391609761 Bad Hec Cell Cnt: 13 Overflow Dropped Cell Cnt: 0
[SAR AAL5 Stats] Tx PDU's: 736528 Rx PDU's: 584147 Tx Total Bytes: 695533132 Rx Total Bytes: 109983577 Tx Total Error Counts: 0 Rx Total Error Counts: 0
[OAM Stats] Near End F5 Loop Back Count: 0 Near End F4 Loop Back Count: 0 Far End F5 Loop Back Count: 0 Far End F4 Loop Back Count: 0 #
[editar] Login
É possível o acesso web e o acesso via ssh.
[editar] Acesso Web
Como o acesso web está bem descrito no manual, não há necessidade de o incluir neste artigo.
[editar] Acesso SSH
couve@server:~$ ssh root@192.168.1.1 root@192.168.1.1's password: DSL Modem CLI Copyright (c) 2004 Texas Instruments, Inc. cli>
A pass é a mesma do interface web.
Escrevendo shell temos acesso à BusyBox.
cli> shell
Starting /bin/sh Type exit to return to the CLI
BusyBox v0.61.pre (2005.09.15-07:59+0000) Built-in shell (ash) Enter 'help' for a list of built-in commands.
#
[editar] Troubleshooting
[editar] Sem DNS com o firmware antigo e kernels superiores a 2.4.x, exclusive
Com alguns routers e kernels 2.6 (não sei quanto aos 2.5, mas também não há grande interesse em ter um), não ha redireccionamento dos pedidos DNS do router para o servidor do ISP. É portanto necessário indicar o ip do servidor de DNS e proteger o ficheiro para não ser alterado novamente. Para não ter que alterar sempre à mão fiz um pequeno script para automatizar a coisa.
Para isso basta criar um ficheiro de texto com o nome custom_resolv e escrever lá dentro:
nameserver 194.65.100.117
nameserver 192.168.0.1
Depois criar um script como o que se segue (dei-lhe o nome de rede-casa.sh):
sudo chattr -i /etc/resolv.conf
sudo cp <CAMINHO_PARA_O_FICHEIRO>/custom_resolv /etc/resolv.conf
sudo chattr +i /etc/resolv.conf
sudo dhclient eth0
Ter em conta que se assume como eth0 o interface com o router.
Para poder executar o script mais facilmente basta fazer uma entrada em /usr/bin com o nome rede-casa e o texto (não esquecer o chmod +x):
#!/bin/bash
sh /<CAMINHO_PARA_O_FICHEIRO>/rede-casa.sh
[editar] Com o novo firmware o Dial On Demand não funciona (Linux)
Aparentemente só não funciona com o browser, se fizermos um ping ao google, por exemplo, à terceira tentativa já devemos ter ligação.
[editar] Script para reboot
Uma vez que o router costuma bloquear algures entre as 48 horas consecutivas fiz um script para automatizar o reboot do router sem necessidade de alterar o firmware.
Ter em conta que para esta solução ser viável é necessário ter um cliente dentro da rede ligado 24/7.
Primeiro precisamos da package expect. Em Debian basta fazer:
apt-get install expect
O script em si é muito simples:
spawn ssh root@192.168.1.1 expect ": " send "PASSWORD_AQUI\r" expect "cli> " send "shell\r" expect "$ " send "reboot\r"
Depois basta adicionar esta entrada na cron, para ser executado no intervalo de tempo desejado.
[editar] Desenvolver aplicações para ao router
Como já foi dito, este router tem um processador MIPS, assim sendo precisamos de um Cross Compiler e um MIPS toolchain. Pode-se fazer download do Cross Compiler e bibliotecas aqui.
[editar] Hello World
Criamos um ficheiro, por exemplo, com o nome hello_world.c:
#include
int main(void){ printf("Hello World!\n"); }
Compilamos
jpoa@vaio:~$ mipsel-uclibc-gcc hello.c -o hello hello.c: In function `main': hello.c:5: warning: return type of `main' is not `int'
E depois enviamos para o router. Neste caso é feito upload para um site e depois download para o router, uma vez que este já tem o wget. Contudo é preferível utilizar ssh, por uma questão de tempo.
# cd /var/ # wget http://student.dei.uc.pt/~jpoa/hello hello 100% |********************************************************************************| 9860 00:00 ETA # chmod 700 hello # ./hello Hello World! #
[editar] ppp Stats
Podemos também correr algo mais interessante (e útil):
# wget http://student.dei.uc.pt/~jpoa/pppstats pppstats 100% |****************************************************************************| 24716 00:00 ETA # chmod 700 pppstats # ./pppstats IN PACK VJCOMP VJUNC VJERR | OUT PACK VJCOMP VJUNC NON-VJ 59710418 44350 0 0 0 | 2639853 28256 0 0 28256 #
O pppstats tem várias opções:
Usage: pppstats [-a|-d] [-v|-r|-z] [-c count] [-w wait] [interface]
[editar] no-ip.org
Temos ainda um cliente de actualização de ips:
# wget http://student.dei.uc.pt/~jpoa/noip2 noip2 100% |*************************************************************************| 125 KB 00:00 ETA # chmod 700 noip2 # ./noip2
Por defeito este cliente escreve a configuração numa localização que não está acessível para escrita no router. Como tal temos de lhe indicar um ficheiro na pasta /var.
# ./noip2 -C -c /var/noip/noip.conf
Auto configuration for Linux client of no-ip.com.
Multiple network devices have been detected.
Please select the Internet interface from this list.
By typing the number associated with it. 0 br0 1 ppp0 1 Please enter the login/email string for no-ip.com xxxxx.xxxxxx@xxx.xxx Please enter the password for user 'xxxxx.xxxxxx@xxx.xxx' *******
Only one host [xxxxxxxx.no-ip.info] is registered to this account. It will be used. Do you wish to run something at successful update?[N] (y/N) n
New configuration file '/var/noip/noip.conf' created.
[editar] Modificar o Kernel
Este router ganha uns pontos extra por permitir a modificação do firmware e o upload da mesma, adicionando-lhe utilitários que possam vir a ser necessários. A personalização do Kernel em si vai para além dos interesses deste artigo, havendo bastante informação sobre tal na internet.
[editar] Modificar o SquashFS
Compilar e correr programas na RAM tem a sua utilidade, contudo cada vez que o router é desligado esses programas são apagados. É portanto necessário alterar o sistema de ficheiros para incluir as alterações.
[editar] Noções
O sistema de ficheiros de leitura SquashFS está em mtd0 e é montado pelo Kernel no aranque. O ramfs é montado na pasta /var e é onde são armazenados os dados voláteis. O SquashFS faz muito uso de links simbólicos direccionados para /var, links estes iniciados pelo script /etc/rc.d/init.d/rcS.
[editar] Sistema inicial
A Aztech disponibiliza versões actualizadas do firmware, podendo-se fazer download aqui.
[editar] Montar o sistema
Basta criar uma pasta, dar-lhe permissões de escrita
jpoa@vaio:~$ sudo mkdir /mnt/squash
Password:
jpoa@vaio:~$ sudo chmod 777 /mnt/squash/
jpoa@vaio:~$ sudo mount 66.53.2-002/nsp.annexA.upgrade.img /mnt/squash/ -t squashfs -o loop
[editar] Modificar o sistema e criar o SquashFS
Uma vez que demos permissões de escrita na pasta podemos alterar os ficheiros em /mnt/squash
Depois das alterações efectuadas temos de criar o ficheiro SquashFS:
jpoa@vaio:~$ mksquashfs /mnt/squash squash_modded.fs Creating little endian filesystem on squashrw._modded, block size 32768.
O sistema de upload de firmware vai web interface precisa de um checksum válido adicionado ao final do ficheiro, de modo a ser aceite.
Para adicionar o checksum do novo sistema de ficheiros necessitamos desta package, distribuída sob a licença GPL.
jpoa@vaio:/mnt/squash$ ./tichksum ../squash_modded.fs File doesn't contain the checksum, adding Calculated checksum is 38B3FF97 Added successfully
Depois basta fazer o upload. Ter em conta que (creio eu) fazer upload para um firmware que não o distribuído pela empresa do router invalida a garantia.
[editar] Em caso de acidente
Caso o router não arranque há solução! Com o Servidor de FTP ADAM2 é possível recarregar o firmware. Contudo, caso queira saber em que fase do arranque o router está com problemas pode usar a porta de consola com o ADAM2 Bootloader.
[editar] Imagem do sistema de ficheiros
A imagem do sistema de ficheiros (mtd0) é do formato SquashFS, contendo todos os binários, o interface web, módulos do Kernel, etc. Tem um tamanho máximo de 3392 (0x350000) kilobytes.
[editar] LEDs
[editar] Situação
Pelos vistos, ao contrário de outros routers, este precisa de uma configuração mais precisa de LEDs. Na maior parte dos casos basta enviar o número do led e o número do estado. Com este router é preciso enviar a configração de todos os LEDs. Esta configuração está disponível no ficheiro /etc/led.conf, descrito abaixo.
[editar] Configuração
# cat /etc/led.conf ################################################################# # Configuration File for AR7WRD board ################################################################## ################################################################## # The GPIO numbers 0 to 31 ==> correspond to GPIO pins ######### # The GPIO numbers 32,33 are mapped to ADSL (LED) pins ########### ##################################################################
module = pwr # module = {adsl,usb,pppoe,wlan}
state = 1 # 0 = link down, 1 = link up gpio = 7 # gpio number mode = 1 # 0 = off,1 = on,2 = blinkoff,3 = blinkon, 4 = Flash
#################################################################### module = adsl # module = {adsl,usb,pppoe,wlan} ################################################################## # Note: state 0 for adsl is dummy state and is present only for ## # compatibility with the new LED driver ## ################################################################## state = 0 # 0=dummy, 1=idle, 2=training, 3=sync, 4=activity gpio = 33 # gpio number mode = 0 # 0 = off,1 = on,2 = blinkoff,3 = blinkon, 4 = Flash
state = 1 # 0=dummy, 1=idle, 2=training, 3=sync, 4=activity gpio = 33 # gpio number mode = 1 # 0 = off,1 = on,2 = blinkoff,3 = blinkon, 4 = Flash
state = 2 # 0=dummy, 1=idle, 2=training, 3=sync, 4=activity gpio = 33 # gpio number mode = 4 # 0 = off,1 = on,2 = blinkoff,3 = blinkon, 4 = Flash param1 = 200 # flash on duration in ms param2 = 200 # flash off duration in ms
state = 3 # 0=dummy, 1=idle, 2=training, 3=sync, 4=activity gpio = 33 # gpio number mode = 0 # 0 = off,1 = on,2 = blinkoff,3 = blinkon, 4 = Flash
state = 4 # 0=dummy, 1=idle, 2=training, 3=sync, 4=activity gpio = 33 # gpio number mode = 0 # 0 = off,1 = on,2 = blinkoff,3 = blinkon, 4 = Flash ######################################################################
module = usb # module = {adsl,usb,pppoe,wlan}
state = 0 # 0 = link down, 1 = link up, 2 = pkt rcv, 3 = pkt xmit gpio = 12 # gpio number mode = 0 # 0 = off,1 = on,2 = blinkoff,3 = blinkon, 4 = Flash
state = 1 # 0 = link down, 1 = link up, 2 = pkt rcv, 3 = pkt xmit gpio = 12 # gpio number mode = 1 # 0 = off,1 = on,2 = blinkoff,3 = blinkon, 4 = Flash
state = 2 # 0 = link down, 1 = link up, 2 = pkt rcv, 3 = pkt xmit gpio = 12 # gpio number mode = 2 # 0 = off,1 = on,2 = blinkoff,3 = blinkon, 4 = Flash param1 = 100 # blink/flash rate in ms
state = 3 # 0 = link down, 1 = link up, 2 = pkt rcv, 3 = pkt xmit gpio = 12 # gpio number mode = 2 # 0 = off,1 = on,2 = blinkoff,3 = blinkon, 4 = Flash param1 = 100 # blink/flash rate in ms
###################################################################### module = pppoe # module = {adsl,usb,pppoe,wlan}
state = 0 # 0 = pppoe down, 1 = pppoe active gpio = 13 # gpio number mode = 0 # 0 = off,1 = on,2 = blinkoff,3 = blinkon, 4 = Flash
state = 1 # 0 = pppoe down, 1 = pppoe active gpio = 13 # gpio number mode = 1 # 0 = off,1 = on,2 = blinkoff,3 = blinkon, 4 = Flash
###################################################################### module = cpmac # module = {adsl,usb,pppoe,wlan,cpmac}
state = 0 # 0 = link down, 1 = link up gpio = 15 # gpio number mode = 0 # 0 = off,1 = on,2 = blinkoff,3 = blinkon, 4 = Flash
state = 1 # 0 = link down, 1 = link up gpio = 15 # gpio number mode = 1 # 0 = off,1 = on,2 = blinkoff,3 = blinkon, 4 = Flash
state = 6 # 0 = link down, 1 = link up, 6 = pkt rcv, 7 = pkt xmit gpio = 15 # gpio number mode = 2 # 0 = off,1 = on,2 = blinkoff,3 = blinkon, 4 = Flash param1 = 100 # blink/flash rate in ms
state = 7 # 0 = link down, 1 = link up, 6 = pkt rcv, 7 = pkt xmit gpio = 15 # gpio number mode = 2 # 0 = off,1 = on,2 = blinkoff,3 = blinkon, 4 = Flash param1 = 100 # blink/flash rate in ms
###################################################################### module = wlan # module = {adsl,usb,pppoe,wlan}
state = 0 # 0 = link down, 1 = link up gpio = 6 # gpio number mode = 0 # 0 = off,1 = on,2 = blinkoff,3 = blinkon, 4 = Flash
state = 1 # 0 = link down, 1 = link up gpio = 6 # gpio number mode = 1 # 0 = off,1 = on,2 = blinkoff,3 = blinkon, 4 = Flash
state = 2 # 0 = link down, 1 = link up, 2 = pkt rcv, 3 = pkt xmit gpio = 6 # gpio number mode = 2 # 0 = off,1 = on,2 = blinkoff,3 = blinkon, 4 = Flash param1 = 100 # blink/flash rate in ms
state = 3 # 0 = link down, 1 = link up, 2 = pkt rcv, 3 = pkt xmit gpio = 6 # gpio number mode = 2 # 0 = off,1 = on,2 = blinkoff,3 = blinkon, 4 = Flash param1 = 100 # blink/flash rate in ms
#
[editar] Alterar valores
Há um binário na pasta /sbin chamado ledcfg que recebe um ficheiro de configuração e a aplica. Para podermos efectuar alterações é necessário copiar a configuração para /var.
Ledcfg usage: ledcfg -f <configuration file path>
[editar] Binários
[editar] Reiniciar
# reboot
[editar] Restantes binários
Os restantes binários encontram-se nestas pastas:
# cd /bin/ # ls ash chown echo ln mv rm tar busybox cp false login netstat sed touch cat date grep ls ping sh true chgrp dd hostname mkdir ps sleep umount chmod df kill mount pwd sync #
# cd /usr/bin/ # ls [ cm_pc id test updatedd appwrapper cmcli killall tftp upgrade cm_convert ddnstask nslookup tinyproxy wget cm_klogd foxy passwd tinyproxy-bin whoami cm_logic free showroute tty yes #
# cd /sbin/ # ls arp init ledcfg msntp route dproxy insmod lsmod reboot tc ifconfig iptables modprobe rmmod utelnetd #
[editar] IpTables
[editar] Listar iptables
# iptables -L -n
[editar] Lista de comandos
# iptables -h
[editar] Imagens
Placa do router, vista de baixo, com a Placa MiniPCI ainda no sítio.
Placa do router, vista de baixo, com a Placa MiniPCI (Wireless) fora. É visível o fio da antena, para o encaixe exterior.
Placa do router, vista de cima.
Novamente, a placa do router, vista de cima.

