Flashing: differenze tra le versioni
(Rinfrescata e aggiunte in vista dell'howto) |
(Aggiunta metodo tftp e base del flashing) |
||
Riga 11: | Riga 11: | ||
Il codice è disponibile su gitorious.org, un sito di hosting per progetti opensource. Per ottenerlo si deve usare git. | Il codice è disponibile su gitorious.org, un sito di hosting per progetti opensource. Per ottenerlo si deve usare git. | ||
WARNING: Questa guida è stata testata solo su antenne Ubiquiti | WARNING: Questa guida è stata testata solo su antenne Ubiquiti e con sistemi operativi Linux. I comandi usati vengono digitati in un emulatore di terminale,tipicamente si trova in Menu->Accessori->Terminale | ||
=== Ottenere il codice === | === Ottenere il codice === | ||
Riga 63: | Riga 63: | ||
<*> eigennet-reghack.............................. Regulatory domain unlocker | <*> eigennet-reghack.............................. Regulatory domain unlocker | ||
</pre> | </pre> | ||
Se una voce è segnata con --- vuol dire che è stata selezionata da un'altro pacchetto, in questo caso bwtest-webui necessita di bwtest che viene automaticamente selezionato. | |||
Il pacchetto fondamentale è ''eigennet-autoconf'' che farà la magia di configurare l'antenna. | Il pacchetto fondamentale è ''eigennet-autoconf'' che farà la magia di configurare l'antenna. | ||
Il resto è opzionale e dipende dal caso specifico | Il resto è opzionale e dipende dal caso specifico | ||
Riga 76: | Riga 77: | ||
</li> | </li> | ||
</ul> | </ul> | ||
<li> | |||
Per sicurezza controllare che in | |||
<pre> | |||
Location: | |||
-> Kernel modules | |||
-> Network Support | |||
--- kmod-batman-adv......................................... B.A.T.M.A.N. Adv | |||
[ ] enable verbose debug logging | |||
[*] enable bridge loop avoidance | |||
[*] enable distributed arp table | |||
[*] enable network coding [requires promisc mode support] | |||
[*] enable batctl | |||
</pre> | |||
Le voci siano selezionate come da esempio. | |||
</li> | |||
<li>Una volta finito di configurare bisogna uscire premendo il tasto <Esc> fino a risalire tutti i menu ed arrivare al dialogo | <li>Una volta finito di configurare bisogna uscire premendo il tasto <Esc> fino a risalire tutti i menu ed arrivare al dialogo | ||
<pre>Do you wish to save your new OpenWrt configuration?</pre> | <pre>Do you wish to save your new OpenWrt configuration?</pre> | ||
Riga 97: | Riga 113: | ||
* In caso di driver madwifi | * In caso di driver madwifi | ||
cd atheros | cd atheros | ||
L'immagine da usare dipende dal modello dell'antenna, tipicamente sarà un'antenna di Ubiquiti, [[http://wiki.openwrt.org/toh/start#ubiquiti qui]] la tabella delle antenne coi relativi articoli, in ogni articolo è scritta l'immagine da usare. | L'immagine da usare dipende dal modello dell'antenna, tipicamente sarà un'antenna di Ubiquiti, [[http://wiki.openwrt.org/toh/start#ubiquiti qui]] la tabella delle antenne coi relativi articoli, in ogni articolo è scritta l'immagine da usare. NON usare l'immagine con la dicitura jffs2 a meno che non sappiate cosa state facendo. | ||
Nel caso di primo flashing allora bisognerà usare l'immagine con la dicitura factory altrimenti andrà scelta quella con la dicitura sysupgrade. | Nel caso di primo flashing allora bisognerà usare l'immagine con la dicitura factory altrimenti andrà scelta quella con la dicitura sysupgrade. | ||
A seconda del metodo scelto per il flashing si dovrà procedere in diversi modi: | A seconda del metodo scelto per il flashing si dovrà procedere in diversi modi: | ||
==== Metodo WebUI (solo per factory) ==== | |||
* | ==== Metodo TFTP (Sia factory che sysupgrade) ==== | ||
*Metodo WebUI (solo per factory) | Per il sysupgrade è meglio usare [[Flashing#Metodo_SSH]] | ||
Questo metodo consiste nell'inserire nell'antenna messa in una modalità particolare l'immagine del firmware e lasciare che l'antenna si scriva da sola. | |||
Praparazione | |||
*Prendere l'antenna e collegare il POE (il parallelepipedo nero che si attacca alla corrente) alla corrente, collegare il cavo ethernet al computer ed inserirlo nella porta con scritto LAN del POE. | |||
*Inserire il cavo ethernet nell'antenna ma NO==== Metodo WebUI (solo per factory) ====N nel POE | |||
*Accanto alla porta ethernet sull'antenna c'è un piccolo foro con un pulsantino non visibile dall'esterno, con l'aiuto di una graffetta premere il pulsantino. | |||
*Tenendo premuto il pulsantino connettere il cavo ethernet dell'antenna alla porta POE e aspettare, dopo pochi secondi l'antenna inizierà ad emettere una sequenza di luci che si riperterà. Adesso l'antenna è in Recovery Mode | |||
*L'antenna adesso risponde all'IP 192.168.1.21 | |||
Pposizionatevi nella cartella che contiene l'immagine e (se la avete scaricata da blacksmith.eigenlab.org) controllate che l'md5sum sia uguale a quello riportato nel file md5sums nella cartella bin con il comando | |||
cat md5sums | grep $(md5sum <nome del file immagine> |cut -d' ' -f1) | |||
L'md5sum è una stringa che identifica inequivocabilmente un file, è ricavata da esso attraverso il calcolo dell' hash. | |||
Se il comando da come output per esempio | |||
blacksmith@efesto bin/ar71xx $ cat md5sums | grep $(md5sum openwrt-ar71xx-generic-ubnt-nano-m-squashfs-sysupgrade.bin|cut -d' ' -f1) | |||
d87a2d913951baed3709022d5575242a *openwrt-ar71xx-generic-ubnt-nano-m-squashfs-sysupgrade.bin | |||
Allora il file è corretto e potete procedere altrimenti riscaricatelo. | |||
In un terminale digitate: | |||
tftp 192.168.1.21 | |||
verbose | |||
binary | |||
put <nome dell' immagine> | |||
Attendere che l'antenna si riavvii 3-4 volte. | |||
Quando l'antenna smetterà di riavviarsi e i led non cambieranno in continuazione avrete finito. | |||
Per avere l'ipv6 locale e poter entrare in ssh nella vostra antenna digitate: | |||
ping6 ff02::1%<nome dell'interfaccia di rete> | |||
Escludete il vostro ipv6 link locale, se non lo conoscete digitate | |||
ip -6 a s <nome dell'interfaccia di rete> | |||
E guardate quello che comincia con fe80:: | |||
Per esempio | |||
blacksmith@efesto bin/ar71xx $ ip -6 a s eth0 | |||
eth0: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qlen 1000 | |||
inet6 2a00:1508:1:f010::3350/64 scope global | |||
valid_lft forever preferred_lft forever | |||
'''inet6 fe80::49ff:fef8:2148/64 scope link''' | |||
Quello scritto in grassetto è il vostro ipv6 locale. | |||
Per sicurezza controllate che il MAC address dell'antenna e l'ipv6 dell'antenna abbiamo alcune ultime cifre in comune. | |||
Segnate da una parte l'ipv6 dell'antenna. | |||
==== Metodo SSH ==== |
Versione delle 10:34, 3 feb 2014
EigenNet e' un firmware per reti comunitarie basato su OpenWrt, per soddisfare le esigenze di tante comunita' viene sviluppato in diversi branch di cui i principali sono:
* master - ramo di sviluppo instabile, attualmente usa batman-adv per la costruzione della rete mesh a layer 2.
* pisa - branch adatto alle esigenze della comunita' di Pisa, e' basato su commit stabili di master.
* roma - ramo sviluppato da arkanet per la comunita' di Roma basato su master ma usa OLSRd per il routing a layer 3.
Compilare il firmware
Il codice è disponibile su gitorious.org, un sito di hosting per progetti opensource. Per ottenerlo si deve usare git.
WARNING: Questa guida è stata testata solo su antenne Ubiquiti e con sistemi operativi Linux. I comandi usati vengono digitati in un emulatore di terminale,tipicamente si trova in Menu->Accessori->Terminale
Ottenere il codice
Scegliere la release di OpenWrt da usare, raccomandiamo di usare Attitude Adjustement (12,04).
Vengono descritti i passi anche per antenne che usano driver madwifi anche se si tratta di antenne abbastanza vecchie e le antenne acquistate recentemente (circa dopo il 2012) avranno quasi di sicuro una scheda wireless che usa ath9k.
- Scaricare il sorgente di OpenWrt seguendo [le istruzioni su questa pagina]
Configurazione
- Aggiungere il feed dei sorgenti di eigenNet ( sostituire "CartellaOpenWRT" e "NomeBranch" con i nomi veri ). Questo serve per avere i pacchetti sviluppati appositamente per la rete.
''Dopo aver digitato git clone.....'' cd CartellaOpenWRT cp feeds.conf.default feeds.conf echo 'src-git zzzeigennet git://gitorious.org/eigennet/packages.git;NomeBranch' >> feeds.conf scripts/feeds update -a scripts/feeds install -a
- Scegliere le proprie impostazioni di compilazione (i pacchetti di eigenNet si trovano sotto il menu' "Administration" )
make menuconfig
Questo comando aprirà un'interfaccia semi-grafica che permette di configurare l'immagine per l'antenna. La selezione è fatta usando lo spazio (nei campi dove possibile (M) indica la compilazione come modulo, ciò comporta che il componente è dinamicamente caricato all'occorrenza mentre (*)Indica che il componente è sempre disponibile.
- Per prima cosa bisogna scegliere l'architettura:
Per farlo bisogna entrare nella prima voce di menu
se non siete sicuri dell'architettura ed avete comprato l'antenna da entro il 2012 potete tranquillamente selezionare
(X) Atheros AR7xxx/AR9xxx
Altrimenti per antenne più anziane selezionate
(X) Atheros AR231x/AR5312
- Nella sezione eigennet si possono scegliere diversi tool, sia grafici che WebUI (interfaccia web) per la gestione della rete, dai test di banda ai puntamenti.
Location: -> Administration --> eigennet
Qui avrete diverse scelte con le relative descrizioni:
<*> eigennet-autoconf.................................... Auto Config Package --- eigennet-bwtest............................... Bandwidth Measurement Tool <*> eigennet-bwtest-webui........... Bandwidth Measurement Tool Web Interface < > eigennet-firewall....................................... Layer 2 Firewall < > eigennet-gw4server.................................. IPv4 Gateway Checker < > eigennet-httpinfo.......................... Export info via HTTP protocol < > eigennet-pointing................................. Antenna Pointing Tools < > eigennet-pointing-webui............. Antenna pointing tools Web Interface <*> eigennet-reghack.............................. Regulatory domain unlocker
Se una voce è segnata con --- vuol dire che è stata selezionata da un'altro pacchetto, in questo caso bwtest-webui necessita di bwtest che viene automaticamente selezionato. Il pacchetto fondamentale è eigennet-autoconf che farà la magia di configurare l'antenna. Il resto è opzionale e dipende dal caso specifico
- Per avere i test di banda si deve abilitare nella sezione
->Base System -->Bysybox --->Networking Utilities ---->nc ----->[*] Netcat server options (-l)
Che serve per avere la flag -l (listen) su netcat
- Per prima cosa bisogna scegliere l'architettura:
Per farlo bisogna entrare nella prima voce di menu
se non siete sicuri dell'architettura ed avete comprato l'antenna da entro il 2012 potete tranquillamente selezionare
-
Per sicurezza controllare che in
Location: -> Kernel modules -> Network Support --- kmod-batman-adv......................................... B.A.T.M.A.N. Adv [ ] enable verbose debug logging [*] enable bridge loop avoidance [*] enable distributed arp table [*] enable network coding [requires promisc mode support] [*] enable batctl
Le voci siano selezionate come da esempio.
- Una volta finito di configurare bisogna uscire premendo il tasto <Esc> fino a risalire tutti i menu ed arrivare al dialogo
Do you wish to save your new OpenWrt configuration?
- Salvare
Compilare
Per compilare il firmware si può passare al comando
make
Anche l'opzione -j <numero di core fisici +1> per parallelizzare la compilazione e velocizzarla.
Flashing
Prendere l'immagine che ci serve dentro la cartella bin
cd CartellaOpenWRT/bin/
- In caso di driver ath9k
cd ar71xx
- In caso di driver madwifi
cd atheros
L'immagine da usare dipende dal modello dell'antenna, tipicamente sarà un'antenna di Ubiquiti, [qui] la tabella delle antenne coi relativi articoli, in ogni articolo è scritta l'immagine da usare. NON usare l'immagine con la dicitura jffs2 a meno che non sappiate cosa state facendo.
Nel caso di primo flashing allora bisognerà usare l'immagine con la dicitura factory altrimenti andrà scelta quella con la dicitura sysupgrade.
A seconda del metodo scelto per il flashing si dovrà procedere in diversi modi:
Metodo WebUI (solo per factory)
Metodo TFTP (Sia factory che sysupgrade)
Per il sysupgrade è meglio usare Flashing#Metodo_SSH Questo metodo consiste nell'inserire nell'antenna messa in una modalità particolare l'immagine del firmware e lasciare che l'antenna si scriva da sola.
Praparazione
- Prendere l'antenna e collegare il POE (il parallelepipedo nero che si attacca alla corrente) alla corrente, collegare il cavo ethernet al computer ed inserirlo nella porta con scritto LAN del POE.
- Inserire il cavo ethernet nell'antenna ma NO==== Metodo WebUI (solo per factory) ====N nel POE
- Accanto alla porta ethernet sull'antenna c'è un piccolo foro con un pulsantino non visibile dall'esterno, con l'aiuto di una graffetta premere il pulsantino.
- Tenendo premuto il pulsantino connettere il cavo ethernet dell'antenna alla porta POE e aspettare, dopo pochi secondi l'antenna inizierà ad emettere una sequenza di luci che si riperterà. Adesso l'antenna è in Recovery Mode
- L'antenna adesso risponde all'IP 192.168.1.21
Pposizionatevi nella cartella che contiene l'immagine e (se la avete scaricata da blacksmith.eigenlab.org) controllate che l'md5sum sia uguale a quello riportato nel file md5sums nella cartella bin con il comando
cat md5sums | grep $(md5sum <nome del file immagine> |cut -d' ' -f1)
L'md5sum è una stringa che identifica inequivocabilmente un file, è ricavata da esso attraverso il calcolo dell' hash. Se il comando da come output per esempio
blacksmith@efesto bin/ar71xx $ cat md5sums | grep $(md5sum openwrt-ar71xx-generic-ubnt-nano-m-squashfs-sysupgrade.bin|cut -d' ' -f1) d87a2d913951baed3709022d5575242a *openwrt-ar71xx-generic-ubnt-nano-m-squashfs-sysupgrade.bin
Allora il file è corretto e potete procedere altrimenti riscaricatelo. In un terminale digitate:
tftp 192.168.1.21 verbose binary put <nome dell' immagine>
Attendere che l'antenna si riavvii 3-4 volte. Quando l'antenna smetterà di riavviarsi e i led non cambieranno in continuazione avrete finito.
Per avere l'ipv6 locale e poter entrare in ssh nella vostra antenna digitate:
ping6 ff02::1%<nome dell'interfaccia di rete>
Escludete il vostro ipv6 link locale, se non lo conoscete digitate
ip -6 a s <nome dell'interfaccia di rete>
E guardate quello che comincia con fe80::
Per esempio
blacksmith@efesto bin/ar71xx $ ip -6 a s eth0 eth0: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qlen 1000 inet6 2a00:1508:1:f010::3350/64 scope global valid_lft forever preferred_lft forever inet6 fe80::49ff:fef8:2148/64 scope link
Quello scritto in grassetto è il vostro ipv6 locale.
Per sicurezza controllate che il MAC address dell'antenna e l'ipv6 dell'antenna abbiamo alcune ultime cifre in comune. Segnate da una parte l'ipv6 dell'antenna.