The Linksys WRT54GS toy
7855visit from 2008.12.01.
     

Mivel szükség lett volna egy olyan eszközre,mellyel távolról újra lehet gépeket indítani, a keresgélés során egyszer csak rábukkantam a Linksys WRT54G sorozatával kapcsolatban közölt cikkekre.  A leírtak alapján ezzel az eszközzel minden szóba jöhetö feladatot el lehet végezni, így azonnal beszereztem a készüleket és nekiálltam a módosításoknak. Sajnos csak miután készen lettem találtam meg ezt a kiváló leírást:  http://www.franken.de/de/veranstaltungen/kongress/2004/04-3-4-linksys_wrt54g.pdf ( local copy ) . Mindenesetre sikerült a két soros vonal szintillesztését megcsinálnom; a távoli számítógép újraindításához pedig az egyik GPIO vonalat  egy diódával védve és a földet a egy kétpólusú csatlakozóval a számítógép RESET csatlakozójához lehet kötni.

Mindezt természetesen ugy kellett megcsinálni, hogy az eszköz használható és szállítható maradjon, ezért a két soros vonalat és a reset-et a doboz bal oldalán egy RJ-45 (Ethernet) csatlakozón keresztül vezettem ki; így esztétikailag is elfogadható lett.

 
     

Az alaplapon található soros vonali csatlakozó: A beépített új RJ-45 csatlakozó bekötése:
1,2 : +3.3V
3    : TxD S1
4    : TxD S0
5    : RxD S1
6    : RxD S0
7,8 : NC
9,10: GND
1:    RESET
2:    TxD serial1 RS232
3:    TxD serial0 RS232
4,5: GND
6:    RxD serial0 RS232
7:    TxD serial1 RS232
8:    NC

A RESET használata:, echo 1 >/proc/sys/diag parancsra reseteli a számítógépet, echo 0 >/proc/sys/diag a normál állapota.

A 3.3V-os jelszintü serial vonalakat egy MAX 232 IC-vel kell szintilleszteni, melyet a panelra ragaszthatunk.

Az AMDtek switch controlleren és a processzoron levö hütöborda sajnos nem gyári, külön kellett rátennem, ugyanis a switch controller terhelés ( hálózati forgalom  ) nélkül is extrém forró, és a processzorra is ráfér a hütés a kis müanyag házban.

Az eszközben természetesen le kell cserélni az operácios rendszert. A leginkább használhatónak az OpenWRT rendszere bizonyult, itt egy minimális readonly squashfs partíción kívül a maradék flash egy írható jffs filerendszer ; a teljes oprendszert csomagokban (ipkg) állíthatjuk össze.

A fenti módosítások után a serial0-on rendelkezésre áll a linux console, így a router akkor is használható marad ha sikerül kikonfigurálni a teljes hálózatot ( a devfs-t a kernel szolgáltatja, így az inittab-ban ttyS0 helyett tts/0 a serial0! ). A másik soros vonalon a felügyelni kívánt linux számítógép serial console-ját lehet elérni.

Ami a ráadás: kapunk egy olyan eszközt,melyben 5 ethernet csatlakozót bármilyen megosztásban switch-ként ( a gyári beállításban  csak egy WAN port és egy 4  portos switch van ), vagy külön ethernet inteface-ként konfigurálhatunk. Emellett kapunk egy 54 (SpeedBooster-el 108) Mbps sebességü, Access pointként, Ad-Hoc módban vagy kliensként ( kismet-el felderítöként ) üzemelö WIFI portot,mely szinten lehet switch tag vagy külön elérhetö Ethernet interface. Mindez alapszinten full kontroll alatt tartva a rendszert beállítható, maximális információt adva a rendszerröl.  Ekkora potenciális lehetöséghez képest már kicsit kevésnek tünik a processzor....  Egy 20eFt nagyságrendbe kerülö berendezéstöl viszont meglepö a tudása, hiszen egy 6 Ethernet portos router már csillagászati összegekbe kerül.

Természetesen mivel Linux az oprendszer, bármilyen programot ( MIPS portolás után ) lefordíthatunk rá. Ezt kihasználva azonnal lefordítottam az általam írt  pipacs-ot , így már a hálózati forgalmat (akár a switch portok VLAN-ján) is nyomon lehet követni. ( Letölthetö innen )

