24. 1. 2010

Řízení jednotky UBNT

Ovládání pomocí SNMP
Modul SNMP Agent dokáže číst všechny informace a hodí se ke sledování jednotky (přenesená data, zatížení, signál, …), ale nedokáže změnit parametry.
Více na http://www.ubnt.com/wiki/.

Ovládání pomocí HTTP
Do routeru lze přistupovat pomocí http protokolu a zapisovat tak údaje. Je k tomu zapotřebí ovšem předem znát všechny údaje, které pak je třeba zapsat.

Například změna rychlosti: Na stránce advanced.cgi lze poslat parametry metodou POST pomocí programu wget: „wget.exe http://jmeno:heslo@router/advanced.cgi --post-data
"noise_immunity=28&ackdistance=600&client_isolation_status=disabled&ieee_mode=a&clksel=0&rate_module=ath_rate_onoe&rtsoff=off&fragoff=off&slider-input-1=4&acktimeout=25&autoack=enabled&mcast_rate=6M&mtikie=enabled&led1=94&led2=80&led3=73&led4=65&shaper_status=ON&in_rate=512&in_burst=0&out_rate=512&out_burst=0&wmm_level=-1", ale bohužel prosté poslání změněných proměnných vymazalo ostatní nastavení na stránce, takže by bylo nutné zjišťovat aktuální hodnoty před změnou. Proto tuto metodu nepoužiju.

Ovládání pomocí SSH (SCP)
Pomocí SSH protokolu jsme schopni do jednotky přenášet soubory i příkazy. Z jednotky můžeme stáhnout aktuální konfiguraci ze souboru /tmp/system.cfg, změnit nebo doplnit potřebné údaje a zase ji nahrát zpět. Nejlépe se k tomu hodí příkaz SCP (linux i windows). V prostředí windows jsem si vyrobil tento dávkový soubor „scp.cmd“:
del system.cfg
"c:\Program Files\WinSCP\WinSCP3.exe" /console /script=router-in.txt
type system.cfg | findstr /V /B "tshaper.in.rate=" | findstr /V /B "tshaper.out.rate=" > system-new.cfg
echo tshaper.in.rate=4096>> system-new.cfg
echo tshaper.out.rate=4096>> system-new.cfg
del system.cfg
ren system-new.cfg system.cfg
"c:\Program Files\WinSCP\WinSCP3.exe" /console /script=router-out.txt

který používá dva soubory „router-in.txt“
option batch on
open ubnt:ubnt@192.168.1.20
cd /tmp
option transfer binary
get system.cfg
close
exit
a soubor „router-out.txt“
option batch on
open ubnt:ubnt@192.168.1.20
cd /tmp
option transfer binary
put system.cfg
call /usr/www/apply.cgi
close
exit
V tomto příkladu měním hodnotu tshaper.in.rate a tshaper.out.rate, jak jste jistě poznali. Aby vše fungovalo, musí být řízení rychlosti zapnuto a zadaná nějaká hodnota.

Pokud chcete další informace, nebo implementovat řízení jednotky do Vašeho systému, můžete mě kontaktovat.

Žádné komentáře:

Okomentovat

K vkládání komentáře se můžete přihlásit bez registrace pomocí OpenID na Seznam.cz