Collettore e visualizzatore topologia di rete
Da qualche mese è in sperimentazione un nuovo collettore e visualizzatore della topologia di rete che potrebbe rimpiazzare quello attuale.
Al momento è disponibile un istanza sperimentale su openwisp.nnxx.ninux.org/topology/.
Dettagli tecnici
I vantaggi del nuovo collettore sono i seguenti:
supporta 5 formati differenti tra cui NetJSON NetworkGraph
- i link che vanno giù non vengono cancellati ma contrassegnati come "down"
- ha un'architettura modulare facilmente estensibile
- permette l'invio della topologia direttamente dai nodi, evitando l'onere di dover pubblicare la topologia su una URL pubblica
- permette l'invio della topologia da parte di più nodi, mitigando il problema del singolo punto di guasto
può essere incluso in progetti più grandi, ad esempio nodeshot (la nuova versione dell'attuale map.ninux.org)
ha un API HTTP che restituisce le informazioni della topologia in formato NetJSON
Per sapere più dettagli tecnici sull'implementazione e sull'architettura, è possibile consultare un post sul blog di nemesis: Network Topology Visualizer: django-netjsongraph.
Visualizzare la topologia della vostra rete
Per visualizzare la topologia di rete potete usare l'istanza di test condivisa oppure installare autonomamente una vostra istanza.
Se volete usare l'istanza condivisa, potete partecipare alla sperimentazione seguendo questi passi:
- chiedete l'accesso come amministratori all'istanza di test inviando un email a contatti [at] ninux [dot] org.
scegliete una tra le due strategie disponibili per la raccolta dei dati (FETCH e RECEIVE) - LEGGETE LA DOCUMENTAZIONE
- create una nuova topologia scegliendo la strategia che preferite ed inserendo i dati correttamente
- se avete bisogno di supporto non esitate a chiedere
Esempio script per RECEIVE strategy
Questo è uno script che invia la topologia OLSR al collettore: push-olsr-data.sh.
BASE_URL="https://openwisp.nnxx.ninux.org" # put your network topology id here UUID="<uuid>" # put your network topology key here KEY="<key>" # host where OLSR is running OLSR_HOST="127.0.0.1" # port on which OLSR is listening, change it according to your configuration OLSR_PORT="2006" COLLECTOR_URL="$BASE_URL/api/receive/$UUID/?key=$KEY" DATA=$(echo "GET /\n\n" | nc $OLSR_HOST $OLSR_PORT) curl -s -X POST -d "$DATA" --header "Content-Type: text/plain" "$COLLECTOR_URL"
Lo script è facilmente adattabile anche per altri protocolli di routing.
Installare un istanza del collettore
Al momento non è ancora disponibile una procedura di installazione automatica.
Potete partire leggendo il README del progetto django-netjsongraph.
Se sei pratici di pacchettizzazione su distribuzioni linux potreste aiutarci a fare un pacchetto facile da installare.