Az ethernet/switch controller ( az adm.o kernelmodul betöltése után ) az admcfg paranccsal vezérelhetö, a státusza ( 0,1,2 VLAN konfigurációval , a WAN port és két-két switch port ill. a rádió külön ethernet):
OpenWRT ADM Config:
port0 ENABLED 100Mbps FD FLOW UNTAG VLAN NOPRIO UP 100Mbps FD NOFLOW PRIO:0
  PVID:1 vlan1 vlan3 vlan4 vlan5 vlan6 vlan7 vlan8 vlan9 vlan10 vlan11 vlan12 vlan13 vlan14 vlan15
  RX packets:1311573 TX packets:1299523 collisions:0 errors:0 RX bytes:86769246 (82.7 MiB) TX bytes:399619575 (381.1 MiB)
port1 ENABLED 100Mbps FD FLOW UNTAG VLAN NOPRIO DOWN 10Mbps HD FLOW PRIO:0
  PVID:2 vlan2 vlan3 vlan4 vlan5 vlan6 vlan7 vlan8 vlan9 vlan10 vlan11 vlan12 vlan13 vlan14 vlan15
  RX packets:0 TX packets:0 collisions:0 errors:0 RX bytes:0 (0.0 B) TX bytes:0 (0.0 B)
port2 ENABLED 100Mbps FD FLOW UNTAG VLAN NOPRIO DOWN 10Mbps HD FLOW PRIO:0
  PVID:2 vlan2 vlan3 vlan4 vlan5 vlan6 vlan7 vlan8 vlan9 vlan10 vlan11 vlan12 vlan13 vlan14 vlan15
  RX packets:0 TX packets:0 collisions:0 errors:0 RX bytes:0 (0.0 B) TX bytes:0 (0.0 B)
port3 ENABLED 100Mbps FD FLOW UNTAG VLAN NOPRIO DOWN 10Mbps HD FLOW PRIO:0
  PVID:0 vlan0 vlan3 vlan4 vlan5 vlan6 vlan7 vlan8 vlan9 vlan10 vlan11 vlan12 vlan13 vlan14 vlan15
  RX packets:0 TX packets:0 collisions:0 errors:0 RX bytes:0 (0.0 B) TX bytes:0 (0.0 B)
port4 ENABLED 100Mbps FD FLOW UNTAG VLAN NOPRIO DOWN 10Mbps HD FLOW PRIO:0
  PVID:0 vlan0 vlan3 vlan4 vlan5 vlan6 vlan7 vlan8 vlan9 vlan10 vlan11 vlan12 vlan13 vlan14 vlan15
  RX packets:0 TX packets:0 collisions:0 errors:0 RX bytes:0 (0.0 B) TX bytes:0 (0.0 B)
port5 ENABLED 100Mbps FD FLOW TAG VLAN NOPRIO UP 100Mbps HD FLOW PRIO:0
  PVID:0 vlan0 vlan1 vlan2 vlan3 vlan4 vlan5 vlan6 vlan7 vlan8 vlan9 vlan10 vlan11 vlan12 vlan13 vlan14 vlan15
  RX packets:1299540 TX packets:1311590 collisions:0 errors:0 RX bytes:399623947 (381.1 MiB) TX bytes:86770334 (82.7 MiB)

A rádiórészt a wl paranccsal vezérelhetjük, a helpfile output itt található.

A linux scriptfile-ok és parancssorok használata elkerülhetö, a müködés igen széles skálája beállítható az NVRAM-nak nevezett ( kis írható disk partició, melyet az oprendszer használ ) változóhalmaz használatával. A parancsok egy része itt található.

Az általam használt ipkg modulok:
admcfg, coreutils, deco, iproute2, iptraf, joe, kismet, kmod-adm6996, libmatrixssl, libmysqlclient, libncurses, libpthread, libsnmp, netperf, ntpclient, ncurses-term, quagga, ser, tc, wavemon, wl

WRT54GS ver 1.1

A Linksys új eszköze , jelenleg már csak ez kapható (megjelent állítólag a következö verzió is). A különbségek a régi verzióhoz képest:

- Az AMDtek switch controller helyett egy Broadcom gyártmányú chip kezeli az 5 ethernet portot. Lényegileg hasonlóképpen müködik mint a régi kontroller, viszont annak 36Mbps backbone teljesítménye helyett 100 Mbps-t tud. A régi OpenWRT ( az et.o driver miatt ) nem müködik rajta - jelenleg az uj, 2.4.29 Linux kernel alapú experimental build-el használom ( teljes 8MByte írható jfffs2 flash disc).

- A tápcsatakozó melletti, eddig 0-as antenna az 1-es.

 

OpenWrt  

Amennyiben kérdése/javaslata lenne, írjon: Pálóczi-Horváth János