[Berlin-wireless] Netmon 0.1 Release vorstellung

Clemens John clemens-john
Mo Jun 8 23:32:00 CEST 2009


Hoi!

Ich bin vom Oldenburger Freifunkprojekt und möchte euch mal die Software 
"Netmon" vorstellen, mit der wir unser (sehr kleines) Netzwerk maßgeblich 
organisieren.

Netmon (Netzwerk Monitor) ist ein Portal zur Verwaltung von Freifunknetzen. 
Entwickelt wird es seit Anfang 2009 im Rahmen des Oldenburger Freifunkprojekts 
und wurde heute von mir in der ersten Version (0.1) freigegeben. Netmon soll 
eine Stelle im Netzwerk bieten, die alle wichtigen Informationen bündelt. Dazu 
gehört die Verwaltung der Benutzer die einen Router im Netz haben, die 
Verwaltung der Subnetze, IP´s, Verfügbarkeits- und Statusdaten sowie VPN 
integration und Freifunkmap.
Netmon soll dabei kein Allrounder mit weiterer Wiki oder Blogintegration sein, 
sondern sich allein auf die Verwaltung und Bündelung der Daten des Netzwerkes 
konzentrieren. 

Netmon wird in Php mit der Templateengine Smarty enwickelt und nutzt als 
Backend eine Mysql-Datenbank.

Die Idee dazu entstand ganz am Anfang des Projekts, da wir nicht wussten wie 
wir die IP-Vergabe regeln sollten und später einen Überblick darüber haben 
wollten, wen es eigentlich so im Netz gib, was er anbietet und ob die 
entsprechenden Nodes online sind.
Außerdem wollten wir uns nicht so ganz mit der Freifunkkarte aus Berlin, die 
ja auf Googlemaps basiert, anfreunden. Die erste Entwicklung war daher eine 
rudimentäre Karte auf Openstreetmap Basis.
Als nächstes wollten wir auf OpenWrt 8.09 setzen und in Luci gab es ein 
Statusscript das man über http abfragen konnte und das wunderbare Statusdaten 
per Json hergab. Um jetzt alles über einen Node herauszubekommen mussten wir 
also nur dieses Script abfragen.
Daraus entstand dann ein Crawler und daraus entstand wiederum entwas größeres: 
Netmon.

Im Groben funktioniert Netmon so:
Ein Benutzer registriert sich bei Netmon und kann sich danach eine oder 
mehrere IP´s mit DHCP-Range in von Admins angelegten Subnetzen reservieren.
Auf diesen IP´s kann er wiederum Services anlegen, die im Grunde eine IP 
weiter spezifizieren. Also ob eine IP ein Node, ein VPN-Client, ein Server 
oder alles zusammen ist.
Jeder Service kann dabei mit optionalem Titel und Beschreibung bestückt 
werden. Außerdem kann Netmon automatisch VPN-Zertifikate für IP´s erstellen.

Ein Crawler fragt nun alle X minuten die IP´s ab und versucht je nach Service-
Typ die IP anzupingen (VPN-Client), einen Port zu prüfen (Server) oder die 
Json-Daten zu holen (Node).
Diese Daten werden in einer Mysql-Datenbank gespeichert und können dann in 
Nodelisten oder Grafiken etc. aufbereitetwerden.
Da Nodes immer Json-Daten geben in denen in i.d.R. auch die Geo-Position des 
Node enhalten ist, generieren wir aus den Daten z.B. automatsich eine Map auf 
der alle Services vom Typ "Node" enthalten sind die derzeit online sind.

Heute ist wie gesagt die erste Version Netmon 0.1 erschienen. Die Version ist 
sicher nicht komplett oder super Bugfrei, reicht uns aber zur nötigsten 
Verwaltung. Netmon 0.2 soll den Code ordnen, viele Funktionen überarbeiten und 
neu aufbauen damit wir mit 0.3 dann neue schöne Entwicklungen einbringen 
können.
Wohin sich Netmon entwickeln soll kann man auf unserer Roamap unter 
http://trac.freifunk-ol.de/roadmap lesen, oder aus den Tickets für die 
einzelnen Versionen schließen: http://trac.freifunk-ol.de/report/3

Wer sich das ganze mal angucken will, findet unser Netmon unter
http://netmon.freifunk-ol.de/
Downloaden kann man die 0.1 hier: http://dev.freifunk-ol.de/netmon/0.1/
Dazu gibt es auch noch einen etwas umfangreicheren Wiki-Artikel:
http://wiki.freifunk-ol.de/index.php/Netmon

Ich würde mich sehr über Feedback und Ideen freuen.
Insbesondere würde mich interessieren ob man Netmon überhaupt gebrauchen kann, 
oder ob wir mit unseren Ideen an der Realität vorbei entwickeln. Da wir so gut 
wie keine Erfahrung mit Freifunk haben, können wir schlecht einschätzen.
Im Moment wird Netmon von mir alleine entwickelt. Wer also Lust hat zu helfen 
der schreibe mich einfach direkt an.

Bye
Clemens





Mehr Informationen über die Mailingliste Berlin