Sorry, diese Seite ist im Aufbau und vermittelt erstmal rudimentaere
Informationen zum Freifunk (FF) in
Magdeburg (seit 2013 md.freifunk.net).
Hier eine vorlaeufige Uebersichtskarte aus
OpenStreetMap.
Neu 2014: md.freifunk.net (16 nodes, multiSSID B.A.T.M.A.N Advanced IPv6 + DHCP + vpn-gw IPv4) Versuchsknoten sind teilweise mit einfachem Passwort (123...8) gesichert, um autologin von WLAN-Geraeten und gegenseitiges abhoeren zu erschweren. 2009-2014: mdcracau.freifunk.net (1-2 nodes, OLSR IPv4, noDHCP, noGW) --closed-- Uebersicht Freifunknetz Magdeburg/Cracau: ESSID: mdcracau.freifunk.net IP-range: 10.16.0.0/19 = 10.16.0.1 - 10.16.31.254 (max. 8190 Knoten) Netzmaske: 255.255.224.0 Domain: mdcracau.freifunk.local Liste Freifunk-Knoten: IP/Range Geo-Koordinaten Dienste Bemerkungen SSH-FP? GW? 10.16.0.0/12 N52.123 E11.659 olsr (54Mbps, Holger, Nov2009, 'range' zu gross) 10.16.4.16 N52.117 E11.660 olsr,http,ssh (WRT54GL, 2.462 GHz, 54Mbps, Stab+BQuad-Hori Richtung NNW, Joerg Nov09,Dez09) 10.16.4.17 N52.117 E11.660 olsr,http,ssh (WRT54GL, 2.462 GHz, 54Mbps, 2*Stab Richtung ENE, Joerg Dez09) 10.16.4.18 N52.117 E11.660 olsr,http,ssh (233MHz-i586 192MB RAM + DWL-660,11Mb/s + QQuad-Vert, Provisorisch, z.Z. nur Richtung E, channel 10, 2.457GHz, Joerg, Nov2009) 10.16.4.16/28 N52.117 E11.660 14 IPs reserviert fuer Experimente (joerg Nov09) 10.16.4.28/30 N52.117 E11.660 2 IPs fuer Vergabe per OLSR-DHCP (test, Joerg Dez09) ... 10.16.31.1/24 reserviert fuer kurzzeitige Experimente und Gaeste (?) -------------------------------------------------------------------------- Moegliche (geplante?) Dienste + ToDo-List: - Mesh-Statistiken (IPs+Datenmenge,letzteSendezeit,Latenzen) + FF-MSG-board(gpg) - olsr(meshing/routing), dhcp+NAT(connect), http(web), https(secweb), jabber(chat), mumble(voice), tinc(vpn-gw), Gateway zu VPNs, imap(FF-email), ssh, dns-fw, ... via Avahi (Zeroconf/UPnP announciert?) - Einrichtung OLSR-Router fuer neue Mitglieder, Verkauf gegen Selbstkostenpreis? - Tunnel ins FF-Halle - IP-Range muss wegen IP-Konflikten geaendert werden? Warum: erleichtert Routing zwischen Freifunknetzen via Tunneling? Vorschlag: 10.116.0.0/18 fuer magdeburg.freifunk.net (parallel-Betrieb ueber multi-SSID oder eth0:1?) - eigene server/client-SSL-Zertifikatsverwaltung - Anschluss Radioaktivitaetsmessstation via FF (solarbetrieben) (2011) ----------------------------------------------------------------------------- FAQ: Q: Was ist Freifunk? A: WLAN im Ad-Hoc-Modus + Meshing-Software(olsr), gleicher Funkkanal, gleiche ESSID, gemeinsamer (privater) IP-Range, IP-Adressen werden per Hand vergeben Q: Wie funzt OLSR (Beispiel-IP+Routingtabellen, Varianten)? A: Olsrd sendet und empfaengt via IP-Port 698 UDP Pakete an Funknachbarn und veraendert Routing-Tabelle. route -n | grep wlan0 # Beispiel 7 Hosts, 2 direkte Links + 5 indirekte Links Destination Gateway Genmask Flags Metric Ref Use Iface 10.16.0.17 10.16.0.211 255.255.255.255 UGH 3 0 0 wlan0 10.16.0.49 10.16.0.209 255.255.255.255 UGH 3 0 0 wlan0 10.16.0.50 10.16.0.209 255.255.255.255 UGH 2 0 0 wlan0 10.16.0.81 10.16.0.211 255.255.255.255 UGH 2 0 0 wlan0 10.16.0.211 0.0.0.0 255.255.255.255 UH 1 0 0 wlan0 10.16.0.177 10.16.0.209 255.255.255.255 UGH 3 0 0 wlan0 10.16.0.209 0.0.0.0 255.255.255.255 UH 1 0 0 wlan0 10.16.0.0 0.0.0.0 255.255.224.0 U 0 0 0 wlan0 # Metric kann Hop-Anzahl sein, muss aber nicht (es gilt nur: kleiner ist besser) # Flags: Up, Gateway, Host; Metric und Ref wird von Linux nicht benutzt # test: ping -R -c 1 -n 10.16.0.209 ToDo: Vortrag? Video? Q: OLSR Debugging? A: netstat -antup Proto Recv Send Local Address Foreign Address State PID/Program name tcp6 0 0 :::80 :::* LISTEN 2713/thttpd tcp6 0 0 :::22 :::* LISTEN 2565/sshd tcp6 0 0 ::ffff:10.16.0.71:22 ::ffff:10.16.0.70:40830 ESTABLISHED 12625/0 udp 0 0 0.0.0.0:698 0.0.0.0:* 5261/olsrd tcpdump -ni wlan0 # UDP broadcast packets via port 698 21:50:02.790209 IP 10.16.0.71.698 > 10.16.31.255.698: OLSR, seq 0xb1e7, length 20 21:50:08.321130 IP 10.16.0.71.698 > 10.16.31.255.698: OLSR, seq 0xb1e8, length 20 21:50:14.497475 IP 10.16.0.71.698 > 10.16.31.255.698: OLSR, seq 0xb1e9, length 20 Q: Umstieg von OLSR (Optimized Link State Routing) auf B.A.T.M.A.N. (Better Approach to mobile Ad-Hoc Networks)? A: ab bestimmter Netzgroesse? Interoperabel? Vorteil: sonst nicht im MESH sichtbare aber am Router haengende PCs koennen vom Router mit angemeldet werden Q: Geeignete preiswerte Hardware? A: Wichtig ist sparsamer Verbrauch und minimale Lautstaerke. - Alte Laptops + WLAN-Karte/USB-Stick (genug RAM, 8-20W) geeignet als Dienste-Server. Leider haben alte Laptops (486er) oft nur 1-2 16bit-PCMCIA Steckplaetze, kein Ethernet oder USB. Hier ist der Einsatz nur mit vorhandenen alten PCMCIA-16bit-WLAN/Ethernet sinnvoll. Mit USB-Ports insbesondere 2.0 ist man deutlich flexibler. Alte USB-faehige Notebooks bzw. 16bit-PCMCIA-Karten sammelt Joerg gern ein. - OpenWRT-faehige APs (RAM ist knapp, 1-10W) als reine OLSR, evl. Solarbetrieb ... optimal mit externer Antenne. Nov09: WRT54GL v1.1 40EUR bei Alternate (ct 23.11.2009), 50EUR bei Reichelt, Amazon 8V-14V 1.5W (1.7W mit eth, boot=2.1W) 12V * 120mA = 1.4W idle (+60mA=+0.7W boot, +20mA/eth idle) max=300mA(4W) 14V * 108mA = 1.5W 9V * 158mA = 1.4W 8V * 176mA = 1.4W idle (+29mA/eth idle) Q: Alte nicht-OpenWRT-faehige APs als (Solar-) Freifunk-Repaeter? A: ... Ad-Hoc + Repeat-Mode? Q: Verbinden zweier Funk-Nodes node16 + node17 via Ethernet-Kabel? A: (wlan0=.16/12 node16 eth0=.21/30)----(eth0=.22/30 node17 wlan0=.17/12) Enge Netmasken (/30) werden gegenueber anderen (/12) priorisiert. ToDo: testen! SQ: ... via fester WLAN-Route als Kabelersatz? *smile* (wlan0=.16/12 node16 wlan0:1=.21/30)----(wlan0:1=.22/30 node17 wlan0=.17/12) A: node16: ifconfig wlan0:1 10.16.0.21 netmask 255.255.255.252 up node17: ifconfig wlan0:1 10.16.0.22 netmask 255.255.255.252 up # /30 ist das kleinst-moegliche Subnetz (Netzadr=0,Hosts=1-2,Broadcast=3) # /31 fuer Point-to-Point-Verbindungen zu Endpunkten (nicht nutzen!) node16: ip address show dev wlan0 3: wlan0: <BROADCAST,MULTICAST,UP> mtu 1500 qdisc prio qlen 1000 link/ether 00:23:4b:32:46:bd brd ff:ff:ff:ff:ff:ff inet 10.16.4.16/19 brd 10.16.31.255 scope global eth1 inet 10.16.0.21/30 brd 10.255.255.255 scope global eth1:1 SQ: via Switch vom DSL-Router? A: ... SQ: ssh zu $ip1 (mit 2 IPs) via $ip2? A: ssh -o HostKeyAlias=$ip1 -o VisualHostKey=yes $ip2 Q: Verbinden zweier OLSR-Wolken via PtP oder WLAN-Bridge? A: ... Q: OLSR-Zuverlaessigkeit? A: Der OLSR-FF ist stark gefaehrdet durch DoS-Attacken. Verursacher koennen aber lokalisiert werden. Hijacking von HTTP-Verbindungen ist leicht (SSL/TLS oder VPN nutzen). Original RFC3626 (OLSR-0.4.7 aus 2004 und vorher) funktioniert schlecht oder garnicht (http://www.open-mesh.org/wiki/the-olsr-story, see routing-loop-problem). Q: Benchmarks? A: nc $ip 2048 + nc -l -p 2048 Q: Paketverluste? A: ping -s 512 -c 400 -f -n $IP Q: Daten-Sicherheit? A: Fuer die Verschluesselung von sensiblen Daten muss selbst gesorgt werden (ssh, vpn, ssl/tls)! Korrekte Pruefung aller beteiligten Zertifikate ist dabei wichtig. SQ: ssh-vpn von node16 zum Netzwerk 10.0.0.x mit node18 (ssh-4.3++, dropbear=no) A: node16: sshd + root access, PermitRootLogin=yes PermitTunnel=yes node18: ssh access to node16 + root access, mit Internet-IP = VPN-GW node18: echo 1 > /proc/sys/net/ipv4/ip_forward ssh -NTCf -w 0:0 node16 # optional: -f = background, -NTC = ... # erzeugt (verbundene) tun0's auf beiden Nodes ifconfig tun0 10.0.0.200 pointopoint 10.0.0.100 node16: ifconfig tun0 10.0.0.100 pointopoint 10.0.0.200 node18: route add -net 10.0.0.0 netmask 255.255.255.0 gw 10.0.0.200 tun0 node16: arp -sD 10.0.0.200 eth0 pub optional: default-route zum VPN-GW verschieben Bemerkung: nicht die beste VPN-Methode, benoetigt beidseitig Rootrechte mit iface automatisierbar Sources: - Guide to IP Layer Network Administration with Linux, Version 0.4.5, 2002-2007, Author: Martin A. Brown, http://linux-ip.net/html/linux-ip.html