Portál AbcLinuxu, 2. května 2025 05:43

Za/Vypínanie wifi na routeri Linksys v crone

24.5.2011 12:06 | Přečteno: 1168×

Vzhľadom na to, že webové rozhranie môjho Linksys routra neumožňuje (narozdiel napr. od D-Linku) plánované zapínanie/vypínanie wifi, napísal som si krátky skriptík, ktorý spúšťam v crone zo svojho domáceho linuxového servera. Ak máte dual-band router od Linksysu, mohol by sa Vám hodiť:

#!/bin/bash
#set -x
#####################################################
# enable/disable wifi on linksys e4200 router       #
#####################################################
# variable definition
host=linksys
user=admin
password=heslo
# export certificate from firefox and save it into file.pem
certificate=file.pem
guestssid=guestSSIDname
a5ghzssid=5ghzSSIDname
a24ghzssid=2.4ghzSSIDname
netmode=mixed
###############################
if [ $# -ne 1 ]; then
        echo "syntax: $0 {on|off}"
        exit 1
        fi

if [ $1 == "on" ]; then
        wget --ca-certificate=${certificate} --output-document=- --user=${user} --password=${password} --post-data="submit_button=Wireless_Basic&action=Apply&submit_type=&change_action=&next_page=&commit=1&wl0_nctrlsb=none&wl1_nctrlsb=none&wl0_channel=0&wl1_channel=0&wl0_nbw=20&wl1_nbw=20&wait_time=3&guest_ssid=${guestssid}&wsc_security_mode=&wsc_smode=1&wl1_net_mode=${netmode}&wl1_ssid=${a5ghzssid}&_wl1_nbw=20&_wl1_channel=0&wl1_closed=0&wl0_net_mode=${netmode}&wl0_ssid=${a24ghzssid}&_wl0_nbw=20&_wl0_channel=0&wl0_closed=0" https://${host}/apply.cgi # &>/dev/null
else
        wget --ca-certificate=${certificate} --output-document=- --user=${user} --password=${password} --post-data="submit_button=Wireless_Basic&action=Apply&submit_type=&change_action=&next_page=&commit=1&wl0_nctrlsb=none&wl1_nctrlsb=none&wl0_channel=0&wl1_channel=0&wl0_nbw=20&wl1_nbw=20&wait_time=3&guest_ssid=${guestssid}&wsc_security_mode=&wsc_smode=1&wl1_net_mode=disabled&wl0_net_mode=disabled" https://${host}/apply.cgi # &>/dev/null
        fi
exit 0

v crone mám potom niečo takéto:

30 6 * * * /usr/bin/wlan.sh on
50 22 * * * /usr/bin/wlan.sh off

a v rules shorewallu:

ACCEPT fw net:192.168.1.1 tcp https - - - - - - timestart=04:28×top=04:32
ACCEPT fw net:192.168.1.1 tcp https - - - - - - timestart=20:48×top=20:52

Zatiaľ to funguje bezproblémovo, len prúser je, že Linksys si zvykne pri zmene niektorých nastavení cez webgui vygenerovať nový certifikát (netuším prečo). Takže keď to prestane fungovať, treba cert vyexportovať nanovo.

       

Hodnocení: 100 %

        špatnédobré        

Tiskni Sdílej: Linkuj Jaggni to Vybrali.sme.sk Google Del.icio.us Facebook

Komentáře

Nástroje: Začni sledovat (3) ?Zašle upozornění na váš email při vložení nového komentáře. , Tisk

Vložit další komentář

AsciiWolf avatar 24.5.2011 14:14 AsciiWolf | skóre: 41 | blog: Blog
Rozbalit Rozbalit vše Re: Za/Vypínanie wifi na routeri Linksys v crone
Odpovědět | Sbalit | Link | Blokovat | Admin
Hmm. A nebylo by lepším řešením nainstalovat na ten Linksys nějaký alternativní firmware? ;-)
jose17 avatar 24.5.2011 14:25 jose17 | skóre: 44 | blog: Joseho_blog | Bratislava
Rozbalit Rozbalit vše Re: Za/Vypínanie wifi na routeri Linksys v crone
ked uz nebude v zaruke, tak nad tym pouvazujem. zatial som sice nic nebrickol, ale jeden nikdy nevie..
Ja vim, on vi, ty nano!
24.5.2011 15:00 martina
Rozbalit Rozbalit vše Re: Za/Vypínanie wifi na routeri Linksys v crone
operacni system jak operacni system, ne?

