ieie.it

Come sapere i client wifi connessi al proprio router?

Monday, November 2nd, 2009

La risposta alla domanda nel titolo potrebbe essere risolta in molti modi, ma oggi vedremo una soluzione per un apparato specifico cioè una fonera (quindi hardware atheros) e openwrt come sistema operativo. In particolare mi sono sempre chiesto come sapere i client wifi che sono connessi al mio access point senza naturalmente passare per l’elenco degli indirizzi rilasciati dal server dhcp. Ho scoperto grazie a Claudio che la soluzione è veramente semplice, infatti madwifi ci consente di scoprirlo interrogando:

/proc/net/madwifi/ath0/associated_sta

quindi la soluzione per avere l’elenco delle Station connesse è eseguire questo domando dalla shell della fonera:

cat /proc/net/madwifi/ath0/associated_sta

e a video comparirà l’elenco dei client wifi associati alla vostra fonera con l’rssi.

la_fonera copy

Aggiungere uno script all’avvio della fonera 2.0

Wednesday, September 30th, 2009

Può essere comodo aggiungere degli script personalizzati allo startup della fonera 2.0, sulle ultime versioni del firmware della fonera 2.0 l’esecuzione degli script è totalmente gestita da un demone chiamano fonstated e per aggiungere uno script allo startup dobbiamo interagire con lui.

Dopo aver creato il file contenente il nostro script, posizioniamolo in /etc/fonstated e diamogli i permessi di esecuzione, poi  basterà aprire il file /etc/config/fonstate e aggiungere queste due righe alla fine del file:

config fonboot
option event nomescript

Dove nomescript sarà naturalmente il nome del nostro script.

Fatto questo il nostro script si avvierà automaticamente all’avvio della fonera.

B.A.T.M.A.N. (Better Approach To Mobile Ad-hoc Networking) e visualizzazione 3d dei link wifi

Friday, June 20th, 2008

2 giorni fa avendo tempo mi sono messo a provare un po Batman questo relativamente nuovo protocollo che si propone di migliorare il gia esistente Olsr, devo dire che i test hanno dati risultati davvero positivi e la configurazione è davvero semplice anche se la documentazione è davvero poca. Innanzitutto lavoreremo con Openwrt Kamikaze 7.09 io me lo sono gia ricompilato da svn quindi se volete le immagini sono queste: openwrt-atheros-2.6-root.squashfs e openwrt-atheros-2.6-vmlinux.lzma una volta flashata la nostra fonera con ap51 flash abbiamo la versione base di Kamikaze che risponderà sull’ip 192.168.1.1. Ora iniziamo la configurazione per batman e l’interfaccia web: diamo

vi /etc/ipkg.conf

e aggiungiamo la riga:

src X-Wrt http://downloads.x-wrt.org/xwrt/kamikaze/7.09/atheros-2.6/packages/

il file finale dovrà apparire così:

src release http://downloads.openwrt.org/kamikaze/7.09/atheros-2.6/packages src packages http://downloads.openwrt.org/kamikaze/packages/mips src X-Wrt http://downloads.x-wrt.org/xwrt/kamikaze/7.09/atheros-2.6/packages/ dest root / dest ram /tmp

poi diamo:

ipkg update

e dopodiche installiamo la GUI:

ipkg install webif

e ora batman:

ipkg install http://www.ieie.it/download/fonera/batmand_0.3-current_mips-kk-elf-32-msb-dynamic.ipk

passiamo ora alla sua configurazione(la facciamo attraverso uno script che viene lanciato ):

vi /etc/batman_start.sh

che dovrà apparire così:

#/bin/sh

batmand -s ip_server_visual -a gw_internet/24 -g 9 ath0

se il nodo è un nodo che è direttamente collegato ad internet dove: ip_server_visual è l’ip della macchina che ha attivo(lo vedremo dopo) il server che visualizza la topologia della rete gw_internet è l’ip che usa la fonera per andare in internet. se il nodo non ha connettività dovrà essere così:

#/bin/sh batmand -s ip_server_visual -r 3  -p gw_preferito ath0

dove gw_preferito è l’ip della fonera che ha connettività configurazione rete della fonera: Io ho optato per separare la rete wifi(batman) da un evenutale rete lan e ho agito in questo modo: /etc/config/network

config interface loopback

option ifname   lo

option proto    static

option ipaddr   127.0.0.1

option netmask  255.0.0.0

config interface lan

option ifname   eth0

option type     bridge

option proto    static

option ipaddr   192.168.3.140

option netmask  255.255.255.0

option gateway 192.168.3.1

option dns 192.168.3.1

#### Wi-Fi LAN configuration

config interface wifi

option ifname   “ath0″

option proto    static

option ipaddr   192.168.9.1

option netmask  255.255.255.0

Naturalmente dovrete cambiare i parametri della lan se il nodo che state configurando è collegato a internet e mettere i vostri, per quanto riguardo la wifi le impostazioni devono essere le stesse per tutti i nodi tranne naturalmente cambiare per ogni nodo “option ipaddr” che deve essere diverso per tutti e la configurazione wifi:

/etc/config/wireless

config wifi-device  wifi0

