Benutzer-Werkzeuge


    Warning: Undefined array key "REMOTE_USER" in /usr/local/www/wiki.freifunk-bielefeld.de/lib/tpl/starter/main.php on line 62
  • Admin

  • Warning: Undefined array key "REMOTE_USER" in /usr/local/www/wiki.freifunk-bielefeld.de/lib/tpl/starter/tpl_functions.php on line 50

    Warning: Undefined array key "REMOTE_USER" in /usr/local/www/wiki.freifunk-bielefeld.de/lib/tpl/starter/tpl_functions.php on line 77
  • Registrieren

Webseiten-Werkzeuge


Unterschiede

Hier werden die Unterschiede zwischen zwei Versionen angezeigt.

Link zu dieser Vergleichsansicht

Beide Seiten der vorigen RevisionVorhergehende Überarbeitung
Nächste Überarbeitung
Vorhergehende Überarbeitung
fastd_und_batman_manuell [2014/08/10 18:58] mwarningfastd_und_batman_manuell [2023/06/04 11:32] (aktuell) – Externe Bearbeitung 127.0.0.1
Zeile 1: Zeile 1:
-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.+und danUm 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:+===== Fastd konfigurieren ===== 
 + 
 +[[https://projects.universe-factory.net/projects/fastd/wiki|Fastd]] ist ein VPN Programm um einen Knoten mit einem der Server im Internet zu verbinden. 
 +Über diese Verbindung, bzw. den Server, sind alle anderen Router erreichbar.
  
 Zuallerst werden ein paar Verzeichnisse und Dateien angelegt: Zuallerst werden ein paar Verzeichnisse und Dateien angelegt:
   mkdir /etc/fastd   mkdir /etc/fastd
 +  mkdir /etc/fastd/peers
   mkdir /etc/fastd/backbone   mkdir /etc/fastd/backbone
-  mkdir etc/fastd/backbone 
  
 /etc/fastd/fastd.conf /etc/fastd/fastd.conf
Zeile 15: Zeile 18:
   mode tap;   mode tap;
   interface "fastd_mesh";   interface "fastd_mesh";
-  mtu 1426;+  mtu 1406;
   forward no;   forward no;
   secure handshakes yes;   secure handshakes yes;
Zeile 33: Zeile 36:
   key "d7822baec77e7f6572ae9298b5506191e00f9eeaac1db4aba6e3c280678cac3c";   key "d7822baec77e7f6572ae9298b5506191e00f9eeaac1db4aba6e3c280678cac3c";
   float no;   float no;
-  remote "vpn1.freifunk-bielefeld.de" port 1234+  remote "vpn1.freifunk-bielefeld.de" port 1244
  
 /etc/fastd/backbone/vpn2 /etc/fastd/backbone/vpn2
   key "5369f843d41a89c107fe1839b1683e14869046252bb7af734f7d67b2711dd9cc";   key "5369f843d41a89c107fe1839b1683e14869046252bb7af734f7d67b2711dd9cc";
   float no;   float no;
-  remote "vpn2.freifunk-bielefeld.de" port 1234;+  remote "vpn2.freifunk-bielefeld.de" port 1244;
  
 /etc/fastd/backbone/vpn3 /etc/fastd/backbone/vpn3
   key "c1f20f98bf22860aac43796c70387651c832c8e7c067761b262850567deab06e";   key "c1f20f98bf22860aac43796c70387651c832c8e7c067761b262850567deab06e";
   float no;   float no;
-  remote "vpn3.freifunk-bielefeld.de" port 1234;+  remote "vpn3.freifunk-bielefeld.de" port 1244; 
 + 
 +/etc/fastd/backbone/vpn4 
 +  key "ac2eae2716aaa287f346cf0e1fa7043b2586a0c9655b769074ec1a8e83c49849"; 
 +  float no; 
 +  remote "vpn4.freifunk-bielefeld.de" port 1244;
  
 Nun kann fastd gestartet werden: Nun kann fastd gestartet werden:
Zeile 50: Zeile 58:
 Fastd verbindet sich nun mit einem der drei VPN-Server. Fastd verbindet sich nun mit einem der drei VPN-Server.
 Das erstellte interface fastd_mesh empfängt nun Pakete Das erstellte interface fastd_mesh empfängt nun Pakete
-des Mesh-Protokolls. Batman-adv wird nun benötigt um +des Mesh-Protokolls.
-die Pakete zu verstehen:+
  
-Batman-adv wird geladen und fastd_mesh hinzugefügt:+===== batman-adv Konfigurieren ===== 
 + 
 +Als erstes wird batman-adv als Kernel-Modul geladen:
   modprobe batman-adv   modprobe batman-adv
 +
 +.. und fastd_mesh hinzugefügt.
   batctl if add fastd_mesh   batctl if add fastd_mesh
-  ifconfig fastd_mesh up 
-  ifconfig bat0 up 
  
-Ein paar Einstellungen +Mit "batctl okönnen jetzt bereits die bekannten Knoten angezeigt werden. Sind viele Einträge zu sehen mesht der Knoten erfolgreich.
-  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+
  
-bat0 ist nun eine Zugang zum Freifunk-Netz und benötigt eine IP-Adresse. +bat0 kapseln wir noch in einer bridge um eventuell in Zukunft noch ein AccessPoint-Interface hinzufügen zu könnnen: 
-Für IPv4 muss diese zufällig gewählt werden+  brctl addbr br-public 
-  ifconfig bat0 10.29.x.y #you need to choose the IP yourself +  brctl addif br-public bat0 
-Aber es wird empfohlen zu testen ob die Adresse bereits vergeben ist.+ 
 +Jetzt noch alle interfaces aktivieren: 
 +  ip link set fastd_mesh up 
 +  ip link set bat0 up 
 +  ip link set 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
 +  ip addr add 10.29.x.y dev bat0
  
 IPv6 Adressen werden über Prefix-Announcements automatisch vergeben. IPv6 Adressen werden über Prefix-Announcements automatisch vergeben.
  
-TODOAdresse eines Gateways ins Internet empfangen.+Jetzt noch das "Originator-Interval" einstellen: 
 +  echo "5000" >  /sys/class/net/bat0/mesh/orig_interval 
 + 
 +===== WLAN AccessPoint ===== 
 + 
 +Ein AccessPoint (AP) dient dazu, das z.B. Smartphones und Laptops mit dem Freifunknetz verbinden können. Dazu wird ein AP, ohne Verschlüsselung und Passwort (nennen wir es mal wlan_ap) , eingerichtet. Als SSID ist hier "bielefeld.freifunk.net" geignet. Ein solcher AP kann mit hostapd konfiguriert werden. Wichtig ist nur darauf zu achten das der DHCP-Server auf br-public läuft, das AP-Interface jedoch zu br-public hinzugefügt wird: 
 + 
 +  brctl addif wlan_ap 
 + 
 +===== WLAN Ad-Hoc ===== 
 + 
 +Ein Ad-Hoc Anschluss dient dazu, die Kommunikation zwischen Knoten, oftmals WLAN-Routern, herzustellen. 
 +Über diese Verbindung läuft das Mesh-Routing-Protokoll von batman-adv. 
 +Die Einrichtung kann hier wieder mit hostapd geschehen. Die SSID ist hier weniger wichtig, in Bielefeld wird mesh_v14 verwendet (14 ist die Kompatibiltätsversion des Routingprotokolls). Die BSSID muss dagegen auf "12:C0:FF:EE:C0:DE" gesetzt werden. Sonst ist kein meshen möglich. Das Ad-Hoc interface wird ebenso wie fastd_mesh zu batman-adv/bat0 hinzugefügt: 
 + 
 +  batctl if add fastd_mesh 
 + 
 +===== Bitte beachen. Firewall! ===== 
 + 
 +Der DHCP-Server auf br-public darf keine IP-Adressen im Freifunk-Netz verteilen - sondern nur über dem lokalen AP. Daher wird empfohlen per Firewall eine Reihe von Multicast- und Broadcast-Paketen auf bat0 zu filtern, so dass die Pakete nicht erst bis zum Server gelangen. Ansonsten schadet dies dem Netz und verursacht unnötig viel Datenaufkommen. Hier sind unsere Filterregeln aus unserer OpenWrt-Fimware zu finden: 
 +https://github.com/freifunk-bielefeld/firmware/blob/master/files/etc/firewall.user 
 + 
 +Zusätzlich muss das forwarding für br-public ausgestellt werden. Ansonsten kann der Knoten als Gateway missbraucht werden. 
 + 
 +===== Gateways empfangen ===== 
 + 
 +Der Mechanismus, mit dem die Adressen der Gateways für den Internetzugang empfangen werden basiert auf AlfredDer Einfachheit halber kann eine Gateway manuell gesetzt werden: 
 + 
 +  route add default gw 10.29.132.192 
 + 
 +TODO: Einrichtung von Alfred