Marcs Notizen zu unterschiedlichen Freifunkthemen E-mail: suaefar@googlemail.com Firmware * Basisfirmware unabhängig von Region und Routermodell machen * Regionen: Franken, Oldenburg, Bremen, ... * Modelle: DIR300,TP-RW841ND8,... * Möglichst viel (e Optionen) mit der Basisfirmware abdecken * zB. WLANWatchdog immer drin, aber wird nur auf Modellen mit WLAN Treiberproblemen aktiviert * Templates und/oder Patches ergänzen die Region/Modell Informationen * Möglichst minimal halten und gut kommentieren, vor allem Patches * Sobald nicht mehr nötig entfernen (zB Workarounds) * Templates würden dann entsprechend ersetzt * zB Ein Skript, das nach speziellen STRINGS sucht und diese durch Regionconfig/Modellconfig definierte ersetzt * Gut für Dinge die bei allen Modellen/Städten gesetzt werden aber jeweils unterschiedlich sind * WLAN channel * WLAN ESSID * WLAN,ETH Interfaces * (Fastd) Bootstrap Info * Netmon Instanz * ... * Patches würden angewendet (brauchen aber letztlich auch so etwas wie Platzhalter) * Gut für temporäre Dinge und Sachen die nur auf wenige Modelle zutreffen (sozusagen Ausnahmen) * Satz von Patches pro Modell * zB. WLAN Watchdog aktivieren (Eintrag in rc.local (braucht Platzhalter)) * Dateien die nur für eine Region oder ein Modell angelegt werden * * Definieren was überhaupt von der Region, den Modellen abhängt * Region * ... * Modell * ... * Großzügig Platzhalter einbauen (besser zu viele als zu wenige, da nachträglich schwerer) * Platzhalter damit die Patches auch in späteren Versionen funktionieren und den Kontext wieder finden * Sicheres Firmwareupdate * Ohne URL Eingabe * Ohne -n Flag setzen * Ohne Passwort neu setzen * Ohne Hostname neu setzen * Ohne neue SSH keys VPN/Internetbrücken (nicht Internet-Gateway) * Redundanz schaffen * Neue Internet-only BATMAN Nodes schaffen (sollen unabhängig voneinander sein) * Authentifizierungsproblem lösen * Adressbereich aufteilen * Dezentralisieren * Erste Authentifizierung * Proof of work * HASH Rechenaufgabe * Oder einfach Wartezeit? * zB 5 Min * Synchronisation von Zugangsinfo * DHT * Skript+rsync * Verbindungen zwischen den Routern mit Internetanschluss (WAN Buchse) zulassen * Sollte Inter-node unicast traffic vom "Gateway" (Anführungszeichen da mehrdeutig, "Internet-","VPN-") nehmen * Wird zu mehr multicast traffic auf dem Gateway führen, wenn weiterhin alle Nodes mit allen Gateways verbunden sind Sicherheit * Broadcast SPAM * Ein Client/Node kann das ganze Netzwerk lahm legen * Drossel auf Nodes -> Durchdrehende Clients werden durch Node gedrosselt -> Durchdrehende Nodes werden durch Nachbarnodes gedrosselt * Drossel nicht auf BATMAN Pakete selbst sondern auf dem virtuellen layer 2 (geht das?) * Evtl (weil gut mit Drossel vereinbar) Priorisierung (QoS) * Sinnvolle Abschätzung der benötigten Bandbreite machen * Bzw sinnvolles Limit für DSL Uplinks 128 kbit/s? * Zugang durch externe fastd Verbindungen * Rogue DHCP/BOOTP Server * Wie cool wär das: Direkt ins Freifunk OS booten ^^ Monitoring * Möglichst viel Information auf den Router selbst speichern * Kopien davon zentral vorhalten (Cache) * Möglichst abstrakt (getrennt von Netmon) * Vielleicht will jemand ne "APP" mit ähnlicher Funktionalität schreiben... * Klare Trennung von Arbeitsbereichen * zB "Monitor/Crawl" kopiert sich nur eine/mehrere Datein vom Router * zB /tmp/environment, /tmp/state/, oder auch ganz anders * Übertragungssicherheit * SSH? SSL? * SSH ist vorinstalliert * Info (weniger ist mehr?) * Location (Lat/Lon) * Verbindungen * Qualität der Verbindung * Uptime/Zuverlässigkeit * Interfaces/Traffic * Vielleicht besser noch abstrakter als das... * Last * Rechenlast/Aktive Prozesse/Speicher * Modell/Revision/Firmware Administration * Programme/Skripte dafür möglichst auf Routern * Sollten manuell von dort ausgeführt werden können * Sollten alle Eingaben streng! überprüfen * Aufgaben * Location setzen * Hostname ändern * VPN(WAN Buchse)-Drossel einrichten/deaktieren * Internet Gateway einrichten? * DHCP Server aufsetzen? * IP Bereich * Default route * Sicheres Firmwareupdate * DNS? * Zurücksetzen