<p dir="ltr">Il giorno 20/set/2013 10:54, "nemesis" <<a href="mailto:nemesis@ninux.org">nemesis@ninux.org</a>> ha scritto:<br>
><br>
> Ciao a tutti,<br>
><br>
> ieri con l'aiuto di Fabys e Immanuel sono riuscito ad andare un bel pò avanti sul prototipo che prende le informazioni dai device.<br>
><br>
> L'obiettivo di questo primo prototipo è evitare di dover inserire tutte le info a mano sull'interfaccia web, ma automatizzare il tutto con delle classi che scriveremo in base ai device usati ed i protocolli che vogliamo usare.<br>

><br>
> Vi faccio un esempio pratico così capite tutti.<br>
><br>
> Quando ora bisogna attivare un nodo sul map-server per far disegnare i link bisogna inserire un device, immettere le informazioni (nome device, interfacce wireless, ethernet, ip) a mano. Col passare del tempo mi sono reso conto che quest'operazione oltre a far perdere un sacco di tempo a chi monta i nodi, è molto error-prone, ed infatti non poche volte ci siamo resi conto che alcune informazioni erano state inserite completamente sballate e quindi inutilizzabili.<br>

> Con questo nuovo modulo il processo sarebbe automatizzato, l'obiettivo è che basti inserire nome del nodo, host, username e password (solo se SSH o API HTTP, altrimenti con SNMP, munin o altri protocolli non servirebbe) e che tutti gli ogetti vengano creati automaticamente.<br>

> Chi è masochista potrà comunque continuare ad inserire tutte le interfacce manualmente :)<br>
><br>
> Per prima cosa ho cominciato con SSH e comandi shell, per una questione di semplicità e portabilità, dato che altre soluzioni come SNMP ed API HTTP non sono supportate da tutti i device della rete ninux.<br>
><br>
> Qui c'è il codice che abbiamo prodotto:<br>
> <a href="https://github.com/nemesisdesign/nodeshot/commit/ae692a2e6e230e7a83038da0d5f5f377185ab31d">https://github.com/nemesisdesign/nodeshot/commit/ae692a2e6e230e7a83038da0d5f5f377185ab31d</a><br>
><br>
> Dopo aver fixato alcuni problemini il prossimo passo sarà fare una classe per OpenWRT (il prototipo che ho fatto è per AirOS).<br>
><br>
> Fabys mi ha spiegato come funziona Munin, e mi sembra un validissimo tool con cui fare un prototipo di monitoraggio semplice.<br>
><br>
> Un piccolo problema che non siamo riusciti a risolvere è che non siamo riusciti a tirar fuori l'ipv6 dall'output dell'ifconfig:<br>
><br>
> <a href="https://github.com/nemesisdesign/nodeshot/blob/ae692a2e6e230e7a83038da0d5f5f377185ab31d/nodeshot/networking/base/utils.py#L14">https://github.com/nemesisdesign/nodeshot/blob/ae692a2e6e230e7a83038da0d5f5f377185ab31d/nodeshot/networking/base/utils.py#L14</a><br>

><br>
> Sapete se c'è un modo più facile per tirar fuori l'ipv6 con qualche comando bash?<br>
><br>
> PS: al prossimo giovedì nerd se volete installiamo un istanza di nodeshot2 di sviluppo per poterci smanettare tutti insieme appassionatamente.<br>
> Chi vuole donare una macchina a tal proposito?<br>
><br>
> Federico<br>
> _______________________________________________<br>
> Wireless mailing list<br>
> <a href="mailto:Wireless@ml.ninux.org">Wireless@ml.ninux.org</a><br>
> <a href="http://ml.ninux.org/mailman/listinfo/wireless">http://ml.ninux.org/mailman/listinfo/wireless</a><br></p>
<p dir="ltr">Intanto complimenti per lo "step-up" (anche se non ho anvora letto il codice so che avete fatto un ottimo lavoro!)</p>
<p dir="ltr">Per tirar fuori l' IPv6 non conviene usare ifconfig ma IP</p>
<p dir="ltr">Personalmente lo faccio così</p>
<p dir="ltr">-------------------[cut me]-------------------<br>
ip6_lan="$(ip -6 a s | while read ipv6; do echo -e "${ipv6}" | grep -v "host" | awk '/128/;/64/' | grep -v "fe80" | sed 's/\// /g' | awk '/global/{print $2}' | tr -s '\n' ' '; done)"<br>

-------------------[cut me]-------------------</p>
<p dir="ltr">In questo modo avrete sia l'ip radio che quello lan, in alternativa basta giocare con awk per definire la lettura di uno solo dei due ip (radio-lan)</p>
<p dir="ltr">Bella ;)</p>
<p dir="ltr">--<br>
Arka</p>