windows si taky muzes z pc smazat a dat to reklamovat s linuxem (akorat ti ho pravdepodobne vrati zpet s windows (cili v puvodni prodavane "forme"))

a na routeru bezi linux, cili obecny standardizovany operacni system, ne nejaky specialni, ala firmware v dvd mechanice
pek avatar 24.5.2011 18:15 pek | skóre: 20
Rozbalit Rozbalit vše Re: Za/Vypínanie wifi na routeri Linksys v crone
Není to těžké. Zkusil jsem DD-WRT a zpátky už bych se nevracel. Minimálně kvůli tomu, že webové rozhraní pro nastavení routeru nepoužívá rámy.
asfethan avatar 24.5.2011 19:18 asfethan | skóre: 10 | blog: asfalatum | Bratislava
Rozbalit Rozbalit vše Re: Za/Vypínanie wifi na routeri Linksys v crone
Staci si dat pozor iba aky firmware nahrat a kam nahrat. Koliecko ofic. fw -> OpenWRT -> ofic. fw sa da spravit aj bez "ztehelnenia". Ja som sa so svojim tplinkom tolko babral az som nakoniec z neho tehlu spravil. Potom som si dal na dosku naletovat 4 piny k seriovemu rozhraniu a router dodnes skvele sluzi. Bezi na nom vyvojova OpenWRT verzia s ktorou som maximalne spokojny.
24.5.2011 23:19 Kvakor
Rozbalit Rozbalit vše Re: Za/Vypínanie wifi na routeri Linksys v crone
Většinou je router buď ve stavu "trochu nefunguje" (např. zlobí WiFi) nebo "zcela nefunguje" (a.k.a. "cihla"). Zatímco v prvním případě jde originální firware nahrát zpět, v druhém případě stejně nejde zjisti, co je v něm nahráno. Nepředpokládám, že se při dnešních cenách (tj. kolem 1000 Kč) vyplatí zaměstnat českému dodavateli nějakého maníka, u kterého by se jim vyplatilo, aby strávil několik hodin pitvaje se v zcihleném routerum a přes sériovou konzolu, JTAG či bůhvíjaké esoterické rozhraní zkoumal, jestli je uvnitř originální firware nebo OpenWRT ...
Luboš Doležel (Doli) avatar 24.5.2011 16:13 Luboš Doležel (Doli) | skóre: 98 | blog: Doliho blog | Kladensko
Rozbalit Rozbalit vše Re: Za/Vypínanie wifi na routeri Linksys v crone
Odpovědět | Sbalit | Link | Blokovat | Admin
Můžu se zeptat, k čemu je to dobré?
jose17 avatar 24.5.2011 16:25 jose17 | skóre: 44 | blog: Joseho_blog | Bratislava
Rozbalit Rozbalit vše Re: Za/Vypínanie wifi na routeri Linksys v crone
no.. nemusi nam wifi ziarit v byte, kym spime. vplyv na zdravie nebol sice potvrdeny, no ani vyvrateny. a potom to asi bez wifi bude mat mensi odber (quotation needed).
Ja vim, on vi, ty nano!
24.5.2011 17:48 RapMan | skóre: 14 | blog: RapMan
Rozbalit Rozbalit vše Re: Za/Vypínanie wifi na routeri Linksys v crone
Co kdyz je naopak zareni wifi prospesne, a ty o to kazdou noc prichazis?
AsciiWolf avatar 24.5.2011 18:47 AsciiWolf | skóre: 41 | blog: Blog
Rozbalit Rozbalit vše Re: Za/Vypínanie wifi na routeri Linksys v crone
+1 :-D
Otto Šabart avatar 25.5.2011 01:52 Otto Šabart | skóre: 13 | blog: KatiePC blog
Rozbalit Rozbalit vše Re: Za/Vypínanie wifi na routeri Linksys v crone
Presne tak.. co kdyz nas to zmutuje...to by z nas taky jednou mohli byt treba i spidermani :-D
*´¨)¸.·´¨)¸.·***·>>> www.seberm.com
jose17 avatar 25.5.2011 08:47 jose17 | skóre: 44 | blog: Joseho_blog | Bratislava
Rozbalit Rozbalit vše Re: Za/Vypínanie wifi na routeri Linksys v crone
Ja vim, on vi, ty nano!
26.5.2011 17:45 Matlák
Rozbalit Rozbalit vše Re: Za/Vypínanie wifi na routeri Linksys v crone
Hmm hmm a co mikrovlnka, ta způsobuje rakovinu a nebo gumuje mozek (má na zhruba stejné frekvenci asi 1000x takové vyzařování) ?
26.5.2011 18:30 GeBu | skóre: 27 | blog: zápisky
Rozbalit Rozbalit vše Re: Za/Vypínanie wifi na routeri Linksys v crone
Rozdíl mezi mikrovlnkou a wifi je dost značný: wifi router je udělaný na to, aby vlny vyzařoval ven, mikrovlnka je udělaná tak, aby vlny ven nešly. A stejně se u mikrovlnky nedoporučuje stát a čučet dovnitř případně vůbec být blízko ní.
jose17 avatar 1.6.2011 11:00 jose17 | skóre: 44 | blog: Joseho_blog | Bratislava
Rozbalit Rozbalit vše Re: Za/Vypínanie wifi na routeri Linksys v crone
24.5.2011 18:14 MartinK
Rozbalit Rozbalit vše Re: Za/Vypínanie wifi na routeri Linksys v crone
Pokud ti jde o odběr, tak to vypínej rovnou celé ;)
24.5.2011 23:10 Kvakor
Rozbalit Rozbalit vše Re: Za/Vypínanie wifi na routeri Linksys v crone
Na to je elegantnější řešení mít AP s tlačítkem sloužícím pro rychlé nastavení. Pokud do toho jde nahrát OpenWRT, tak jde většinou tlačítko číst jako ACPI událost, případně přes GPIO*, a můžou se na něj navěsit skripty na vypínaní a zapínání WiFi (na webu OpenWRT jsou i hotová řešení). Výhodou je, že narozdíl od v blogu popisovaného řešení není třeba další počítač a můžete si ho zapínat a vypínat dle libosti.