option type     atheros

option channel  1

option mode     ‘11bg’

option diversity        ‘0′

option txantenna        ‘1′

option rxantenna        ‘1′

option disabled ‘0′ config wifi-iface

option device   wifi0

option network  ‘wifi’

option mode     ‘adhoc’

option ssid     ‘batman’

option encryption none

option hidden   ‘0′

option isolate  ‘0′

option txpower  ‘18′

option bgscan   ‘0′

option wds      ‘0′

La configurazione di /etc/config/wireless deve essere uguale per tutti i nodi. Ok la configurazione delle fonere è finita, lanciando su ognuna /etc/batman_start.sh dopo averlo reso eseguibile con chmod +x /etc/batman_start.sh le fonere gia si dovrebbero vedere. Ora passiamo ai client (computer) che si devono connettere a internet o comunque usare la rete BATMAN: Perchè un computer possa entrare nella rete BATMAN deve poter parlare il protocollo BATMAN  e quindi ci deve essere il demone BATMAN attivo. Io ho usato una UBUNTU per le prove ma qualsiasi distro linux va bene, scarichiamo il file batman-0.3.tar.gz estraiamo l’archivio dove ci pare e poi diamo da terminale dentro la cartello dove abbiamo estratto batman “make”, alla fine della compilazione ci ritroveremo nella cartella con il demone batmand, a questo punto dopo aver settato la nostra scheda wifi con:

sudo iwconfig eth1 essid batman mode ad-hoc sudo ifconfig eth1 192.168.9.X

possiamo lanciare batmand scegliendo sempre una delle due modalità (client o gateway):

./batmand -s ip_server_visual -a gw_internet/24 -g 9 eth1

se il nodo è un nodo che è direttamente collegato ad internet dove: ip_server_visual è l’ip della macchina che ha attivo(lo vedremo dopo) il server che visualizza la topologia della rete gw_internet è l’ip che usa la fonera per andare in internet. se il nodo non ha connettività dovrà essere così:

./batmand -s ip_server_visual -r 3  -p gw_preferito eth1

dove gw_preferito è l’ip della fonera che ha connettività A questo punto dovremmo gia essere in grado di navigare o comunque di vedere gli altri nodi della rete con un ping, se non riusciamo a navigare proviamo ad aggiungere la rotta di default con:

sudo route add default gw gw_internet

e il tutto dovrebbe funzionare. Installiamo il visualization server scaricando vis-0.3.tar.gz scompattandolo in una cartella a piacere e dando

make

lanciamolo con

./vis interfaccia

dove al posto di interfaccia dobbiamo mettere l’interfaccia fisica su cui deve rimanere in ascolto (ex eth1) Ora installiamo s3d per la visualizzazione 3d scaricandolo  da svn

:

svn checkout svn://svn.berlios.de/s3d/trunk

e seguiamo il readme per compilarlo, una volta compilato lanciamo il server:

./s3d

e poi lanciamoda dentro apps

./meshs3d -H vis_server

dove vis_server è l’indirizzo ip del server vis che abbiamo lanciato prima. E ora dovremmo visualizzare la topologia in 3d.

Il risultato lo potete osservare in galleria

Aprire redboot sulla fonera per accedervi via telnet

Tuesday, May 6th, 2008

Questa procedura consente di riuscire ad abilitare l’accesso a redboot (il boot della fonera) per potervi accedere senza difficoltà nelle fase iniziali di avvio della fonera. Abilitarlo è molto utile perchè consente in qualsiasi casi di riuscire a recuperare la fonera e anche per poterci sostituire il firmware.
Passiamo alla parte pratica:
Abbiamo bisogno:

  1. Di una fonera con accesso via ssh gia abilitato (se non avete accesso ad ssh a breve metterò una guida su come abilitarlo comuqnue per ora googlando trovate sicuramente una guida utile)
  2. openwrt-ar531x-2.4-vmlinux-CAMICIA.lzma
  3. out.hex

Per prima cosa se siamo su linux trasferiamo il file openwrt-ar531x-2.4-vmlinux-CAMICIA.lzma sulla fonera con il comando

scp openwrt-ar531x-2.4-vmlinux-CAMICIA.lzma root@169.254.255.1:/tmp

se siamo su windows dobbiamo aver installato un webserver sul nostro computer e quindi poi sulla fonera dare il

wget http://ip_computer/openwrt-ar531x-2.4-vmlinux-CAMICIA.lzma

oppure

wget http://fonera.info/camicia/openwrt-ar531x-2.4-vmlinux-CAMICIA.lzma

Una volta trasferito il file sulla fonera diamo via ssh (dalla shell della fonera)

cd /tmp
mtd -e vmlinux.bin.l7 write openwrt-ar531x-2.4-vmlinux-CAMICIA.lzma vmlinux.bin.l7
reboot

Una volta riavviata la fonera trasferiamo il secondo file su linux sempre con il comando:

scp out.hex root@169.254.255.1:/tmp

su windows entrando via ssh sulla fonera e dando:

wget http://ip_computer/out.hex (se abbiamo un webserver installato sulla macchina)

oppure

wget http://fonera.info/camicia/out.hex ( se la fonera è connessa ad internet)

