Ninux è una Wireless Community Network (non sai cosa sia? visita la pagina ChiSiamo) e in quanto tale ha tra i suoi obiettivi la costruzione di una rete libera di proprietà dei cittadini. Il modello è semplice: ogni partecipante si connette ai suoi vicini che si connettono a loro volta ai loro vicini e così via, creando una rete di computer. Puoi vedere la lista dei nodi connessi attraverso il nostro Mapserver.
Questa rete è di proprietà dei cittadini perchè ogni partecipante è il proprietario e il responsabile del proprio nodo della rete. Non c’è nessun Internet Service Provider, nessun abbonamento mensile, nessun contratto, nessuna registrazione. Se vuoi, ti connetti e sei in rete.
La rete che creiamo è simmetrica per sua natura, a differenza delle normali ADSL (Asymmetric Digital Subscriber Line) la cui capacità di upload è spesso limitata a 1Mbps.
Cosa ci facciamo con una rete fatta così? Una volta in rete è possibile usufruire e fornire alcuni Servizi come il telefono su Internet (VoIP), lo scambio di contenuti (che non implica la violazione di copyright!) ed anche l’accesso ad Internet condiviso. Anzi. Noi stiamo cercando anche di creare un pezzo di Internet gestito da cittadini, infatti a Roma siamo riusciti ad ottenere un Autonomous System. Più precisamente siamo l’Autonomous System n° 197835.
Le regole per partecipare alla rete Ninux
Per diventare parte della nostra rete comunitaria è necessario conoscere ed accettare poche semplici regole che vengono definite "Accordo Pico Peering".
1. Libero transito:
- Il proprietario acconsente di fornire transito libero e gratuito attraverso la sua rete libera.
- Il proprietario acconsente a non modificare né interferire con i dati mentre questi passano attraverso la sua rete libera.
2. Comunicazione aperta:
- Il proprietario acconsente a pubblicare le informazioni necessarie affinché il collegamento abbia luogo
- Queste informazioni devono essere pubblicate con una licenza libera
- Il proprietario acconsente ad essere contattabile e fornirà almeno un indirizzo di posta elettronica
3. Non c'è un livello di servizio garantito:
- Il servizio è fornito "così com'è", senza garanzia né obblighi di alcun tipo
- Il servizio può essere ridotto o revocato in ogni momento senza preavviso
4. Termini di utilizzo:
- Il proprietario ha il diritto di formulare un 'contratto di uso accettabile'
- Questo eventualmente può contenere informazioni a proposito di servizi addizionali forniti (a parte l'accesso di base)
- Il proprietario è libero di formulare questo contratto fintanto che questo non contraddice i punti da 1 a 3 di questo accordo
Definizione dei termini:
Proprietario: il proprietario del nodo ha il diritto di operare sul suo apparato di rete e di donare qualsiasi frazione della sua funzionalità alla rete libera.
Transito: il transito è lo scambio di dati verso la rete, attraverso di essa o verso l'esterno
Transito libero: transito libero significa che il proprietario non chiederà compensi per il transito di dati né modificherà i dati
Rete libera: la rete libera è la somma di risorse hardware e software interconnesse, il cui transito libero è stato donato dai proprietari di queste risorse
Il servizio: il servizio è composto da transito libero e servizi aggiuntivi
Servizi aggiuntivi: nella terminologia del PPA, un servizio aggiuntivo è qualunque cosa aggiunta al transito libero. Per esempio la fornitura di un server DHCP, un server web o un server di posta elettronica
Cosa ci spinge a fare la rete? Perchè lo facciamo?
Le motivazioni che spingono un gruppo di persone così eterogeneo come il nostro ad unirsi per un unico obiettivo sono molteplici, ma alla base c'è il desiderio di libertà: libertà di espressione, libertà di comunicazione, libertà di sperimentazione, libertà di aggregazione, libertà di capire, conoscere ed imparare.
Se volete approfondire di più sull'idee che ci sono dietro il nostro progetto, sulle motivazioni che ci spingono a portarlo avanti e sui benefici che questo tipo di iniziative portano vi consigliamo di leggere Reti comunitarie: dall'utopia alla realtà.
Come è fatta la nostra rete
Ogni nodo è un discorso a parte e non si può spiegare tutto in questa pagina. Spesso infatti creare un nodo e risolvere eventuali problemi è una questione di esperienza. Per questo motivo vi invitiamo a iscrivervi alla mailing-list wireless e scriverci, sia in caso di problemi, sia semplicemente per presentarvi. La nostra rete è fatta soprattutto da persone (community network) che con passione e dedizione si applicano per far funzionare al meglio l'infrastruttura di telecomunicazione che serve ad interconnetterle.
La maggior parte dei nodi della nostra rete è connessa ai propri vicini tramite collegamenti wireless (802.11a/b/g/n, ma se è possibile è sempre meglio il cavo!). Per farla breve, spesso funziona così: si installa un dispositivo tipo questo qui accanto sul proprio tetto lo si punta verso un altro nodo ninux. Se tutto va bene, riusciremo ad instaurare un collegamento che può arrivare fino a 180Mbps di sincronizzazione (L2), corrispondenti a circa 50Mbps di velocità TCP reale (L4) ed usabile ad esempio per un download o un upload.
Gli ingredienti alla base della nostra rete sono principalmente quattro: hardware, software, protocolli di routing, e le persone.
Scarica qui la Ninux Network Architecture Version 0
Hardware
Esistono diversi tipi di dispositivi wireless, da scegliere caso per caso. Al momento i dispositivi che usiamo di più sono le Ubiquiti Nanostation M5, degli access point a 5 Ghz che offrono un buon rapporto qualità-prezzo (~70€), pensati per il montaggio all’esterno sopportano caldo, freddo e piogge torrenziali. Inoltre garantiscono una discreta banda (fino a 180Mbps teorici, grazie al firmware proprietario ), una distanza massima di circa 10 km e sono abbastanza facili da puntare. L’access point tuttavia non è l’unico hardware da acquistare per fare un nodo stabile. Il supporto a cui è attaccato è fondamentale, per evitare che l'antenna si giri o cada alla prima folata di vento. Guardate questa foto di installazione, in cui abbiamo avuto il bisogno di alzare di 10 metri l’access point per superare dei palazzi.
Il problema è infatti che per fare un buon collegamento a 2.4 o a 5Ghz, è necessario che i due dispositivi “si vedano”, ovvero da un dispositivo deve essere possibile vedere fisicamente l’altro dispositivo (niente palazzi in mezzo, niente alberi, etc.). E’ per questo motivo che montiamo le antenne sui tetti!
Per alimentare i dispositivi sul tetto utilizziamo il Power over ethernet, in modo da far passare un solo cavo sia per i dati che per l’alimentazione. Grazie al PoE passthrough, possiamo inoltre alimentare fino a due apparati con lo stesso cavo ma rimane una scelata azzardata perchè in alcuni casi l'alimentazione può essere non sufficente.
Qualora avessimo bisogno di più apparati quindi, o si portano più cavi sul tetto, oppure portiamo direttamente sul tetto la corrente a 220v. Un nodo con diversi apparati lo chiamiamo supernode, mentre un nodo che monta un solo apparato lo chiamiamo nodo foglia. La costruzione di supernode stabili e affidabili per noi è fondamentale perchè da questi nodi dipenderà il collegamento di altri nodi. I supernode infatti costituiscono la dorsale della rete e sono fondamentali per la "sopravvivenza" di alcune zone della rete. Se sei pronto eccoti la lista della spesa consigliata.
Software
Ogni dispositivo è un “mini-computer” dotato di un’antenna e "incastonato" (embedded) dentro il dispositivo. Proprio come un pc, su ogni dispositivo gira un sistema operativo. A differenza di questi ultimi però, gli embedded hanno tipicamente solo pochi mega di RAM (di solito a 8 a 32 Mb) e ancor meno di capacità di immagazzinamento dati (dai 4 ai 32 Mb tipicamente). I sistemi operativi che girano su questi apparati si chiamano firmware e devono essere quindi fatti "su misura".
Sui nostri nodi installiamo il firmware Ubiquiti AirOS modificato da noi, oppure Openwrt. Il primo, che è comunque basato su OpenWRT, ha il vantaggio di realizzare collegamenti molto stabili performanti grazie ad estensioni proprietarie dei driver, mentre il secondo ha il vantaggio di essere totalmente aperto e non legato soltato agli apparati di un singolo produttore. Tra i programmi che girano su questi apparati, uno di questi è il demone di routing, se non sai cosa sia continua a leggere!
Protocolli di routing
Ogni computer o dispositivo connesso ad internet deve parlare una “lingua” (protocollo) che si chiama IP, Internet Protocol. Il protocollo IP prevede che ogni nodo abbia un indirizzo univoco all’interno della rete, l’indirizzo IP. Ciascun nodo della rete ninux è configurato con un proprio indirizzo ip che abbiamo segnato in questa pagina, allo scopo di evitare che due nodi si prendano lo stesso indirizzo IP (sarebbe un disastro!). Rapportato alla quotidianità l'indirizzo IP può essere paragonato al nome, cognome e indirizzo di una persona. Se un postino (in una rete IP corrisponde al dispositivo montato sul tetto) dovesse ritrovarsi con due vie diverse ma con lo stesso nome (cioè lo stesso IP nel caso di una rete) il postino non saprebbe dove andare per recapitare eventuali lettere ( di fatto anche nel sistema postale viene garantita l'univocita' degli indirizzi per evitare queste situazioni ). Anche il nodo avrebbe quindi lo stesso problema!
Su ogni nodo gira un programma che si chiama demone di routing, responsabile di far conoscere a tutti i nodi gli indirizzi degli altri nodi, di trovare i percorsi più brevi per instradare i dati all'interno della rete e quindi di popolare le tabelle di routing che servono a qualunque dispositivo per sapere su che collegamento fisico inviare i dati.
In questo modo, ogni nodo conosce il percorso che devono fare i suoi dati per parlare con qualunque altro nodo della rete ninux, e con le reti a cui ninux è connessa, tra cui ad esempio Internet.
I demoni di routing parlano un protocollo di routing, che nel nostro caso è OLSR.
La mappa della rete OLSR che abbiamo creato la potete vedere qui ma non vi sarà molto chiara se non conoscete almeno un po’ come funziona questo protocollo (e anche se lo conoscete non si capisce niente uguale perchè iniziamo ad avere troppi nodi!).
La ragione per cui usiamo OLSR è che si accorge automaticamente di quando un collegamento degrada o di quando un nodo va giù (ad esempio perchè qualcuno ha staccato la correte ad un apparato, cosa da non fare mai!), e re-imposta i percorsi all’interno della rete affinchè i nostri dati facciano sempre il percorso migliore (più corto e più performante).
People
La parte più importante della nostra rete sono le persone che la compongono. Al momento siamo in diversi ed ognuno ha una formazione e delle attitudini diverse dall'altro. E' importante che ognuno faccia la sua parte per costruire questo progetto. Abbiamo chi si offre di aiutare le persone a costruire i propri nodi, chi fornisce supporto sulla mailing list, chi fa troubleshooting dei problemi di rete, chi realizza i firmware, aggiorna il wiki, realizza programmi che servono alla community, chi scrive sul blog, etc etc.
Ognuno fa quello che può in base alle proprie inclinazioni. E' richiesto, anche a chi non ha competenze tecniche, di mettersi in gioco. Ad esempio la frase "non mi funziona la rete" da noi non è accettata: bisogna fare qualcosa di più come ad esempio fare dei semplici test (ping, traceroute) per aiutare gli altri a capire dove sia il problema.
Come creare un nuovo nodo (In 7 piccoli passi)
Hai letto la pagina ChiSiamo e sei d'accordo con i nostri principi? Hai letto le informazioni contenute nelle sezioni "Livello 0: Base" e "Livello 1: Novizio" della pagina Guide?
Ok è ora di fare un nodo!
Per prima cosa piazza un segnaposto sul Mapserver indicando la tua posizione potenziale (clicca su "aggiungi un nuovo nodo" in alto a destra), questo servirà principalmente per pianificare il collegamento
Presentati sulla nostra mailing list wireless, puoi iscriverti semplicemente mandando un'email vuota a wireless-subscribe@ml.ninux.org
Non sarebbe carino entrare nella community senza prima presentarsi!Guarda se ci sono dei nodi vicino a te, meglio se questi nodo sono "attivi" (sul MapServer sono quelli con l'icona verde) perchè già connessi al resto della rete. Per vicini intendiamo a una distanza non superiore ai 10 km e che esista una "linea di vista" tra il tuo tetto/balcone ed il tuo vicino (niente palazzi, montagne, torri o alberi in mezzo).
Fai delle foto verso questi nodi dal tuo tetto e/o dalla tua finestra; Carica le foto sulla foto gallery della community e invia il link alle foto in mailing list per discutere insieme agli altri ninuxiani la fattibilità del link;
Puoi anche utilizzare google earth per analizzare la morfologia del terreno
- Attraverso la mailing list o il map-server entra in contatto con questi vicini. Procurati le chiavi e le autorizzazioni che ti servono per realizzare un nodo che nella maggior parte dei casi si farà sul tuo tetto. Assicurati di avere la disponibilità anche dell'altra persone a cui ti stai collegando.
Se vuoi ti possiamo accompagnare e provare con degli apparati di test se il link si puo' fare e la sua qualità. Se c'è linea di vista e la distanza non è eccessiva, il link sarà molto probabilmente ottimo! Se il link non è fattibile non ti arrendere! Leggi la sezione Cosa fare se il collegamento con i vicini non è fattibile?
Adesso arriva il bello, la realizzazione del link. Dato che servono alcune competenze software e hardware, noi forniamo assistenza gratuita (in stile community) mettendo a disposizione il nostro aiuto e la nostra compagnia , l'unico prerequisito per ottenere supporto per montare il proprio nodo è che bisogna aver partecipato almeno alla costruzione di un altro nodo in precedenza.
Fatti un giro anche sul nostro Blog per vedere i resoconti delle altre installazioni.
- Scegli l'apparato migliore per il collegamento che devi fare, acquistalo, configuralo ed installa sull'apparato il protocollo OLSR. Volendo puoi contattarci anche per avere l'apparato già configurato che possiamo comprare per te (no, non ci facciamo la cresta, anzi cerchiamo sempre i venditori più convenienti ed affidabili).
Installa il nodo su un buon supporto ed alimentalo attraverso 220v o Power over ethernet. Chi fa un lavoro male lo si fa due volte quindi cerca di farlo subito bene in modo che resista al peggio (nubifragi e tsunami vari che potrebbero capitare nell'arco del tempo) ! Se ti serve aiuto contattaci e chiedi dell' Hardware Team!
Sei in rete! Fatti un giro sulla pagina dei Servizi e diffondi il verbo!
Per maggiori informazioni consulta la pagina Guide, in questa pagina abbiamo raccolto tutte le informazioni che devi sapere per diventare un Ninuxiano doc. In particolare, per quanto riguarda le informazioni su come collegarsi alla rete, studia bene i link raccolti nella sezione "Livello 2: Intermedio".
Cosa fare se il collegamento con i vicini non è fattibile?
Spesso può capitare che non ci siano nodi abbastanza vicini, che ci siano ostacoli verso i nodi più vicini o che qualche altro problema tecnico impedisca di collegarsi alla rete.
Niente paura! Se c'è volontà da parte tua le cose si sbloccheranno.
In questi casi il procedimento consigliato è il seguente:
- segui la mailing list e rimani in contatto con i ninuxiani della tua zona.
- chiedi periodicamente, ad esempio una volta al mese, notizie sugli sviluppi della rete, chiedi se sono in programma nuovi nodi in zone verso cui hai visibilità.
- partecipa lo stesso alla costruzione di almeno un nodo in modo da essere preparato quando arriverà il tuo momento.
Cosa fare se non c'è proprio nessuno nel raggio di centinaia di kilometri? Niente paura!
Leggi qui: Bellissimo! Ho capito tutto, voglio partecipare, ma non c'è nessuno vicino a me!.
Imparare a costruire i nodi
Se vuoi imparare a costruire i nodi di una rete wireless libera per costruirtelo da solo o per aiutare gli altri a farlo consulta la guida: "Fondamenti per costruire una rete wireless libera"'