*No, obecně jde dobastlit tlačítko téměř k čemukoliv, co má volné GPIO piny, ale zaprvé tím přijdete o záruku a zadruhé se musí číst aktivně (pollingem), což hlavně na pomalejších procesorech není zrovna to nejlepší řešení.
26.5.2011 17:46 Matlák
Rozbalit Rozbalit vše Re: Za/Vypínanie wifi na routeri Linksys v crone
zadruhé se musí číst aktivně

ne vždy, často má alespoň část GPIO své přerušení..
25.5.2011 21:56 Michal Kubeček | skóre: 72 | Luštěnice
Rozbalit Rozbalit vše Re: Za/Vypínanie wifi na routeri Linksys v crone
To musí být moc příjemné, když se večer trochu zdržíte a přesně ve 22:50 vám najednou přestane fungovat síť…
Otto Šabart avatar 25.5.2011 01:49 Otto Šabart | skóre: 13 | blog: KatiePC blog
Rozbalit Rozbalit vše Re: Za/Vypínanie wifi na routeri Linksys v crone
Odpovědět | Sbalit | Link | Blokovat | Admin
Diky za tip:-). Uz jsem si to nastavil na svem openwrt taky... kdo vi, co nam ta wifi dela:-D. Preci jen spim 3 metry od n-koveho routeru.
*´¨)¸.·´¨)¸.·***·>>> www.seberm.com
Luboš Doležel (Doli) avatar 25.5.2011 10:37 Luboš Doležel (Doli) | skóre: 98 | blog: Doliho blog | Kladensko
Rozbalit Rozbalit vše Re: Za/Vypínanie wifi na routeri Linksys v crone
A jak vám to Nko funguje s iwconfig? Pokud jedu na Nkových rychlostech, tak mi iwconfig na Debianu buď ukazuje jen 54 Mb/s nebo dokonce 0 kb/s. Evidentně to nepodporuje.
Otto Šabart avatar 25.5.2011 11:49 Otto Šabart | skóre: 13 | blog: KatiePC blog
Rozbalit Rozbalit vše Re: Za/Vypínanie wifi na routeri Linksys v crone
Tak jsem to vyzkousel a jak na to koukam tak se to pres 54 Mb/s nedostane ani mne. A to jsem metr od anten. Bude to asi tou podporou.
*´¨)¸.·´¨)¸.·***·>>> www.seberm.com
26.5.2011 07:03 tom112233 | skóre: 21 | blog: tpikalek | Brno
Rozbalit Rozbalit vše Re: Za/Vypínanie wifi na routeri Linksys v crone
S tím N-kem je to vůbec nějaké zamotané. Mám doma dvě AP, obě jsou N s třemi anténami (tj. by měly mít 300 Mb/s a skutečně jedou několikrát rychleji než předchozí G). Nicméně NetworkManager má ve výpisu trochu zmatek. Je to na openSUSE 11.4.
tpikalek@tpikalek-ntb:~> nm-tool
...
  Capabilities:
    Speed:           300 Mb/s

  Wireless Access Points (* = current AP)
    *pikalek:        Infra, **:**:**:**:**:**, Freq 2432 MHz, Rate 54 Mb/s, Strength 88 WPA2
    pikalek:         Infra, **:**:**:**:**:**, Freq 2462 MHz, Rate 54 Mb/s, Strength 71 WPA2


