Italiano English
Edit History Actions

Lombardia/Architettura della rete

La rete ninux lombarda ha deciso per amore di sperimentazione di adottare batman adv per la mesh e IPv6 puro; questo purtroppo comporta che molta della documentazione valida per il resto di Ninux non si applica, o si applica solo in modo parziale, alla situazione lombarda.

Nel momento in cui sarà possibile interagire con il resto della rete, saranno necessari dei router opportuni, l'installazione dei quali fornirà ulteriori momenti di apprendimento :)

Collegamenti fisici

[TBD]

Batman (layer 2)

Batman adv lavora interamente a layer 2: richiede un elenco di interfacce di rete sulle quali invia messaggi OGM per cercare sulle rispettive reti locali altri nodi con i quali comunicare. Fornisce poi un'interfaccia virtuale, di solito bat0, dalla quale saranno raggiungibili come su una rete locale tutti i nodi trovati.

Batman adv è totalmente agnostico nei confronti della natura delle interfacce che gli vengono messe a disposizione: possono essere interfacce fisiche (via cavo o wireless), virtuali (le classiche vlan di openwrt, ma anche interfacce tap di una vpn) o una loro combinazione.

IPv6 (layer 3)

All'interno dell'isola lombarda per ora è necessario configurare il layer 3 solo per una rete locale, quella fornita dalle interfacce bat0.

Essendo su una rete locale possiamo usare la Stateless address autoconfiguration (SLAAC) per ottenere automaticamente gli indirizzi: ogni dispositivo che si collega a questa rete locale sfrutta il suo indirizzo link-local per inviare una richiesta dei parametri di configurazione (ad esempio il prefisso di rete) da usare per generarsi un indirizzo e comunicare con il resto della rete.

In futuro sarà probabilmente necessario suddividere l'isola in più sottoisole collegate tra di loro tramite router la cui configurazione sarà studiata nel momento del bisogno :)

Oltre a questo sulla rete è disponibile un DNS interno autoritativo per i domini .nlom (ed in futuro probabilmente una sottozona di nnx). Il piano è di aggiungere ulteriori DNS caching, la cui configurazione è però ancora da definire.

Collegare altri dispositivi

Batman è implementato come modulo del kernel linux, quindi non è disponibile su computer e dispositivi con altri sistemi operativi, e i programmi per la sua gestione non sono neppure disponibili per Android, impedendo quindi l'uso di cellulari e tablet come nodi batman.

Per collegare altri dispositivi alla rete, comunque, non è necessario che siano parte della mesh; possono invece essere collegati in modo convenzionale ad un nodo della stessa, con diverse possibili strategie.

Access point in bridge

Il modo più semplice è fornire semplicemente una rete wireless con antenna (magari a 2.4GHz) in modalità access point mettendo in bridge la relativa interfaccia con l'interfaccia bat0. In questo modo i dispositivi collegati alla rete wireless riceveranno comunque le informazioni di configurazione dalla rete ninux e potranno accedere direttamente.

Rete separata

Un'altro metodo è fornire (probabilmente sempre tramite access point) accesso ad una rete separata e configurare un router per gestire il collegamento tra questa e la rete ninux lombarda.

Questo caso è probabilmente più adatto nel caso in cui si voglia collegare tutta la propria rete locale alla rete ninux, sia in modo completo che in modo parziale, ma ancora questa configurazione non è stata provata da nessuno dei nostri nodi.

FAQ

Collegamento ad internet

Questa configurazione effettivamente al momento non favorisce l'uso della rete ninux lombarda per raggiungere il resto di internet; la cosa è stata presa in considerazione e considerata accettabile, dati i nostri scopi.

Se in futuro fosse possibile fornire collegamento ad internet (tramite IPv6), cambiare gli indirizzi da ULA a globali dovrebbe richiedere solo il cambiamento della configurazione dei Router Advertisers, non di tutti i nodi, e quindi essere ragionevolmente fattibile, ma non ci aspettiamo che la cosa avvenga a breve.

Per il momento è però possibile sfruttare la rete ninux lombarda per condividere il proprio accesso ad internet (una volta verificato che il relativo contratto lo permetta, e assumendosene tutte le responsabilità): basta creare sopra alla rete ninux una VPN collegata alla propria rete locale (e relativo accesso ad internet) e fornire accesso a tale VPN alle persone con le quali vogliamo condividere la connessione. In questo caso la VPN sarà ovviamente indipendente dalla configurazione di ninux e potrà ad esempio usare tranquillamente IPv4.