FirmwareNG

New generation Ninux Firmware

Wishlist

Ecco cosa vorremmo dal nuovo firmware di Ninux! Se avete delle richieste per alcune caratteristiche che vorreste veder sviluppate nel nuovo firmware, parlatene a riunione o in mailing list.
I ticket aperti per i progetti attuali sono visibili sul nostro track.

obiettivo

stato

descrizione

Autoconfigurazione IP

Ogni apparato deve autoconfigurarsi i settaggi relativi alla configurazione di rete

Autoconfigurazione canali

Ogni apparato deve autoconfigurare il canale radio in modo da comunicare con gli altri apparati della mesh

Splash Page

Gli utenti collegati alla rete ninux devono visualizzare una pagina iniziale (splash page) che li informi su chi siamo e perchè facciamo una cosa del genere.

Aggiornamento automatico del Firmware

Pensare ad un meccanismo per aggiornare in maniera automatica i firmware dei vari apparati.

Autoconfigurazione IP

Creare un plugin per OLSR che si occupi di autoconfigurare gli indirizzi IPv4 dei nodi attraverso meccanismi di Duplicate Address Detection (vedi sotto).
La filosofia progettuale prevede la coesistenza tra nodi e interfacce configurate automaticamente e altre configurate manualmente.


Parametri del Plugin

PlParam "interval" "3.4"
PlParam "unique_addr" ""
PlParam "mode" "auto"
PlParam "exclude-if" "ath1"
PlParam "dnsmasq-autoconf" "ath1"
PlParam "saved-conf" "ath1:172.17.2.56;ath2:172.17.6.98"

Duplicate Address Detection

In draft-laouiti-manet-olsr-address-autoconf-01 è presentato un sistema di DaD semplice ma attivo che utilizza dei nuovi messaggi OLSR (MAD). Un DaD passivo invece è descritto in
Per quale motivo utilizzare i MAD e non guardare semplicamente gli HELLO/TC/MID:

Per ulteriori argomentazioni, consultare documenti su olsr ,vedere NOA OLSR draft-laouiti-manet-olsr-address-autoconf-01 e draft-weniger-autoconf-pdad-olsr-01

Autoconfigurazione canali

L'idea più semplice è di fare una scansione alla ricerca di una rete con un dato essid. Se non è presente, allora l'AP va su un canale predefinito (ad es. il 6). Tempo permettendo, potremmo pensare a dei meccanismi più simpatici per la scelta del canale migliore.

Splash Page

Realizzare una splash page in Luci/Lua ed integrarla con un sistema di chat.
E' gia' stato portato il server jabber Prosody su OpenWRT, mentre siamo a buon punto con lo sviluppo del pacchetto della splash page che si chiama "nowolfsplash".
Ecco come installare il tutto, ovvero i comandi da dare sull'access point.
Installare Prosody (il server jabber)

cd /tmp
wget http://test.ninux.org/~orazio/bin/packages/mips/prosody_0.4.0-1_mips.ipk
wget http://test.ninux.org/~orazio/bin/packages/mips/libidn_1.12-1_mips.ipk
wget http://test.ninux.org/~orazio/bin/packages/mips/luaexpat_1.1-1_mips.ipk
wget http://test.ninux.org/~orazio/bin/packages/mips/luasocket_2.0.2-2_mips.ipk
wget http://test.ninux.org/~orazio/bin/packages/mips/luasec_0.3-1_mips.ipk
wget http://test.ninux.org/~orazio/bin/packages/mips/libexpat_1.95.8-1_mips.ipk
wget http://test.ninux.org/~orazio/bin/packages/mips/libopenssl_0.9.8i-3_mips.ipk
wget http://test.ninux.org/~orazio/bin/packages/mips/zlib_1.2.3-5_mips.ipk
wget http://test.ninux.org/~orazio/bin/packages/mips/liblua_5.1.4-2_mips.ipk
ipkg install zlib_1.2.3-5_mips.ipk liblua_5.1.4-2_mips.ipk libidn_1.12-1_mips.ipk libopenssl_0.9.8i-3_mips.ipk libexpat_1.95.8-1_mips.ipk luaexpat_1.1-1_mips.ipk luasocket_2.0.2-2_mips.ipk luasec_0.3-1_mips.ipk prosody_0.4.0-1_mips.ipk


Installare NoWolfSplash (il captive portal)

cd /tmp
wget http://test.ninux.org/~orazio/bin/packages/mips/nowolfsplash_0.1-1_mips.ipk
wget http://test.ninux.org/~orazio/bin/packages/mips/at_3.1.10ubuntu4-2_mips.ipk
wget http://test.ninux.org/~orazio/bin/packages/mips/libelf_0.8.10-1_mips.ipk
opkg install libelf_0.8.10-1_mips.ipk at_3.1.10ubuntu4-2_mips.ipk nowolfsplash_0.1-1_mips.ipk


Configurare NoWolfSplash

config 'httpd'
        option 'port' '8080'
        option 'home' '/www'

e

httpserver.new{ port = 80, base = "files", handler = handle_request, ssl = false}

http://IP_ROUTER/files/luci-static/muckl/index.html

Altre configurazioni "standard" del router:

Installare Muckl (la chat javascript)

return {
        ["password"] = "muckl",
}


Spiegazione Dopo tutti questi passaggi :-) ciò che otteniamo è questo:

Aggiornamento automatico del Firmware

Meccanismi per la gestione degli apparati: flashing di un firmware da remoto "fonera style".

l'ultima modifica è del 2009-06-10 12:04:41, fatta da LuX