RouterboardRB500Linux
Instalace
Upravenou distribuci pro routerboardy řady 5xx si můžete stáhnout na této adrese: http://www.jikos.cz/~jbohac/goodies/rb500-czf/
Pokud ji potřebujete dostat na větší CF kartu, než v návadu uváděná 128M, postup je následující:
- postupovat dle návodu v souboru README (
'bzcat cf_128M_image.bz2 > /dev/hda'
) - vytvoří se partišna /dev/hda2 s onou distribucí
- fdiskem tuto partišnu odebrat
- a hnedle přidat, ale už přes celý CF disk
- změny zapsat
- příkazem
'resize2fs /dev/hda2'
roztáhnout na plnou velikost
Upozornění
POZOR, pri provozu RB532 v modu AP se dvema CM-9 kartama v 2,4 a 5,4 GHZ davejte ZASADNE 5GHz na ath0, kdyz sem mel 5GHz na ath1 tak nechodilo par klientu.
Pri provozu dvou CM-9 v kombinaci 5,4 a 5,4GHz nepozoruji potize.
Pri provozu vice karet za pomoci miniPCI rozsireni, napr. RB502 se muze stat, ze wifi karty v tomto rozsirovacim modulu se tvari, ze funguji, ale nic nechyti a ani nevysilaji. V tomto pripade je nutne pridat parametr rfkill=0 za prikaz modprobe ath_pci a vse pojede bez problemu. Zdroj: http://madwifi.org/wiki/UserDocs/MiniPCI
Konfigurace
Jelikoz je to debian, tak po rozjeti netu provedte apt-get update
Zde je seznam baliku, ktere jsem pouzil na Kenny3: bridge-utils,vim,snmpd,bzip2,thttpd,dhcp3-server,arping,host
Pro pouziti thttpd je vhodne upravit, aby ten http server nelogoval na kartu, takze v thttpd.conf zakomentujte radek s logovanim:
<bash>#logfile=/var/log/thttpd.log </bash>
Pokud pouzijete dhcp3 server, tak je treba upravit soubor /etc/dhcpd.conf a z nej vytvorit linky do /etc/default/dhcp3-server a /etc/dhcp3/dhcp.conf
<bash> rm /etc/default/dhcp3-server rm /etc/dhcp3/dhcpd.conf ln -s /etc/dhcpd.conf /etc/dhcp3/dhcpd.conf ln -s /etc/dhcpd.conf /etc/default/dhcp3-server
- Aby po rebootu naskocil dhcp server, tak upravte init skript takto:
start) mkdir -p /tmp/dhcp3 touch /tmp/dhcp3/dhcpd.leases~ touch /tmp/dhcp3/dhcpd.leases echo -n "Starting DHCP server: "
- A v /etc/dhcpd.conf pridat tuto radku:
lease-file-name "/tmp/dhcp3/dhcpd.leases" ;
- Uprava je nutna, neb po rebootu je / partisna namontovana jako ro, a nejde do prislusnych adresaru zapisovat... Takze si pomuzem /tmp ktery je tmpfs
- pak uz jen restart dhcpd (apt-get ho uz nahodi po installu)
/etc/init.d/dhcp3-server restart </bash>
Dale pokud se pouzije snmpd, tak zde je fcni config na sledovani interfacu (napr pres cacti z charona): <bash> cat /etc/snmp/snmpd.conf com2sec paranoid default public
group MyROSystem v1 paranoid group MyROSystem v2c paranoid group MyROSystem usm paranoid group MyROGroup v1 readonly group MyROGroup v2c readonly group MyROGroup usm readonly group MyRWGroup v1 readwrite group MyRWGroup v2c readwrite group MyRWGroup usm readwrite
view all included .1 80 view system included .iso.org.dod.internet.mgmt.mib-2.system
view network included .iso.org.dod.internet.mgmt.mib-2.system view network included .iso.org.dod.internet.mgmt.mib-2.interfaces view network included .iso.org.dod.internet.mgmt.mib-2.ip view network included .iso.org.dod.internet.mgmt.mib-2.icmp view network included .iso.org.dod.internet.mgmt.mib-2.tcp view network included .iso.org.dod.internet.mgmt.mib-2.udp view network included .iso.org.dod.internet.private.enterprises.ucdavis.memory view network included .iso.org.dod.internet.private.enterprises.ucdavis.systemStats view network included .1.3.6.1.3.14614
access MyROSystem "" any noauth exact network none none access MyROGroup "" any noauth exact all none none access MyRWGroup "" any noauth exact all all none
syslocation "Kenny3" syscontact "Root <kendy@hkfree.org>"
</bash>
Nejzajimavejsi je skript /etc/init.d/setnet ktery jsem uzpusobil na kompletni fungovani routerboardu jako AP Bridge
<bash> start() {
echo -n $"Starting Networking: " modprobe ath_pci outdoor=1 countrycode=276 # pridat rfkill=0 pokud pouzivame rozsireni na vice miniPCI napr. RB502; # po nekolika hodinach sileneho googlovani objevil Lada_JNet :-) #loopback interfacy ip l s up dev lo ip a a 127.0.0.1/8 dev lo
- ip l s up dev dummy0
- ip a a 10.x.0.z/32 dev dummy0
#ethernet
- ip l s up dev eth2
- ip a a 192.168.0.1/24 dev eth2
#wifi /usr/local/bin/wlanconfig ath0 destroy /usr/local/bin/wlanconfig ath1 destroy /usr/local/bin/wlanconfig ath0 create wlandev wifi0 wlanmode ap ip l s up dev ath0 iwconfig ath0 essid "spar2.hkfree.net" iwpriv ath0 mode 1 iwconfig ath0 rate auto /usr/local/bin/athctrl -i wifi0 -d 8000 iwconfig ath0 channel 104
- iwconfig ath0 txpower 2
/usr/local/bin/wlanconfig ath1 create wlandev wifi1 wlanmode ap ip l s up dev ath1 iwconfig ath1 essid "spar2.hkfree.org" iwpriv ath1 mode 1 iwconfig ath1 rate auto /usr/local/bin/athctrl -i wifi1 -d 8000 iwconfig ath1 channel 100
- iwconfig ath1 txpower 2
#nastavit mac filtr na jen povolene MACy iwpriv ath0 maccmd 1 iwpriv ath0 maccmd 3
#Nahodit bridge brctl addbr br0 brctl addif br0 eth0 brctl addif br0 eth1 brctl addif br0 eth2 brctl addif br0 ath0 brctl addif br0 ath1
ifconfig eth0 up ifconfig eth1 up ifconfig eth2 up ifconfig ath0 up ifconfig ath1 up ifconfig br0 10.107.2.92 netmask 255.255.255.248 broadcast 10.107.2.95 up #povol routovani echo "1" > /proc/sys/net/ipv4/ip_forward
#povol source routing echo "1" > /proc/sys/net/ipv4/conf/all/accept_source_route #vypni rp-filter echo "0" > /proc/sys/net/ipv4/conf/all/rp_filter
#default route ip r a default via 10.107.2.89
#nastav cas ze site rdate -s 10.15.0.1
#Jelikoz nastaveni kanalu se napoprve neudeje, tak nechame 5sec sleep a pak znovu iwconfig ath0 channel 104 sleep 1 iwconfig ath1 channel 100
return $RETVAL
}
</bash>
Mac adresy do seznamu povolenych se pridavaji takto: <bash> iwpriv ath0 addmac 11:22:33:44:55:66 </bash>
Jelikoz routerboard standartne ma COM port na rychlosti 115200 baudu, tak se sikne upravit inittab, tak aby jela seriova konzole na stejne rychlosti:
(puvodni rychlost v inittabu je 9600) <bash>
- Example how to put a getty on a serial line (for a terminal)
T0:23:respawn:/sbin/getty -L ttyS0 115200 vt100
- T1:23:respawn:/sbin/getty -L ttyS1 9600 vt100
</bash>
Upravena distribuce
Varianta pro 512MB CF kartu: Image 512 (s kernelem 2.4.30)
Varianta pro 1024MB CF kartu: Image 1024 (s kernelem 2.4.30)
Varianta pro 512MB CF kartu: Image 512 (s kernelem 2.6.17)
Varianta pro 1024MB CF kartu: Image 1024 (s kernelem 2.6.17)
Nahrava se stejne jako 128MB varianta. Tj:
<bash>
bzcat image > /dev/sdc #kde sdc je ta CF karta
</bash>
Upravena distribuce obsahuje oproti zakladnimu baliku:
madwifi-0.9.1
vim
midnight commander
quagga-0.99.5
libc6_2.3.6
bridge-utils
snmpd
bzip2
thttpd
dhcp3-server
arping
host
Jeho defaultni IP: 192.168.2.1
heslo na root: root
Vsechny ethernety jsou zapojeny do bridge
Konfigurace pres klasiku debian: /etc/network/interfaces
Konfigurace pro WiFi: /etc/init.d/setnet {start|stop|restart}
Testy s image co ma kernel 2.4.30:
RB532+RB564 - OK
RB532+RB564 + 6x CM9 - OK
RB532+RB564 + 6x R52 - OK
RB532+RB564 + 6x CM10 - FAIL
Testy s image co ma kernel 2.6.17:
RB532 1x CM9 1xCM11 - OK (i regulace vykonu na obou CM)
Rozlozeni ethernetu a atheros karet s RB564 (pri pohledu zezadu na konektory) na kernelu 2.4.30
RB564 ------ ath3 ------ ath2 ------
RB564 eth7 eth6 eth5 eth4 eth3 eth2
RB564 ------ ath5 ------ ath4 ------
RB532 -------------- ath0 ----
RB532 Power eth8 COM eth0 eth1
RB532 -------------- ath1 ----