Italiano English
Modifica History Actions

Differenze per "Libre-Mesh"

Differenze tra le versioni 10 e 38 (in 28 versioni)
Versione 10 del 2014-08-14 15:12:15
Dimensione: 7275
Autore: ilario
Commento:
Versione 38 del 2015-04-18 18:17:07
Dimensione: 15264
Autore: dynamic-adsl-94-37-182-191
Commento:
Le cancellazioni sono segnalate in questo modo. Le aggiunte sono segnalate in questo modo.
Linea 1: Linea 1:
Il [[http://libre-mesh.org/projects/libre-mesh|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, [[http://libre-mesh.org|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:

 *NinuxVerona

 *[[ http://wiki.bologna.ninux.org | NinuxBO ]]

== Devices supportati ==
I devices supportati sono quelli elencati in [[ https://github.com/libre-mesh/lime-build/blob/master/targets.mk | questo ]] file.

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 ]].

== 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:
||<style="padding-right: 50px; width: 50%; border: none; vertical-align: bottom;"> Il [[http://libre-mesh.org/projects/libre-mesh|firmware Libre-Mesh]] è il nuovo sistema operativo per router pensato per le community wireless nato dagli sforzi congiunti di italiani, spagnoli ed argentini riuniti sotto il nome di, appunto, [[http://libre-mesh.org|Libre-Mesh]]. Precisamente il firmware Libre-Mesh è un insieme di moduli da aggiungere a [[ http://openwrt.org/ | OpenWrt ]] per gestire il routing dinamico e altre funzioni necessarie per gestire una rete wireless mesh. <<BR>> <<BR>> Libre-Mesh viene attualmente utilizzato in Ninux da: <<BR>> - [[ http://verona.ninux.org/ | NinuxVerona ]] <<BR>> - [[ http://wiki.bologna.ninux.org | NinuxBO ]]|| <<TableOfContents()>> ||




== Scaricare il firmware già pronto ==

Il firmware libre-mesh può essere scaricato dai repository delle singole isole Ninux che usino Libre-Mesh.

== Prodursi una immagine di Libre-Mesh ==

Come tutti i software open source è possibile creare il proprio file compilato partendo dal codice sorgente.

=== Devices supportati da Libre-Mesh ===

Libre-Mesh supporta tutti i router che siano [[ http://wiki.openwrt.org/toh/start | supportati da OpenWrt ]], potrebbe essere instabile su router particolarmente scarsi.

=== Compilare ===

Compilare vuol dire creare il proprio file di installazione di Libre-Mesh partendo dal codice sorgente scritto dai suoi sviluppatori e reperibile pubblicamente.

==== Prerequisiti ====

Procuratevi un computer con GNU/linux [[http://www.gnu.org/gnu/linux-and-gnu.html]] anzichè ricorrere alle distribuzioni piene di software NON libero [[http://www.gnu.org/distros/common-distros.html]] consigliamo di far uso di distribuzioni 100% Software Libero [[http://www.gnu.org/distros/free-distros.html]] avrete così il pieno controllo della Vostra distribuzione e del Vostro hardware, senza che nel kernel si trovino blobs. Comunque una distribuzione 100% Software Libero è inferiore a 5GB di hdd, installate le dipendenze necessarie alla compilazione, ad esempio su GNU/linux gNewSense [[http://gnewsense.org]] potrete installarle selezionandole dall'apposito software grafico oppure dal terminale:

{{{
# apt-get install git build-essential libncurses5-dev zlib1g-dev gawk subversion
}}}

Se avete altre distro Linux e non trovate i nomi corretti dei pacchetti da installare, provate a compilare lo stesso, se incontrate errori tornate a questo punto e date un'occhiata a [[ http://wiki.openwrt.org/doc/howto/buildroot.exigence#examples_of_package_installations | queste liste ]] di pacchetti utili.

==== Ottenere il codice sorgente di OpenWrt ====

Aprite un terminale e scaricate il sorgente della ultima release stabile di OpenWrt, ossia la 14.07 anche nota come Barrier Breaker:

{{{
git clone git://git.openwrt.org/14.07/openwrt.git
}}}

==== Aggiungere i sorgenti di Libre-Mesh ====

Sempre da terminale entrate nella cartella appena scaricata, copiate il file esempio con le fonti supplementari di sorgenti ed aggiungete gli indirizzi dei sorgenti di Libre-Mesh.

{{{
cd openwrt
cp feeds.conf.default feeds.conf
echo "src-git libremap git://github.com/libremap/libremap-agent-openwrt.git" >> feeds.conf
echo "src-git lime https://github.com/libre-mesh/lime-packages.git" >> feeds.conf
}}}

Se volete testare un branch particolare di lime-packages, ad esempio il branch "release/14.08", aggiungete ";release/14.08", ossia, invece della riga precedente, potete fare così:

{{{
echo "src-git lime https://github.com/libre-mesh/lime-packages.git;release/14.08" >> feeds.conf
}}}

Dunque fate scaricare e mettere nel giusto posto i sorgenti appena indicati:

{{{
scripts/feeds update -a
scripts/feeds install -a
}}}

==== Selezionare i moduli di Libre-Mesh ====

Aprite il menù di selezione dei software da compilare e da inserire nell'immagine.

{{{
make menuconfig
}}}

Entra nella voce "Base system" e deseleziona la voce "dnsmasq" e la voce "firewall" premendo il bottone spazio, esci premendo Esc per due volte e entra nella sezione "Network", dunque deseleziona "odhcpd" (da non confondere con "odhcp6c" che si può lasciare), esci premendo Esc per due volte ed entra nella sezione "LiMe".

Nel menù "LiMe" seleziona quel che ti serve, l'esempio di un Libre-Mesh che fa routing solo a layer2 può essere "lime-system, lime-proto-batadv, lime-debug".

Se si vuole limitare le immagini che verranno prodotte a solo quelle che servono, si può selezionare il proprio router nei menù "Target system" e "Target profile", altrimenti basta lasciare i target di default e tutte le immagini (almeno quelle per ar71xx) verranno prodotte.

Salvare la configurazione premendo Esc fino a vedere una richiesta di "esci salvando?" salva ed esci.

==== Configurare pre-compilazione (opzionale) ====

Alcune configurazioni possono essere inserite già nell'immagine, questo è comodo nel caso si dovesse mettere questa immagine su molti router e non si volesse configurarli poi uno ad uno dopo l'installazione.

Modificare, con il proprio editor di testo preferito, il file in

{{{
mkdir -p files/etc/config/
cp feeds/lime/packages/lime-system/files/etc/config/lime files/etc/config/lime
$EDITOR files/etc/config/lime
}}}

Le righe che iniziano con cancelletto non hanno effetto.

Ad esempio, se volessi preimpostare i prefissi di IP, il canale wireless e il nome della rete, il contenuto potrebbe essere:

{{{
config lime network
 option main_ipv4_address '198.51.100.0/24' # lasciare a zero l'ultimo campo, così si autocompleta
 option main_ipv6_address '2001:db8:900d:c0de::/64'

config lime wifi
 option channel_2ghz '3'
 option ap_ssid 'ninux.org'
}}}

==== Lanciare la compilazione ====

Per iniziare il processo vero e proprio di compilazione dare il comando "make" oppure, se si vuole sfrutare tutti i core del proprio processore:

{{{
make -j numerodeicore
}}}

==== Recuperare il file prodotto ====

I file compilati si trovano nella cartella

{{{
cartelladiopenwrt/bin/ar71xx/...
}}}

e solitamente hanno dei nomi indicativi per l'hardware a cui sono adatti.

Il prossimo passo è installare, anche detto flashare, l'immagine adatta sul proprio router, come far questo viene accennato più avanti nella sezione "Flashing".

== Alternativa: prodursi una immagine usando lime-build (deprecato) ==

=== Devices supportati da lime-build ===

I devices supportati sono quelli elencati in [[ https://github.com/libre-mesh/lime-build/blob/master/targets.mk | questo ]] file.

Attenzione, alcuni devices non sono citati esplicitamente ma sono equivalenti ad alcuni elencati, ad esempio una Ubiquiti PicoStation M2 è (secondo il wiki di OpenWrt) equivalente ad una Ubiquiti Bullet dunque è supportata. Se il vostro router non sembra supportato 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 ]] ed aggiungere il supporto è molto semplice.

=== Compilare con lime-build (deprecato) ===
Linea 23: Linea 137:
{{{
{{{
http://wiki.openwrt.org/doc/howto/buildroot.exigence#examples_of_package_installations
Linea 28: Linea 144:
Linea 32: Linea 149:
Controllate la lista dei router supportati da lime-build e trovate il vostro modello: Controllate la lista dei router supportati da lime-build e trovate il vostro modello (o uno equivalente):
Linea 38: Linea 156:
Linea 43: Linea 162:
Linea 53: Linea 173:
=== 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] ]]
Linea 58: Linea 174:
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 terminale ==

Per installare il firmware, come prima cosa è consigliato provar a utilizzare l'interfaccia web del firmware propinandogli, come fosse un aggiornamento, 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 ==

=== Da interfaccia web ===

-- guida da scri
vere --


=== Da terminale ===
Linea 62: Linea 189:
Linea 67: Linea 195:
Linea 82: Linea 211:
Linea 87: Linea 217:
Linea 91: Linea 222:
dunque si esce con
{{{
exit
dunque si riavvia con

{{{
reboot && exit
Linea 97: Linea 229:
Linea 104: Linea 237:
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.
=== Da interfaccia web ===
-- guida da scrivere --


=== Da terminale ===
La configurazione da utilizzare può essere leggermente differente tra le diverse isole, la configurazione di default va bene per il testing.

Date un'occhiata al contenuto del file "/etc/config/lime-defaults", queste sono le configurazioni che vengono applicate sempre, questo file non va modificato:

{{{
cat /etc/config/lime-defaults
}}}

se qualcuna delle impostazioni in questo files non vi piacesse potete inserirla modificata nel file "/etc/config/lime", ad esempio perché il nome della rete wireless access point sia "ninux.org" e il canale wireless sui 2.4GHz sia il numero 3, nel file "lime" andrà inserito:

{{{
config lime wifi
 option channel_2ghz '3'
 option ap_ssid 'ninux.org'
}}}

oppure per impostare gli ip

{{{
config lime network
 option main_ipv4_address '10.10.10.11/21'
 option main_ipv6_address '2a00:1:1:1::11/64'
}}}

e questa impostazione avrà la priorità rispetto a quella corrispondente contenuta in "lime-defaults".

Dunque per modificare il file di configurazione "/etc/config/lime" si usa solitamente l'editor di testo vim:

{{{
vim /etc/config/lime
}}}

entrare nella modalità modifica premendo "i", modificare il file e salvare premendo in successione il tasto "Esc" (per uscire dalla modalità di modifica) e dunque i tasti ":wq".

Far leggere il contenuto del file "lime":

{{{
lime-config
}}}

Infine applicare le modifiche pendenti nei file di configurazione di OpenWrt:

{{{
uci commit
}}}

E riavviare l'apparato:

{{{
reboot && exit
}}}

== Aggiornamento ==
=== Da interfaccia web ===
-- guida da scrivere --

=== Da terminale ===

Per aggiornare Libre-Mesh su un device l'immagine contenente nel nome "sysupgrade" va copiata tramite scp o rsync usando ad esempio l'IPv6 Link Local del router da aggiornare.
Linea 124: Linea 307:
Linea 129: Linea 313:
Linea 135: Linea 320:
Linea 140: Linea 326:
Linea 144: Linea 331:
== Testing ==

Potete controllare che due nodi siano connessi controllando le tabelle di routing dei protocolli utilizzati, ossia [[ http://www.open-mesh.org/projects/batman-adv/wiki/Wiki | BATMAN-advanced ]] e [[ http://bmx6.net | BMX6 ]]:

{{{
batctl o
bmx6 -c show=originators
}}}
Linea 145: Linea 341:
Linea 152: Linea 349:

== 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] ]]

Il firmware Libre-Mesh è il nuovo sistema operativo per router pensato per le community wireless nato 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 wireless mesh.

Libre-Mesh viene attualmente utilizzato in Ninux da:
- NinuxVerona
- NinuxBO

Scaricare il firmware già pronto

Il firmware libre-mesh può essere scaricato dai repository delle singole isole Ninux che usino Libre-Mesh.

Prodursi una immagine di Libre-Mesh

Come tutti i software open source è possibile creare il proprio file compilato partendo dal codice sorgente.

Devices supportati da Libre-Mesh

Libre-Mesh supporta tutti i router che siano supportati da OpenWrt, potrebbe essere instabile su router particolarmente scarsi.

Compilare

Compilare vuol dire creare il proprio file di installazione di Libre-Mesh partendo dal codice sorgente scritto dai suoi sviluppatori e reperibile pubblicamente.

Prerequisiti

Procuratevi un computer con GNU/linux http://www.gnu.org/gnu/linux-and-gnu.html anzichè ricorrere alle distribuzioni piene di software NON libero http://www.gnu.org/distros/common-distros.html consigliamo di far uso di distribuzioni 100% Software Libero http://www.gnu.org/distros/free-distros.html avrete così il pieno controllo della Vostra distribuzione e del Vostro hardware, senza che nel kernel si trovino blobs. Comunque una distribuzione 100% Software Libero è inferiore a 5GB di hdd, installate le dipendenze necessarie alla compilazione, ad esempio su GNU/linux gNewSense http://gnewsense.org potrete installarle selezionandole dall'apposito software grafico oppure dal terminale:

# apt-get install git build-essential libncurses5-dev zlib1g-dev gawk subversion

Se avete altre distro Linux e non trovate i nomi corretti dei pacchetti da installare, provate a compilare lo stesso, se incontrate errori tornate a questo punto e date un'occhiata a queste liste di pacchetti utili.

Ottenere il codice sorgente di OpenWrt

Aprite un terminale e scaricate il sorgente della ultima release stabile di OpenWrt, ossia la 14.07 anche nota come Barrier Breaker:

git clone git://git.openwrt.org/14.07/openwrt.git

Aggiungere i sorgenti di Libre-Mesh

Sempre da terminale entrate nella cartella appena scaricata, copiate il file esempio con le fonti supplementari di sorgenti ed aggiungete gli indirizzi dei sorgenti di Libre-Mesh.

cd openwrt
cp feeds.conf.default feeds.conf
echo "src-git libremap git://github.com/libremap/libremap-agent-openwrt.git" >> feeds.conf
echo "src-git lime https://github.com/libre-mesh/lime-packages.git" >> feeds.conf

Se volete testare un branch particolare di lime-packages, ad esempio il branch "release/14.08", aggiungete ";release/14.08", ossia, invece della riga precedente, potete fare così:

echo "src-git lime https://github.com/libre-mesh/lime-packages.git;release/14.08" >> feeds.conf

Dunque fate scaricare e mettere nel giusto posto i sorgenti appena indicati:

scripts/feeds update -a
scripts/feeds install -a

Selezionare i moduli di Libre-Mesh

Aprite il menù di selezione dei software da compilare e da inserire nell'immagine.

make menuconfig

Entra nella voce "Base system" e deseleziona la voce "dnsmasq" e la voce "firewall" premendo il bottone spazio, esci premendo Esc per due volte e entra nella sezione "Network", dunque deseleziona "odhcpd" (da non confondere con "odhcp6c" che si può lasciare), esci premendo Esc per due volte ed entra nella sezione "LiMe".

Nel menù "LiMe" seleziona quel che ti serve, l'esempio di un Libre-Mesh che fa routing solo a layer2 può essere "lime-system, lime-proto-batadv, lime-debug".

Se si vuole limitare le immagini che verranno prodotte a solo quelle che servono, si può selezionare il proprio router nei menù "Target system" e "Target profile", altrimenti basta lasciare i target di default e tutte le immagini (almeno quelle per ar71xx) verranno prodotte.

Salvare la configurazione premendo Esc fino a vedere una richiesta di "esci salvando?" salva ed esci.

Configurare pre-compilazione (opzionale)

Alcune configurazioni possono essere inserite già nell'immagine, questo è comodo nel caso si dovesse mettere questa immagine su molti router e non si volesse configurarli poi uno ad uno dopo l'installazione.

Modificare, con il proprio editor di testo preferito, il file in

mkdir -p files/etc/config/
cp feeds/lime/packages/lime-system/files/etc/config/lime files/etc/config/lime
$EDITOR files/etc/config/lime

Le righe che iniziano con cancelletto non hanno effetto.

Ad esempio, se volessi preimpostare i prefissi di IP, il canale wireless e il nome della rete, il contenuto potrebbe essere:

config lime network
        option main_ipv4_address '198.51.100.0/24' # lasciare a zero l'ultimo campo, così si autocompleta
        option main_ipv6_address '2001:db8:900d:c0de::/64'

config lime wifi
        option channel_2ghz '3'
        option ap_ssid 'ninux.org'

Lanciare la compilazione

Per iniziare il processo vero e proprio di compilazione dare il comando "make" oppure, se si vuole sfrutare tutti i core del proprio processore:

make -j numerodeicore

Recuperare il file prodotto

I file compilati si trovano nella cartella

cartelladiopenwrt/bin/ar71xx/...

e solitamente hanno dei nomi indicativi per l'hardware a cui sono adatti.

Il prossimo passo è installare, anche detto flashare, l'immagine adatta sul proprio router, come far questo viene accennato più avanti nella sezione "Flashing".

Alternativa: prodursi una immagine usando lime-build (deprecato)

Devices supportati da lime-build

I devices supportati sono quelli elencati in questo file.

Attenzione, alcuni devices non sono citati esplicitamente ma sono equivalenti ad alcuni elencati, ad esempio una Ubiquiti PicoStation M2 è (secondo il wiki di OpenWrt) equivalente ad una Ubiquiti Bullet dunque è supportata. Se il vostro router non sembra supportato chiedete nella mailing list degli sviluppatori di Libre-Mesh che qualcuno aggiunga il supporto. Teoricamente sono supportabili tutti i devices supportati da OpenWrt ed aggiungere il supporto è molto semplice.

Compilare con lime-build (deprecato)

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:

http://wiki.openwrt.org/doc/howto/buildroot.exigence#examples_of_package_installations
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 (o uno equivalente):

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.

Flashing

Per installare il firmware, come prima cosa è consigliato provar a utilizzare l'interfaccia web del firmware propinandogli, come fosse un aggiornamento, 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

Da interfaccia web

-- guida da scrivere --

Da 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 riavvia con

reboot && exit

e ci si connette utilizzando ssh:

ssh root@fe80::de9f:dbff:fe31:c136%eth0

dunque si può proseguire con la configurazione.

Configurazione

Da interfaccia web

-- guida da scrivere --

Da terminale

La configurazione da utilizzare può essere leggermente differente tra le diverse isole, la configurazione di default va bene per il testing.

Date un'occhiata al contenuto del file "/etc/config/lime-defaults", queste sono le configurazioni che vengono applicate sempre, questo file non va modificato:

cat /etc/config/lime-defaults

se qualcuna delle impostazioni in questo files non vi piacesse potete inserirla modificata nel file "/etc/config/lime", ad esempio perché il nome della rete wireless access point sia "ninux.org" e il canale wireless sui 2.4GHz sia il numero 3, nel file "lime" andrà inserito:

config lime wifi
        option channel_2ghz '3'
        option ap_ssid 'ninux.org'

oppure per impostare gli ip

config lime network
        option main_ipv4_address '10.10.10.11/21'
        option main_ipv6_address '2a00:1:1:1::11/64'

e questa impostazione avrà la priorità rispetto a quella corrispondente contenuta in "lime-defaults".

Dunque per modificare il file di configurazione "/etc/config/lime" si usa solitamente l'editor di testo vim:

vim /etc/config/lime

entrare nella modalità modifica premendo "i", modificare il file e salvare premendo in successione il tasto "Esc" (per uscire dalla modalità di modifica) e dunque i tasti ":wq".

Far leggere il contenuto del file "lime":

lime-config

Infine applicare le modifiche pendenti nei file di configurazione di OpenWrt:

uci commit

E riavviare l'apparato:

reboot && exit

Aggiornamento

Da interfaccia web

-- guida da scrivere --

Da terminale

Per aggiornare Libre-Mesh su un device l'immagine contenente nel nome "sysupgrade" va copiata tramite scp o rsync usando ad esempio l'IPv6 Link Local del router da aggiornare.

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

Testing

Potete controllare che due nodi siano connessi controllando le tabelle di routing dei protocolli utilizzati, ossia BATMAN-advanced e BMX6:

batctl o
bmx6 -c show=originators

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.

Altre guide