Raz za čas sa mi do rúk dostane nejaká zaujímavá alebo užitočná hračka. Niektoré z nich som sa rozhodol postupne priblížiť aj cteným čitateľom môjho blogu. Tentokrát pôjde o dosku od spoločnosti Ubiquity, ktorá v sebe za veľmi príjemnú cenu skrýva pozoruhodný výkon.
Medzi našich klientov patria aj spoločnosti, ktoré prevádzkujú rôzne bary. Používať na všetkých servre by celý projekt zbytočne predražilo a tak sme sa koncom minulého roka začali obzerať po niečom, čo by dokázalo nahradit dovtedy používané Linksys WRT54GL, ktoré už nestačili výkonom a ani veľkosťou flash pamäte. Na niektorej z linuxových stránok som kedysi čítal o už spomínanej doske a jej plnej podpore v OpenWRT, takže sme sa rozhodli jednu objednať. O pár dní som našiel na stole balíček obsahujúci jednu dosku, zdroj na 24V, lacnú miniPCI kartu, pigtail a anténu (a nestálo to celé ani 100 EUR). V tom čase ešte neboli na našom trhu žiadne vhodné krabičky, čo nám trochu robilo vrásky, ale na testovanie sme ich nepotrebovali.
Trochu ma prekvapilo balenie samotnej dosky. Bola zabalená len v antistatickom sáčku, bez akýchkoľvek manuálov alebo médií. Na stránke výrobcu som sa ale dozvedel všetko dôležité a tak som nikdy nepotreboval googliť a ani nazerať do manuálu. Všetko išlo ako po masle. Ale poďme pekne po poriadku.
Špecifikácia výrobcu je nasledovná:
Uvádzaný štvorportový switch je rozdelený na jeden port s podporou 802.3af PoE a tri porty, ktoré sú spolu na jednom hardvérovom switchi. Po rozbalení je vhodné nahrať najnovší firmvér, teda OpenWRT. V momente písania tohto blogu je dostupná stabilná verzia 10.03 Backfire, ktorá UBNT RouterStation Pro oficiálne podporuje (openwrt-ar71xx-ubnt-rspro-squashfs-factory.bin). Firmvér je možné nahrať len cez ten samostatný ethernetový port (teda nie cez ten trojportový switch). Možno existujú aj iné možnosti, ale ja zvyknem používať recovery mód, do ktorého sa dá dostať zatlačením reset tlačidla pri pripojení napájania (je to signalizované rozsvietením RF kontrolky). Doska potom počúva na IP adrese 192.168.1.20/24 a čaká na TFTP prenos. Vo windowse môžete firmvér nahrať príkazom:
tftp -i 192.168.1.20 PUT openwrt-ar71xx-ubnt-rspro-squashfs-factory.bin linux
Default sieťová konfigurácia (/etc/config/network) vyzerá takto:
config interface lan
option ifname eth1
option type bridge
option proto static
option ipaddr 192.168.1.1
option netmask 255.255.255.0
config interface wan
option ifname eth0
option proto dhcp
Samotná doska sa nedodáva so žiadnymi wifi kartami, no má voľné tri miniPCI sloty. Rozhodli sme sa teda vsadiť na osvedčenú kvalitu a skúsili sme hneď karty s atheros chipsetmi, konkrétne Wistron CM9 a Mikrotik R52-350 (alebo R52H). OpenWRT so sebou nenesie žiadne ovládače, takže ich treba doinštalovať. Pre atheros karty sú k dispozícii madwifi, ath5k a ath9k. My sme sa rozhodli vsadiť na klasické madwifi.
opkg install kmod-madwifi
opkg install wpad
rm -f /etc/config/wireless
wifi detect > /etc/config/wireless
config wifi-device wifi0
option type atheros
option channel auto
# REMOVE THIS LINE TO ENABLE WIFI:
option disabled 1
config wifi-iface
option device wifi0
option network lan
option mode ap
option ssid OpenWrt
option encryption none
uci set wireless.wifi0.hwmode=11bg
uci set wireless.wifi0.rxantenna=1
uci set wireless.wifi0.txantenna=1
uci set wireless.wifi0.diversity=0
uci commit wireless
wifi up
Ešte by som chcel upozorniť na jednu nepríjemnú vec. Skúšali sme aj rôzne Intel a Broadcom wifi karty. Ovládače pre ne sú samozrejme dostupné v repozitároch (kmod-b43 a kmod-b43legacy pre broadcom, kmod-net-ipw2100 a kmod-net-ipw2200 pre intel), no ani jedna z nich nefungovala. Problém je v module kmod-ssb, ktorý vždy oopsuje pri komunikácii po zbernici. Bug je otvorený a riešenie v nedohľadne, takže pri používaní tejto dosky ste odkázaní na wifi karty s chipsetom atheros.
Tieto dosky používame v produkčnom prostredí už skoro štyri mesiace a nemali sme zatiaľ žiaden problém. Väčšina z nich beží dokonca len na trunkovovom OpenWRT, keďže prvá stabilná verzia vyšla len nedávno. Funguje naozaj spoľahlivo a v spojení s kvalitným zdrojom prežije aj na dosť nestabilnej elektrickej sieti. Napájanie cez PoE funguje tiež skvele. Vložená do kovovej krabičky maďarskej výroby, ktorá je už dnes bežne dostupná na trhu, dokonca pôsobí veľmi seriózne. Aj vďaka gigabitovým portom a schopnosti bez problémov preroutovať okolo 400Mbit/s sa pre mňa stala nenahraditeľným aktívnym sieťovým prvkom.
Užitočné linky:
Na záver dodám ešte zopár (dlhších) výpisov, ktoré môžu niekoho zaujímať:
root@OpenWrt:~# cat /proc/cpuinfo
system type : Atheros AR7161 rev 2
machine : Ubiquiti RouterStation Pro
processor : 0
cpu model : MIPS 24Kc V7.4
BogoMIPS : 478.41
wait instruction : yes
microsecond timers : yes
tlb_entries : 16
extra interrupt vector : yes
hardware watchpoint : yes, count: 4, address/irw mask: [0x0000, 0x0078, 0x0618, 0x0b18]
ASEs implemented : mips16
shadow register sets : 1
core : 0
VCED exceptions : not available
VCEI exceptions : not available
root@OpenWrt:~# openssl speed
Doing md4 for 3s on 16 size blocks: 492389 md4's in 3.00s
Doing md4 for 3s on 64 size blocks: 440248 md4's in 3.00s
Doing md4 for 3s on 256 size blocks: 331224 md4's in 3.00s
Doing md4 for 3s on 1024 size blocks: 166370 md4's in 3.00s
Doing md4 for 3s on 2048 size blocks: 100037 md4's in 2.99s
Doing md5 for 3s on 16 size blocks: 356923 md5's in 3.00s
Doing md5 for 3s on 64 size blocks: 315084 md5's in 3.00s
Doing md5 for 3s on 256 size blocks: 232750 md5's in 3.00s
Doing md5 for 3s on 1024 size blocks: 113734 md5's in 3.00s
Doing md5 for 3s on 2048 size blocks: 67641 md5's in 3.00s
Doing hmac(md5) for 3s on 16 size blocks: 560158 hmac(md5)'s in 3.00s
Doing hmac(md5) for 3s on 64 size blocks: 461204 hmac(md5)'s in 2.98s
Doing hmac(md5) for 3s on 256 size blocks: 303715 hmac(md5)'s in 2.99s
Doing hmac(md5) for 3s on 1024 size blocks: 128432 hmac(md5)'s in 2.99s
Doing hmac(md5) for 3s on 2048 size blocks: 72581 hmac(md5)'s in 3.00s
Doing sha1 for 3s on 16 size blocks: 298696 sha1's in 3.00s
Doing sha1 for 3s on 64 size blocks: 205503 sha1's in 3.00s
Doing sha1 for 3s on 256 size blocks: 105806 sha1's in 3.00s
Doing sha1 for 3s on 1024 size blocks: 36012 sha1's in 2.99s
Doing sha1 for 3s on 2048 size blocks: 19161 sha1's in 2.99s
Doing sha256 for 3s on 16 size blocks: 331838 sha256's in 3.00s
Doing sha256 for 3s on 64 size blocks: 192031 sha256's in 3.00s
Doing sha256 for 3s on 256 size blocks: 84826 sha256's in 3.00s
Doing sha256 for 3s on 1024 size blocks: 26228 sha256's in 3.00s
Doing sha256 for 3s on 2048 size blocks: 13655 sha256's in 3.00s
Doing sha512 for 3s on 16 size blocks: 104778 sha512's in 3.00s
Doing sha512 for 3s on 64 size blocks: 104837 sha512's in 2.99s
Doing sha512 for 3s on 256 size blocks: 38224 sha512's in 2.99s
Doing sha512 for 3s on 1024 size blocks: 13159 sha512's in 3.00s
Doing sha512 for 3s on 2048 size blocks: 7022 sha512's in 3.00s
Doing rc4 for 3s on 16 size blocks: 5904341 rc4's in 3.00s
Doing rc4 for 3s on 64 size blocks: 1656715 rc4's in 3.00s
Doing rc4 for 3s on 256 size blocks: 427202 rc4's in 3.00s
Doing rc4 for 3s on 1024 size blocks: 107650 rc4's in 3.00s
Doing rc4 for 3s on 2048 size blocks: 53898 rc4's in 3.00s
Doing des cbc for 3s on 16 size blocks: 1014881 des cbc's in 3.00s
Doing des cbc for 3s on 64 size blocks: 263937 des cbc's in 3.00s
Doing des cbc for 3s on 256 size blocks: 66659 des cbc's in 3.00s
Doing des cbc for 3s on 1024 size blocks: 16706 des cbc's in 3.00s
Doing des cbc for 3s on 2048 size blocks: 8357 des cbc's in 3.00s
Doing des ede3 for 3s on 16 size blocks: 372262 des ede3's in 2.99s
Doing des ede3 for 3s on 64 size blocks: 94564 des ede3's in 2.99s
Doing des ede3 for 3s on 256 size blocks: 23733 des ede3's in 3.00s
Doing des ede3 for 3s on 1024 size blocks: 5940 des ede3's in 3.00s
Doing des ede3 for 3s on 2048 size blocks: 2971 des ede3's in 3.00s
Doing aes-128 cbc for 3s on 16 size blocks: 1451943 aes-128 cbc's in 3.00s
Doing aes-128 cbc for 3s on 64 size blocks: 398040 aes-128 cbc's in 3.00s
Doing aes-128 cbc for 3s on 256 size blocks: 101921 aes-128 cbc's in 2.99s
Doing aes-128 cbc for 3s on 1024 size blocks: 25632 aes-128 cbc's in 3.00s
Doing aes-128 cbc for 3s on 2048 size blocks: 12831 aes-128 cbc's in 3.00s
Doing aes-192 cbc for 3s on 16 size blocks: 1282625 aes-192 cbc's in 3.00s
Doing aes-192 cbc for 3s on 64 size blocks: 347695 aes-192 cbc's in 2.99s
Doing aes-192 cbc for 3s on 256 size blocks: 88765 aes-192 cbc's in 3.00s
Doing aes-192 cbc for 3s on 1024 size blocks: 22309 aes-192 cbc's in 2.99s
Doing aes-192 cbc for 3s on 2048 size blocks: 11165 aes-192 cbc's in 2.99s
Doing aes-256 cbc for 3s on 16 size blocks: 1149506 aes-256 cbc's in 3.00s
Doing aes-256 cbc for 3s on 64 size blocks: 308608 aes-256 cbc's in 3.00s
Doing aes-256 cbc for 3s on 256 size blocks: 78617 aes-256 cbc's in 3.00s
Doing aes-256 cbc for 3s on 1024 size blocks: 19747 aes-256 cbc's in 3.00s
Doing aes-256 cbc for 3s on 2048 size blocks: 9880 aes-256 cbc's in 3.00s
Doing aes-128 ige for 3s on 16 size blocks: 1457703 aes-128 ige's in 2.99s
Doing aes-128 ige for 3s on 64 size blocks: 413058 aes-128 ige's in 3.00s
Doing aes-128 ige for 3s on 256 size blocks: 106784 aes-128 ige's in 3.00s
Doing aes-128 ige for 3s on 1024 size blocks: 26922 aes-128 ige's in 3.00s
Doing aes-128 ige for 3s on 2048 size blocks: 13484 aes-128 ige's in 3.00s
Doing aes-192 ige for 3s on 16 size blocks: 1287291 aes-192 ige's in 2.99s
Doing aes-192 ige for 3s on 64 size blocks: 359169 aes-192 ige's in 3.00s
Doing aes-192 ige for 3s on 256 size blocks: 92418 aes-192 ige's in 2.99s
Doing aes-192 ige for 3s on 1024 size blocks: 23280 aes-192 ige's in 3.00s
Doing aes-192 ige for 3s on 2048 size blocks: 11649 aes-192 ige's in 2.99s
Doing aes-256 ige for 3s on 16 size blocks: 1152237 aes-256 ige's in 3.00s
Doing aes-256 ige for 3s on 64 size blocks: 317663 aes-256 ige's in 3.00s
Doing aes-256 ige for 3s on 256 size blocks: 81440 aes-256 ige's in 2.99s
Doing aes-256 ige for 3s on 1024 size blocks: 20502 aes-256 ige's in 3.00s
Doing aes-256 ige for 3s on 2048 size blocks: 10262 aes-256 ige's in 2.99s
Doing rc2 cbc for 3s on 16 size blocks: 1058653 rc2 cbc's in 3.00s
Doing rc2 cbc for 3s on 64 size blocks: 275025 rc2 cbc's in 3.00s
Doing rc2 cbc for 3s on 256 size blocks: 69402 rc2 cbc's in 3.00s
Doing rc2 cbc for 3s on 1024 size blocks: 17399 rc2 cbc's in 3.00s
Doing rc2 cbc for 3s on 2048 size blocks: 8704 rc2 cbc's in 2.99s
Doing blowfish cbc for 3s on 16 size blocks: 2235404 blowfish cbc's in 3.00s
Doing blowfish cbc for 3s on 64 size blocks: 607053 blowfish cbc's in 3.00s
Doing blowfish cbc for 3s on 256 size blocks: 155016 blowfish cbc's in 3.00s
Doing blowfish cbc for 3s on 1024 size blocks: 38990 blowfish cbc's in 2.99s
Doing blowfish cbc for 3s on 2048 size blocks: 19514 blowfish cbc's in 3.00s
Doing cast cbc for 3s on 16 size blocks: 2051685 cast cbc's in 3.00s
Doing cast cbc for 3s on 64 size blocks: 553439 cast cbc's in 2.99s
Doing cast cbc for 3s on 256 size blocks: 141067 cast cbc's in 3.00s
Doing cast cbc for 3s on 1024 size blocks: 35457 cast cbc's in 3.00s
Doing cast cbc for 3s on 2048 size blocks: 17746 cast cbc's in 3.00s
Doing 512 bit private rsa's for 10s: 2165 512 bit private RSA's in 9.98s
Doing 512 bit public rsa's for 10s: 25929 512 bit public RSA's in 10.00s
Doing 1024 bit private rsa's for 10s: 427 1024 bit private RSA's in 9.99s
Doing 1024 bit public rsa's for 10s: 8728 1024 bit public RSA's in 10.00s
Doing 2048 bit private rsa's for 10s: 72 2048 bit private RSA's in 10.13s
Doing 2048 bit public rsa's for 10s: 2593 2048 bit public RSA's in 10.00s
Doing 4096 bit private rsa's for 10s: 11 4096 bit private RSA's in 10.22s
Doing 4096 bit public rsa's for 10s: 730 4096 bit public RSA's in 10.01s
Doing 512 bit sign dsa's for 10s: 2575 512 bit DSA signs in 9.96s
Doing 512 bit verify dsa's for 10s: 2243 512 bit DSA verify in 10.00s
Doing 1024 bit sign dsa's for 10s: 879 1024 bit DSA signs in 9.98s
Doing 1024 bit verify dsa's for 10s: 740 1024 bit DSA verify in 9.99s
Doing 2048 bit sign dsa's for 10s: 263 2048 bit DSA signs in 10.00s
Doing 2048 bit verify dsa's for 10s: 216 2048 bit DSA verify in 10.00s
OpenSSL 0.9.8m 25 Feb 2010
built on: Wed Mar 31 03:40:53 CEST 2010
options:bn(64,32) rc4(ptr,char) des(idx,cisc,16,long) aes(partial) blowfish(ptr)
compiler: mips-openwrt-linux-uclibc-gcc -fPIC -DOPENSSL_PIC -DZLIB_SHARED -DZLIB -DDSO_DLFCN -DHAVE_DLFCN_H -DHAVE_CRYPTODEV -I/home/openwrt/backfire/build/ar71xx/staging_dir/target-mips_r2_uClibc-0.9.30.1/usr/include -I/home/openwrt/backfire/build/ar71xx/staging_dir/target-mips_r2_uClibc-0.9.30.1/include -I/home/openwrt/backfire/build/ar71xx/staging_dir/toolchain-mips_r2_gcc-4.3.3+cs_uClibc-0.9.30.1/usr/include -I/home/openwrt/backfire/build/ar71xx/staging_dir/toolchain-mips_r2_gcc-4.3.3+cs_uClibc-0.9.30.1/include -DOPENSSL_SMALL_FOOTPRINT -DOPENSSL_NO_ERR -DOPENSSL_NO_HW -DTERMIO -Os -pipe -mips32r2 -mtune=mips32r2 -funit-at-a-time -fhonour-copts -msoft-float -fpic -fomit-frame-pointer -Wall
available timing options: TIMES TIMEB HZ=100 [sysconf value]
timing function used: times
The 'numbers' are in 1000s of bytes per second processed.
type 16 bytes 64 bytes 256 bytes 1024 bytes 2048 bytes
md2 0.00 0.00 0.00 0.00 0.00
mdc2 0.00 0.00 0.00 0.00 0.00
md4 2626.07k 9391.96k 28264.45k 56787.63k 68520.33k
md5 1903.59k 6721.79k 19861.33k 38821.21k 46176.26k
hmac(md5) 2987.51k 9905.05k 26003.69k 43984.74k 49548.63k
sha1 1593.05k 4384.06k 9028.78k 12333.21k 13124.32k
rmd160 0.00 0.00 0.00 0.00 0.00
rc4 31489.82k 35343.25k 36454.57k 36744.53k 36794.37k
des cbc 5412.70k 5630.66k 5688.23k 5702.31k 5705.05k
des ede3 1992.04k 2024.11k 2025.22k 2027.52k 2028.20k
idea cbc 0.00 0.00 0.00 0.00 0.00
seed cbc 0.00 0.00 0.00 0.00 0.00
rc2 cbc 5646.15k 5867.20k 5922.30k 5938.86k 5961.80k
rc5-32/12 cbc 0.00 0.00 0.00 0.00 0.00
blowfish cbc 11922.15k 12950.46k 13228.03k 13353.10k 13321.56k
cast cbc 10942.32k 11846.19k 12037.72k 12102.66k 12114.60k
aes-128 cbc 7743.70k 8491.52k 8726.35k 8749.06k 8759.30k
aes-192 cbc 6840.67k 7442.30k 7574.61k 7640.27k 7647.46k
aes-256 cbc 6130.70k 6583.64k 6708.65k 6740.31k 6744.75k
camellia-128 cbc 0.00 0.00 0.00 0.00 0.00
camellia-192 cbc 0.00 0.00 0.00 0.00 0.00
camellia-256 cbc 0.00 0.00 0.00 0.00 0.00
sha256 1769.80k 4096.66k 7238.49k 8952.49k 9321.81k
sha512 558.82k 2244.00k 3272.69k 4491.61k 4793.69k
aes-128 ige 7800.42k 8811.90k 9112.23k 9189.38k 9205.08k
aes-192 ige 6888.51k 7662.27k 7912.71k 7946.24k 7978.98k
aes-256 ige 6145.26k 6776.81k 6972.79k 6998.02k 7028.96k
sign verify sign/s verify/s
rsa 512 bits 0.004610s 0.000386s 216.9 2592.9
rsa 1024 bits 0.023396s 0.001146s 42.7 872.8
rsa 2048 bits 0.140694s 0.003857s 7.1 259.3
rsa 4096 bits 0.929091s 0.013712s 1.1 72.9
sign verify sign/s verify/s
dsa 512 bits 0.003868s 0.004458s 258.5 224.3
dsa 1024 bits 0.011354s 0.013500s 88.1 74.1
dsa 2048 bits 0.038023s 0.046296s 26.3 21.6
|
webhosting by: |
UnlimitedHosting | CustomHosting | FreeWeb.sk |
Comments
Re: Gadžety - Ubiquity RouterStation Pro
ssb robi problemy aj na inych distribuciach, vratane novsich jadier (2.6.34). Skusali ste proprietarny driver od Broadcomu?
____________________________________________________________
Ked niecim nie som takmer uplne presvedceny, nepisem to. Vzdy uvadzajte vecne a najdolezitejsie argumenty, inak ma nepresvedcite. Ked sa mylim, opravte ma; rad sa poucim.
Re: Gadžety - Ubiquity RouterStation Pro
Neskusal som, lebo v repozitari nebol a zasa tych kariet nie je na trhu az tolko, aby sa oplatilo s tym viac babrat. Athetrosy sa daju kupit v kazdom obchode, broadcom treba hladat.
Prisiel som, videl som, hmm...
Re: Gadžety - Ubiquity RouterStation Pro
O Ubiquity som pocul, ale nikdy som sa s nimi nehral, osobne mi pridu k uzitku najme nanostationy. Co sa tyka malokalibrovych routerov, tak u mna jednoznacne vitazi Mikrotik, ten ma celu skalu interierovych, exterierovych a rackovych zariadeni z ktorych si vybere kazdy. Ku kazdemu je k dispozicii bud proprietarny RouterOS, alebo je mozne donho nasukat OpenWRT. U modelov s viac RAM je k dispozicii aj virtualizacia routera v routeri.
---
Cuchat s nadchou, to je ako sniffovat bez promiscu.
Re: Gadžety - Ubiquity RouterStation Pro
Dolezita je (okrem ineho) aj cena. Cela tato sranda, spolu s krabickou, zdrojom, wifi kartou a omni indoor antenou stoji okolo 100 eur. Navyse, nasim cielom je mat uplne totozny hardver na vsetkych pobockach, preto sme hladali nieco dostatocne vykonne, lacne a konfigurovatelne.
Prisiel som, videl som, hmm...
Re: Gadžety - Ubiquity RouterStation Pro
U routerboardu som sa s rb411, panelovou antenou / krytom na 2.4ghz, PoE injectorom a zdrojom dostal na nejakych 75 euri + dovoz. a to som este brutalne preplacal, pretoze som chcel a/b/g/n atherosu, tak som musel brat r52n, ktora stala vela penazi. cm9 sa dala zohnat od 5 evri
---
Cuchat s nadchou, to je ako sniffovat bez promiscu.
Re: Gadžety - Ubiquity RouterStation Pro
Hmm, ja kupujem normalne v asbise a tam stoji CM9 20 evri.
Prisiel som, videl som, hmm...