= NNXX (Ninux Experimental) =

'''NNXX''' è un iniziativa che mira a sperimentare nuove soluzioni in ninux.

Il desiderio di questa sperimentazione è quello di trovare un setup che faciliti la crescita di nuove isole ninux, che sia ben documentato, facilmente replicabile, che enfatizzi l'automazione di task ripetitivi.

La sperimentazione è cominciata a Febbraio 2016.

Siamo disponibilissimi ad allargare la sperimentazione con chiunque abbia voglia di imparare e impegnarsi.

Link generali:

 * [[https://telegram.me/ninux_experimental|Canale telegram]] per supporto realtime
 * [[https://trello.com/b/YTyT16e9/nnxx-ninux-experimental|Trello board NNXX]] per pianificare e tracciare l'avanzamento
 * [[http://ml.ninux.org/mailman/listinfo/ninux-dev|Mailing list ninux-dev]] per supporto non realtime
 * [[https://github.com/ninuxorg/ansible-nnxx|configurazioni ansible]]

== Obiettivi Generali ==

La sperimentazione ha i seguenti obiettivi:

 * facilitare la crescita di nuove isole ninux
 * consentire ai nuovi nodi creati ma ancora fisicamente disconnessi dal resto di Ninux di entrare nella rete attraverso una VPN ('''overlay network''')
   * la connessione VPN non deve necessitare di modifiche sul server per aggiungere nuovi nodi
 * facilitare la configurazione e l'aggiornamento delle configurazioni di nuovi nodi
 * mantenere le configurazioni dei servizi essenziali su ansible, evitando modifiche manuali non replicabili e non tracciabili
 * uso del protocollo Babel tramite bird2, configurazione client/server implementata da Francesco Bonanno
 * documentare tutto il processo per distribuire la conoscenza

== Macro-obiettivi pratici su cui stiamo lavorando ==

 * --(creare un modo per aiutare a entrare nuovi nodi facilmente)-- FATTO
 * aiutare a creare nuove isole ninux da zero con gli strumenti sviluppati nell'ambito NNXX in poco tempo - IN CORSO
 * fare in modo che ogni isola creata sia collegata alle altre isole con un automatismo o semi-automatismo - DA FARE
 * automatizzare l'allocazione degli indirizzi ip per i nuovi nodi - DA FARE

[[https://trello.com/b/YTyT16e9/nnxx-ninux-experimental|Consulta la lista completa dei task]].

=== Entrare in rete ===

Per entrare in rete basta seguire la [[nnxx/firmware|guida di installazione del firmware]].

=== OpenWISP2 ===

Al momento stiamo tenendo tutte le configurazioni su una VM di Michele Salerno di Ninux Basilicata.


'''Link utili:'''

 * [[https://github.com/ninuxorg/ansible-nnxx|Configurazioni del firmware nnxx]]
 * [[https://controller.nnxx.ninux.org/admin|instanza openwisp2]]
 * [[https://gitlab.ninux.org/ninux/nnxx/ansible-ninux-openwisp|Playbook Ansible OpenWISP2]] (repository privato)
 * Gestore configurazioni: [[https://github.com/openwisp/django-netjsonconfig|django-netjsonconfig]]
 * [[https://groups.google.com/d/forum/openwisp|Mailing List del progetto OpenWISP]]
 * [[http://nemesisdesign.net/blog/coding/how-to-install-openwisp/|How to install OpenWISP]]