tpikalek@tpikalek-ntb:~> /usr/sbin/iwconfig 
wlan0     IEEE 802.11abgn  ESSID:"pikalek"  
          Mode:Managed  Frequency:2.432 GHz  Access Point: **:**:**:**:**:**
          Bit Rate=300 Mb/s   Tx-Power=20 dBm   
          Retry  long limit:7   RTS thr:off   Fragment thr:off
          Power Management:off
          Link Quality=62/70  Signal level=-48 dBm  
          Rx invalid nwid:0  Rx invalid crypt:0  Rx invalid frag:0
          Tx excessive retries:0  Invalid misc:37   Missed beacon:0

tpikalek@tpikalek-ntb:~> /usr/sbin/iwlist wlan0 scan
wlan0     Scan completed :
          Cell 01 - Address: **:**:**:**:**:**
                    Channel:5
                    Frequency:2.432 GHz (Channel 5)
                    Quality=63/70  Signal level=-47 dBm  
                    Encryption key:on
                    ESSID:"pikalek"
                    Bit Rates:1 Mb/s; 2 Mb/s; 5.5 Mb/s; 11 Mb/s; 6 Mb/s
                              9 Mb/s; 12 Mb/s; 18 Mb/s
                    Bit Rates:24 Mb/s; 36 Mb/s; 48 Mb/s; 54 Mb/s
                    Mode:Master
Bedňa avatar 25.5.2011 10:46 Bedňa | skóre: 34 | blog: Žumpa | Horňany
Rozbalit Rozbalit vše Re: Za/Vypínanie wifi na routeri Linksys v crone
Odpovědět | Sbalit | Link | Blokovat | Admin
Toto som kedysi mal spravené, ale v PHP. To že to ide takto elgantne cez wget som netušil.

Dík za inšpiráciu.
KERNEL ULTRAS video channel >>>

Založit nové vláknoNahoru

ISSN 1214-1267, (c) 1999-2007 Stickfish s.r.o.