Una volta trasferito il secondo file (out.hex) diamo via ssh (dalla shell della fonera):

cd /tmp
mtd -e “RedBoot config” write out.hex “RedBoot config”
reboot

Al reboot della fonera nelle fase iniziali potremmo accedere a Redboot impostando il computer con indirizzo ip 192.168.1.166 e dando:

telnet 192.168.1.254 9000

in questo modo accediamo direttamente a redboot dal quale possiamo recuperare la fonera anche se brickata e volendo anche flasharla con un altro firmware.

Un ottima guida però solo per linux la potete trovare sul wiki di Ninux : http://wiki.ninux.org/QuickFoneraHack

La fonera come scheda wireless

Monday, May 5th, 2008

La fonera è oramai un Access Point wireless talmente diffuso che si trova ad un prezzo anche minore di 10 euro ed è per questo che alle volte potrebbe essere più semplice trasformarla in una scheda wireless piuttosto che comprarne una per il nostro computer, da qui l’idea di realizzare un piccolo bash script che consentisse di collegare via lan  la fonera al computer e sfruttare la fonera per collegarsi via wireless.

I risultati devo dire che sono stati eccellenti senza perdita di prestazioni.

Requisiti:

  1. Fonera
  2. Accesso ssh alla fonera
  3. bash script da scaricare

Iniziamo:

La procedura è davvero minimale anche perchè lo script non ha molte pretese, innanzitutto trasferiamo lo script sulla fonera dopo averlo configurato col nome della wireless a cui ci vogliamo connettere (si intende che la wireless sia senza protezione) per trasferirlo diamo da terminale (se abbiamo windows possiamo creare con vi un file /etc/wifi_fonera.sh e copiarci dentro il contenuto dello script):

scp wifi_fonera.sh  root@169.254.255.1:/etc

dove 169.254.255.1 è nel mio caso l’indirizzo ip della fonera.

Fatto questo logghiamoci via ssh sulla fonera e diamo:

chmod +x /etc/wifi_fonera.sh

poi diamo:

vi /etc/init.d/S98wifi_fonera

e nella successiva schermata dopo aver premuti “i” per poter iniziaire a scrivere copiamoci dentro questo:

#!/bin/sh

/etc/wifi_fonera.sh

usciamo premendo “:” e poi scrivendo “wq” e dando invio

e ora l’ultimo comando:

chmod +x /etc/init.d/S98wifi_fonera

Se tutto è andato bene al prossimo riavvio la fonera si collegherà all’access point specificato e darà internet attraverso la porta lan.

Overclock fonera

Sunday, April 13th, 2008

Sulla mailing list di Ninux.org è appena stata riportata la notizia tratta da questo post: dove si parla della possibilità di poter aumentare la velocità del clock della cpu della fonera, in breve vi traduco i passi che ci sono da fare:

  1. Loggare via ssh nella fonera
  2. eseguire cat /dev/mtdblock/0 > /tmp/RedBoot.bin
  3. con “scp” copiarsi il file /tmp/RedBoot.bin sul proprio computer e aprirlo con un qualsiasi editor esadecimale
  4. cambiare l’offset 0×1e3 da 0×03 a 0x01 (stiamo in questo modo dividendo per 2 invece che per 5)
  5. cambiare l’offset 0×1ef da 0×5c a 0×28 (stiamo moltiplicando per 10 invece che per 9)
  6. rimettere il file che abbiamo così modificato sulla fonera e dare il comando mtd -f write /tmp/RedBoot.bin RedBoot

In questo modo avremo una fonera che lavorerà alla frequenza di 200mhz perchè il conto da fare è:
40/2*10 = 200 dove 40 è la frequenza base del pll, 2 che è il nostro divisore e 10 che è il nostro moltiplicatore.

Il post riporta anche che questa “patch” è funzionale con tutti quei device che lavorano con Redboot come ad esempio: ap51 , ap61 come l’Accton MR3202A oppure Ubiquiti LS2/NS2/PS2.

C’è da dire che l’overclock della fonera è molto rischioso e potrebbe portare al brick del device se non si sa quello che si fa.

Fonera 2.0 in arrivo!!!

Sunday, April 13th, 2008

Confronto fonera 1.0 con fonera 2.0

Eccola in tutto il suo splendore!! Da voci di corridoio finalmente sta arrivando… E’ la fonera 2.0!!!

Caratteristiche principali:

Bisogna dire che la caratteristica più attesa sarà sicuramente la porta usb alla quale eventualmente attaccare un hard-disk esterno, finalmente avremo anche la doppia porta ethernet cosa che non avevamo nella precedente versione. Ora non resta che aspettare il prezzo ufficiale dove ormai tutti sperano in una commercializzazione a 5 euro come c’era stata per la “old” fonera, ma insomma l’ultima parola starà a Fon

About Me

Qui condividero' la mia conoscenza ed esperienza riguardo ai miei hobby e il mio lavoro. Molti dei miei articoli riguarderanno il mondo GNU/linux, hardware wifi e il mondo Apple. More

Vuoi Iscriverti?

 Sottoscrivi il feed
Cerca :