850
Commento: aggiunto link compilazione
|
7348
|
Le cancellazioni sono segnalate in questo modo. | Le aggiunte sono segnalate in questo modo. |
Linea 5: | Linea 5: |
* NinuxVerona | *NinuxVerona |
Linea 7: | Linea 7: |
* NinuxBO | *[[ http://wiki.bologna.ninux.org | NinuxBO ]] |
Linea 9: | Linea 9: |
Come tutti i firmware open source è possibile [[ http://dev.libre-mesh.org/projects/libre-mesh/wiki/Compile_Manually | compilare una immagine di Libre-Mesh ]]. | == Devices supportati == I devices supportati sono quelli elencati in [[ https://github.com/libre-mesh/lime-build/blob/master/targets.mk | questo ]] file. |
Linea 11: | Linea 12: |
La configurazione è semplificata - link a pagina con descrizione del file /etc/config/lime. | Se non trovate il vostro router nella lista chiedete nella [[ https://lists.libre-mesh.org/mailman/listinfo/dev | mailing list degli sviluppatori di Libre-Mesh ]] che qualcuno aggiunga il supporto. Teoricamente sono supportabili tutti i [[ http://wiki.openwrt.org/toh/start | devices supportati da OpenWrt ]]. |
Linea 13: | Linea 14: |
Le diverse isole consigliano configurazioni leggermente differenti. | == Scaricare il firmware == Il firmware libre-mesh può essere scaricato da [[ http://downloads.libre-mesh.org/ | qui ]]. == Compilare == Come tutti i firmware open source è possibile compilare una immagine di Libre-Mesh. Si consiglia di compilarlo utilizzando lime-build, come illustrato di seguito: Procuratevi un computer con Linux e circa 9 GB di spazio libero su disco. Installate le dipendenze necessarie alla compilazione, ad esempio su Debian potete installarle con: {{{ apt-get install git build-essential libncurses5-dev zlib1g-dev gawk subversion }}} Dunque scaricate lime-build, che successivamente si occuperà di scaricare tutto il resto e di compilarlo: {{{ git clone https://github.com/libre-mesh/lime-build.git }}} Controllate la lista dei router supportati da lime-build e trovate il vostro modello: {{{ make list_targets }}} Compilate l'immagine per il vostro target, indicandolo dopo T=. Indicate anche il numero di processi simultanei di compilazione che volete utilizzare. Ad esempio per compilare una immagine per una Ubiquiti NanoStation M5 utilizzando appieno un processore quad core potete lanciare: {{{ make J=5 T=nsm5 build }}} Per utilizzare un branch differente da quello di default (ad esempio per testare delle feature ancora non completate) si può scegliere il branch desiderato dalla apposita [[ https://github.com/libre-mesh/lime-packages/branches/all | lista dei branch ]] ed impostarlo con: {{{ make LIME_GIT_BRANCH="feature/blablabla" update_all }}} dunque compilare come indicato sopra. Le immagini prodotte si troveranno nella cartella "images". Altre opzioni per l'uso di lime-build possono essere trovate [[ https://github.com/libre-mesh/lime-build/blob/master/README.md | qui ]]. === Altre guide === *[[ http://wiki.bologna.ninux.org/mediawiki/index.php/CompilareDaOpenWrt | Guida Ninux Bologna ]] *[[ http://dev.libre-mesh.org/projects/libre-mesh/wiki/Compile_Manually | Guida ufficiale [EN] ]] == Flashing == Per installare il firmware come prima cosa è consigliato provar a utilizzare l'interfaccia web del firmware originale usando l'immagine di Libre-Mesh adatta a quel router ed indicata come "factory". In caso l'interfaccia web non accetti la nostra immagine è necessario seguire le [[ http://wiki.openwrt.org/doc/howto/generic.flashing | istruzioni generiche descritte sul sito di OpenWrt ]] per l'installazione di OpenWrt o le istruzioni specifiche indicate sulle [[ http://wiki.openwrt.org/toh/start | pagine relative ai singoli router ]]. == Prima connessione via interfaccia web == -- guida da scrivere -- == Prima connessione via terminale == Utilizzando il terminale Linux è comodo connettersi utilizzando l'IPv6 Link Local. Essendo connessi con un cavo ethernet al router lanciare il comando {{{ ping6 ff02::1%eth0 }}} si riceveranno risposte da tutte le interfacce, compresa la propria ed alcune interfacce virtuali sul router. L'IPv6 Link Local che ci interessa si può riconoscere perché contiene alla fine dell'indirizzo il MAC address del router solitamente indicato anche sul router stesso. Ad esempio nel caso il proprio router abbia un mac address dc:9f:db:31:c1:36, vedremo un IPv6 Link Local che lo contiene qui sotto: {{{ $ ping6 ff02::1%eth0 PING ff02::1%eth0(ff02::1) 56 data bytes 64 bytes from fe80::21e:8cff:fe66:1e2c: icmp_seq=1 ttl=64 time=0.023 ms 64 bytes from fe80::de9f:dbff:fe37:28a9: icmp_seq=1 ttl=64 time=0.606 ms (DUP!) 64 bytes from fe80::de9f:dbff:fe31:c136: icmp_seq=1 ttl=64 time=0.607 ms (DUP!) 64 bytes from fe80::a8aa:aaff:feaa:aaaa: icmp_seq=1 ttl=64 time=0.851 ms (DUP!) 64 bytes from fe80::de9f:dbff:feee:8bda: icmp_seq=1 ttl=64 time=1.01 ms (DUP!) 64 bytes from fe80::a8aa:aaff:feaa:aaaa: icmp_seq=1 ttl=64 time=1.08 ms (DUP!) 64 bytes from fe80::216:eaff:fec1:7553: icmp_seq=1 ttl=64 time=11.8 ms (DUP!) }}} ossia l'IPv6 corrispondente al mac address del nostro device è fe80::de9f:dbff:fe31:c136 Appena installato Libre-Mesh non ha una password, dunque ci si connette via telnet per impostarla, utilizzando l'IPv6 Link Local ed indicando l'interfaccia utilizzata per connettersi. {{{ telnet fe80::de9f:dbff:fe31:c136%eth0 }}} e si imposta la password tramite il comando {{{ passwd }}} dunque si esce con {{{ exit }}} e ci si connette utilizzando ssh: {{{ ssh root@fe80::de9f:dbff:fe31:c136%eth0 }}} dunque si può proseguire con la configurazione. == Configurazione == La configurazione è semplificata, leggermente differente tra le diverse isole. Modificare il file di configurazione: {{{ # vim /etc/config/lime }}} Applicare le modifiche e renderle permanenti: {{{ # lime-config # uci commit }}} == Aggiornamento via terminale == Per aggiornare Libre-Mesh su un device l'immagine va copiata tramite scp o rsync. {{{ scp nome_immagine-sysupgrade.bin root@[fe80::de9f:dbff:fe31:c136%eth0]:/tmp }}} Dunque si entra sull'antenna con ssh: {{{ ssh root@fe80::de9f:dbff:fe31:c136%eth0 }}} si verifica che l'immagine si sia copiata correttamente confrontandola con il file md5sum presente nella cartella di compilazione: {{{ cd /tmp md5sum nome_immagine-sysupgrade.bin }}} dunque si aggiorna il firmware installato sovrascrivendolo con l'immagine nuova: {{{ sysupgrade nome_immagine-sysupgrade.bin }}} oppure con -n per cancellare i files di configurazione precedenti: {{{ sysupgrade -n nome_immagine-sysupgrade.bin }}} == Debugging == Essendo Libre-Mesh un firmware ancora sotto intenso sviluppo potrebbe presentare alcuni problemi, gli utenti sono incoraggiati a segnalare i problemi agli sviluppatori in modo che questi possano risolverli. I canali consigliati per la segnalazione e discussione di problemi sono: Mailing list: iscrivetevi alla [[ http://lists.libre-mesh.org/mailman/listinfo/dev | mailing list ]] degli sviluppatori e segnalate il problema preferibilmente in inglese. Chat room: su Freenode abbiamo una chat room #libre-mesh, ci si può accedere tramite un client IRC oppure via web da [[ https://webchat.freenode.net/ | qui ]]. Pagina delle segnalazioni: è necessario registrarsi sul sito di Libre-Mesh dunque segnalare il problema tramite [[ http://libre-mesh.org/projects/libre-mesh/issues/new | questo form ]]. |
Il firmware Libre-Mesh è il nuovo firmware per le community wireless sviluppato dagli sforzi congiunti di italiani, spagnoli ed argentini riuniti sotto il nome di, appunto, Libre-Mesh. Precisamente il firmware Libre-Mesh è un insieme di moduli da aggiungere a OpenWrt per gestire il routing dinamico e altre funzioni necessarie per gestire una rete mesh.
Libre-Mesh viene attualmente utilizzato in Ninux da:
Devices supportati
I devices supportati sono quelli elencati in questo file.
Se non trovate il vostro router nella lista chiedete nella mailing list degli sviluppatori di Libre-Mesh che qualcuno aggiunga il supporto. Teoricamente sono supportabili tutti i devices supportati da OpenWrt.
Scaricare il firmware
Il firmware libre-mesh può essere scaricato da qui.
Compilare
Come tutti i firmware open source è possibile compilare una immagine di Libre-Mesh.
Si consiglia di compilarlo utilizzando lime-build, come illustrato di seguito:
Procuratevi un computer con Linux e circa 9 GB di spazio libero su disco. Installate le dipendenze necessarie alla compilazione, ad esempio su Debian potete installarle con:
apt-get install git build-essential libncurses5-dev zlib1g-dev gawk subversion
Dunque scaricate lime-build, che successivamente si occuperà di scaricare tutto il resto e di compilarlo:
git clone https://github.com/libre-mesh/lime-build.git
Controllate la lista dei router supportati da lime-build e trovate il vostro modello:
make list_targets
Compilate l'immagine per il vostro target, indicandolo dopo T=. Indicate anche il numero di processi simultanei di compilazione che volete utilizzare. Ad esempio per compilare una immagine per una Ubiquiti NanoStation M5 utilizzando appieno un processore quad core potete lanciare:
make J=5 T=nsm5 build
Per utilizzare un branch differente da quello di default (ad esempio per testare delle feature ancora non completate) si può scegliere il branch desiderato dalla apposita lista dei branch ed impostarlo con:
make LIME_GIT_BRANCH="feature/blablabla" update_all
dunque compilare come indicato sopra.
Le immagini prodotte si troveranno nella cartella "images".
Altre opzioni per l'uso di lime-build possono essere trovate qui.
Altre guide
Flashing
Per installare il firmware come prima cosa è consigliato provar a utilizzare l'interfaccia web del firmware originale usando l'immagine di Libre-Mesh adatta a quel router ed indicata come "factory". In caso l'interfaccia web non accetti la nostra immagine è necessario seguire le istruzioni generiche descritte sul sito di OpenWrt per l'installazione di OpenWrt o le istruzioni specifiche indicate sulle pagine relative ai singoli router.
Prima connessione via interfaccia web
-- guida da scrivere --
Prima connessione via terminale
Utilizzando il terminale Linux è comodo connettersi utilizzando l'IPv6 Link Local. Essendo connessi con un cavo ethernet al router lanciare il comando
ping6 ff02::1%eth0
si riceveranno risposte da tutte le interfacce, compresa la propria ed alcune interfacce virtuali sul router. L'IPv6 Link Local che ci interessa si può riconoscere perché contiene alla fine dell'indirizzo il MAC address del router solitamente indicato anche sul router stesso. Ad esempio nel caso il proprio router abbia un mac address dc:9f:db:31:c1:36, vedremo un IPv6 Link Local che lo contiene qui sotto:
$ ping6 ff02::1%eth0 PING ff02::1%eth0(ff02::1) 56 data bytes 64 bytes from fe80::21e:8cff:fe66:1e2c: icmp_seq=1 ttl=64 time=0.023 ms 64 bytes from fe80::de9f:dbff:fe37:28a9: icmp_seq=1 ttl=64 time=0.606 ms (DUP!) 64 bytes from fe80::de9f:dbff:fe31:c136: icmp_seq=1 ttl=64 time=0.607 ms (DUP!) 64 bytes from fe80::a8aa:aaff:feaa:aaaa: icmp_seq=1 ttl=64 time=0.851 ms (DUP!) 64 bytes from fe80::de9f:dbff:feee:8bda: icmp_seq=1 ttl=64 time=1.01 ms (DUP!) 64 bytes from fe80::a8aa:aaff:feaa:aaaa: icmp_seq=1 ttl=64 time=1.08 ms (DUP!) 64 bytes from fe80::216:eaff:fec1:7553: icmp_seq=1 ttl=64 time=11.8 ms (DUP!)
ossia l'IPv6 corrispondente al mac address del nostro device è fe80::de9f:dbff:fe31:c136
Appena installato Libre-Mesh non ha una password, dunque ci si connette via telnet per impostarla, utilizzando l'IPv6 Link Local ed indicando l'interfaccia utilizzata per connettersi.
telnet fe80::de9f:dbff:fe31:c136%eth0
e si imposta la password tramite il comando
passwd
dunque si esce con
exit
e ci si connette utilizzando ssh:
ssh root@fe80::de9f:dbff:fe31:c136%eth0
dunque si può proseguire con la configurazione.
Configurazione
La configurazione è semplificata, leggermente differente tra le diverse isole.
Modificare il file di configurazione:
# vim /etc/config/lime
Applicare le modifiche e renderle permanenti:
# lime-config # uci commit
Aggiornamento via terminale
Per aggiornare Libre-Mesh su un device l'immagine va copiata tramite scp o rsync.
scp nome_immagine-sysupgrade.bin root@[fe80::de9f:dbff:fe31:c136%eth0]:/tmp
Dunque si entra sull'antenna con ssh:
ssh root@fe80::de9f:dbff:fe31:c136%eth0
si verifica che l'immagine si sia copiata correttamente confrontandola con il file md5sum presente nella cartella di compilazione:
cd /tmp md5sum nome_immagine-sysupgrade.bin
dunque si aggiorna il firmware installato sovrascrivendolo con l'immagine nuova:
sysupgrade nome_immagine-sysupgrade.bin
oppure con -n per cancellare i files di configurazione precedenti:
sysupgrade -n nome_immagine-sysupgrade.bin
Debugging
Essendo Libre-Mesh un firmware ancora sotto intenso sviluppo potrebbe presentare alcuni problemi, gli utenti sono incoraggiati a segnalare i problemi agli sviluppatori in modo che questi possano risolverli. I canali consigliati per la segnalazione e discussione di problemi sono:
Mailing list: iscrivetevi alla mailing list degli sviluppatori e segnalate il problema preferibilmente in inglese.
Chat room: su Freenode abbiamo una chat room #libre-mesh, ci si può accedere tramite un client IRC oppure via web da qui.
Pagina delle segnalazioni: è necessario registrarsi sul sito di Libre-Mesh dunque segnalare il problema tramite questo form.