Dies ist eine alte Version des Dokuments!
Um einen Computer manuell mit dem Bielefelder Freifunk-Netz zu verbinden (also ohne die Firmware für WLAN-Router), muss zuerst batman-adv und fastd installiert sein.
Grundeinstellung für fastd:
Zuallerst werden ein paar Verzeichnisse und Dateien angelegt:
mkdir /etc/fastd mkdir /etc/fastd/backbone mkdir etc/fastd/backbone
/etc/fastd/fastd.conf
log to syslog level info; bind any; method "salsa2012+gmac"; log to syslog level info; mode tap; interface "fastd_mesh"; mtu 1406; forward no; secure handshakes yes; include peers from "/etc/fastd/peers"; peer group "backbone" { peer limit 1; include peers from "/etc/fastd/backbone"; }
Es muss noch ein secret generiert werden:
secret=`fastd --generate-key --machine-readable` echo "secret \"$secret\";" >> /etc/fastd/fastd.conf
Nun folgen die Schlüssel für die Server:
/etc/fastd/backbone/vpn1
key "d7822baec77e7f6572ae9298b5506191e00f9eeaac1db4aba6e3c280678cac3c"; float no; remote "vpn1.freifunk-bielefeld.de" port 1234
/etc/fastd/backbone/vpn2
key "5369f843d41a89c107fe1839b1683e14869046252bb7af734f7d67b2711dd9cc"; float no; remote "vpn2.freifunk-bielefeld.de" port 1234;
/etc/fastd/backbone/vpn3
key "c1f20f98bf22860aac43796c70387651c832c8e7c067761b262850567deab06e"; float no; remote "vpn3.freifunk-bielefeld.de" port 1234;
Nun kann fastd gestartet werden:
fastd --config /etc/fastd/fastd.conf --daemon
Fastd verbindet sich nun mit einem der drei VPN-Server. Das erstellte interface fastd_mesh empfängt nun Pakete des Mesh-Protokolls. Batman-adv wird nun benötigt um die Pakete zu verstehen:
Als erstes wird batman-adv als Kernel-Modul geladen:
modprobe batman-adv
.. und fastd_mesh hinzugefügt.
batctl if add fastd_mesh
bat0 kapseln wir noch in einer bridge um eventuell in Zukunft noch ein AccessPoint-Interface hinzufügen zu könnnen:
brctl addbr br-public brctl addif br-public bat0
Jetzt noch alle interfaces aktivieren:
ifconfig fastd_mesh up ifconfig bat0 up ifconfig br-public up
br-public ist der Zugang zum Freifunk-Netz und bekommt noch eine zufällige IP-Adresse aus dem Bereich 10.29.0.0/16:
ifconfig bat0 10.29.x.y
IPv6 Adressen werden über Prefix-Announcements automatisch vergeben.
Ein paar Einstellungen
echo "client" > /sys/class/net/bat0/mesh/gw_mode echo "3000" > /sys/class/net/bat0/mesh/orig_interval echo "1" > /sys/class/net/bat0/mesh/bridge_loop_avoidance
WLAN AccessPoint
iw phy phy0 interface add wlan_ap type __ap
TODO: Adresse eines Gateways ins Internet empfangen.