Anbindung: Unterschied zwischen den Versionen

Aus Freifunk Franken
Wechseln zu:Navigation, Suche
(Ist an dieser Stelle falsch aufgehoben, der Link kommt später im wireguard Abschnitt wo er hingehört.)
Markierung: Manuelle Zurücksetzung
(67 dazwischenliegende Versionen von 8 Benutzern werden nicht angezeigt)
Zeile 1: Zeile 1:
{{Entwurf}}
Um am Freifunknetz teilzunehmen, musst du dich auf irgendeine Art an das Freifunknetz anbinden. Neben Selbstbauten die wir grundsätzlich sehr gut finden, da dabei immer wieder neue Ideen und Vorschläge kommen, bieten wir auch fertige Lösungen an.


= Anbindung an das Layer-3 Netz =
Die Anbindung per [[Layer3Firmware|Layer-3]] sollte auf jeden Fall bevorzugt werden, da man sich nur damit ordentlich und dezentral mit dem Freifunknetz verbinden kann.


!!ACHTUNG! ICH BEARBEITE DIE SEITE ZUM AKTUELLEN ZEITPUNKT, BITTE HIER IN DEN NÄCHSTEN STUNDEN NICHTS ÄNDERN!!
Man kann sich sowohl per Richtfunk anbinden (bevorzugt wenn möglich) und/oder per wireguard. Beide Punkte werden hier Schritt für Schritt beschrieben.
// ChristianD


= Mitmachen =
== Vorteile von Layer 3 gegen über dem alten System ==
Um am Freifunknetz teilzunehmen, musst du dich auf irgendeine Art an das Freifunknetz anbinden. Neben Selbstbauten die wir grundsätzlich sehr gut finden, da dabei immer wieder neue Ideen und Vorschläge kommen, bieten wir auch fertige Lösungen an.
 
* Man ist nicht mehr Abhängig vom zentralen keyxchange sondern hat seine Anbindung an das Freifunknetz selbst in der Hand
* Im fehlerfall einzelner Gateways kann das Routing meist darum herum angepasst werden, zumindest sind die Verbindungspartner eindeutig bekannt und können direkt selbstständig angeschrieben werden
* In unserer Firmware ist durch bessere Tunneltechnologie (wireguard) auch eine deutlich höhere Geschwindigkeit im VPN möglich
* Anbindung an vielen Richtfunknetzen ist nur mit diesem System sinnvoll möglich
* Es können eigene IP Bereiche verwendet werden, hier "hängt man sich nicht nur an fremde Gateways dran" sondern ist selbst Teilnehmer des Netzes
[...]
 
== Systeme ==
 
=== Selbst bauen ===
 
Eine Anbindung an das Layer 3 Netz kann grundsätzlich auch komplett selbst gebaut werden. Mit einem Linuxrechner (oder auch [[OpenWrt]]-Router) ist dies möglich. Dieser Weg wird speziell für Leute empfohlen die gerne experiementieren und viel von anfang an lernen wollen. Ein wenig vorwissen über Linux, Routing, etc. ist hier auf jeden Fall zu empfehlen.
Grundsätzlich muss dazu der [[Freifunk-Gateway_aufsetzen#Layer-3|Layer 3 Teil der Gatewayanleitung]] durchgegangen werden.


== Anbindung an das Layer-3 Netz ==
=== Fertige Firmware verwenden ===
Die Anbindung per [[Layer-3]] sollte auf jeden Fall bevorzugt werden, da man sich nur damit ordentlich und dezentral mit dem Freifunknetz verbinden kann.


=== Vorwissen ===
Der einfachere Weg ist, die [[Portal:Firmware#Firmware-Download|Layer 3 Firmware von Freifunk Franken]] zu verwenden. Hier sind schon alle benötigten Systeme enthalten und müssen nur noch über eine einzige Konfigurationsdatei konfiguriert werden. Die Anleitung dieser Seite bezieht sich auf diese Firmware.
* Umgang mit SSH
* Umgang mit vi
* Wissen über IP Subnetze sowohl IPv4 als auch IPv6


=== Anbindung per Richtfunk ===
== Vorwissen ==
Diese Möglichkeit wird in Franken immer häufiger angeboten und sollte das Ziel sein zu erreichen. Gucke aus dem Fenster und schau im Monitoring ob es eine Möglichkeit gibt dass du Sichtkontakt zu einer Gegenstelle hast. Wenn ja nimm Kontakt mit dem Betreiber auf um dich für eine Verbindung abzustimmen.
* Umgang mit SSH  <br> Wikipedia: [[wikipedia:de:Secure Shell|Secure Shell]], [[wikipedia:de:Secure Shell|SSH]]
* Umgang mit dem Editor "vi" <br> Wikipedia: [[wikipedia:de:vi|Editor "vi"]] <br> Wikibooks: [[wikibooks:de:Learning the vi editor|vi lernen]]
* Wissen über IP Subnetze sowohl IPv4 als auch IPv6  <br> Wikipedia: [[wikipedia:de:SSH File Transfer Protocol|SSH File Transfer Protocol]], [[wikipedia:de:Internet Protocol|IP]], [[wikipedia:de:Subnetz|Subnetz]], [[wikipedia:de:IPv4|IPv4]], [[wikipedia:de:IPv6|IPv6]],
* Grobes Verständnis von VLAN, hilfreiche Links: <br> Wikipedia: [[wikipedia:de:Virtual_Local_Area_Network|Virtual Local Area Network]] <br> Thomas Krenn: [https://www.thomas-krenn.com/de/wiki/VLAN_Grundlagen VLAN-Grundlagen]
* Port-Konfiguration von [[OpenWrt]] <br> Je nach Gerät sind die Ports unterschiedlich. Eine Auflistung dazu gibt es unter [[Layer3Firmware_Config#Hardware-Port-Belegungen|Layer-3-Firmware, Port-Belegung]]


Die einfachste Möglichkeit dich anzubinden ist, die [[Portal:Firmware#Layer-3| Layer-3 Firmware]] auf einen [[Portal:Hardware#Empfehlung_bei_Neukauf|kompatiblen Router]] {Link noch verbessern} zu installieren. An dem Router wird dann eine [[Richtfunk|Richtfunkantenne]] angeschlossen um sich mit der Gegenstelle zu verbinden.  
== Anbindung per Richtfunk ==
Diese Möglichkeit wird in Franken immer häufiger angeboten und sollte das zu erreichende Ziel sein. Sieh aus dem Fenster oder klettere auf das Dach und schau dich im Monitoring um, ob es eine Möglichkeit gibt, wie du Sichtkontakt zu einer Gegenstelle bekommts. Wenn ja, nimm Kontakt mit dem Betreiber auf um dich zwecks einer Verbindung abzustimmen.


Nach der Installatin der Layer-3 Firmware auf den Router muss diese noch [[Layer3Firmware#Typischer_Ablauf_einer_Installation|eingerichtet]] werden. Die Richtfunkantenne muss dann noch entsprechend [[VLAN_und_Richtfunk|eingerichtet]] werden und schon sollte die Verbindung stehen.
Die einfachste Möglichkeit dich anzubinden ist, die [[Portal:Firmware#Layer-3| Layer-3 Firmware]] auf einen [[Portal:Hardware#Empfehlung_bei_Neukauf|kompatiblen Router]] zu installieren. An dem Router wird dann eine [[Richtfunk|Richtfunkantenne]] angeschlossen um sich mit der Gegenstelle zu verbinden.  


==== Schritt für Schritt Anleitung ====
Nach der Installation der Layer-3 Firmware auf den Router muss diese noch [[Anbindung#Einrichtung_der_Layer_3_Firmware|eingerichtet]] werden. Auch die Richtfunkantenne muss dann noch entsprechend [[Anbindung#Anbindung_per_Richtfunk|eingerichtet]] werden und schon sollte die Verbindung stehen.
===== Vorbereitung =====


====== Hardware ======
=== Schritt für Schritt Anleitung RF ===
==== Hardware ====
Wir brauchen mindestens
Wir brauchen mindestens
* RF Hardware die mit der Gegenseite sprechen kann (in dieser Anleitung verwenden wir Ubiquiti Airmax AC Hardware, hier muss mann sich mit der Gegenseite in Verbindung setzen was diese an Hardware hat)
* je Verbindung je eine RF-Hardware, die mit der Gegenseite sprechen kann
* Einen Freifunk Router mit Layer 3 Firmware (Die Anleitung beginnt mit dem einrichten, für das eigentliche flashen hier gucken)
** Achtung bei den meisten Herstellern (z.b. Ubiquiti Airmax) muss die Hardware zur Gegenseite passen, es wird hier proprietäre Software verwendet die nur mit dem gleichen Hersteller funktioniert.
** In diesem Beispiel wird ein EP-R6 als Freifunkrouter verwendet (baugleich zum ER-X-SFP) an dem per PoE eine NBE-5AC-19 dran hängt
* einen Freifunk-Router mit Layer-3-Firmware (Die Anleitung beginnt mit dem Einrichten, für das eigentliche Flashen [[Portal:Firmware|hier]] nachsehen)
* Genug Netzwerkkabel um alles zu verkabeln
* genug Netzwerkkabel um alles zu verkabeln
* Stromversorgung
* Stromversorgung
* Einen PC um alles einzurichten (in diesem Fall verwende ich Linux, ich versuche es aber so zu erklären das man es auf Windows / MacOS hoffentlich anpassen kann)
* einen PC um alles einzurichten (in diesem Fall verwende ich Linux, ich versuche es aber so zu erklären das man es auf Windows / MacOS hoffentlich anpassen kann)
** Man muss wissen wie man IP Adressen auf dem PC einstellt
** Man muss wissen, wie man IP Adressen auf dem PC einstellt
** Man muss wissen wie man sich per SSH mit dem PC mit Geräte verbindet
** Man muss wissen, wie man sich per SSH vom PC aus mit anderen Geräten verbindet
** Man benötigt einen Webbrowser
** Man benötigt einen Webbrowser
* Von der Gegenseite ein zugewiesenes VLAN auf dem Babel gesprochen wird, dazu mit der Gegenseite in Kontakt treten
* von der Gegenseite ein zugewiesenes VLAN auf dem Babel gesprochen wird (dazu mit der Gegenseite in Kontakt treten)
* WPA2 Kennwort der Gegenseite (im Normalfall sind unsere Richtfunkstrecken verschlüsselt)


====== IP Adressen ======
==== IP Adressen ====
Danach müssen wir uns ein Subnetz im Wiki zuweisen.  
Danach müssen wir uns ein Subnetz im Wiki zuweisen.  


Public IPv6:
Public IPv6:
Einfach sich hier einen Provider aussuchen und ein Subnetz klicken https://wiki.freifunk-franken.de/w/IPv6
Einfach sich hier einen Provider aussuchen und ein Subnetz klicken: https://wiki.freifunk-franken.de/w/IPv6


ULA Ipv6:
ULA Ipv6:
Zeile 50: Zeile 66:
IPv4:
IPv4:
Einfach auf dieser Seite sich ein Netz herausschneiden und sich selbst zuweisen https://wiki.freifunk-franken.de/w/Portal:Netz
Einfach auf dieser Seite sich ein Netz herausschneiden und sich selbst zuweisen https://wiki.freifunk-franken.de/w/Portal:Netz
Das Netz so groß wie nötig aber so klein wie möglich wählen. Für die meisten Standorte sollte ein /27 locker ausreichen. Für die Richtfunkantenne können wir hier gleich eine feste IP Adresse reservieren die wir nicht im DHCP Pool verwenden.


====== Richtfunkantenne einrichten und verbinden ======
Das IPv4 Netz so groß wie nötig aber so klein wie möglich wählen. Für die meisten Standorte sollte ein /27 locker ausreichen. Für die Richtfunkantenne können wir hier gleich eine feste IP Adresse reservieren die wir nicht im DHCP Pool verwenden.
Zuerst hängt man die Richtfunkantenne so hin, das sie vermutlich zur Gegenseite eine Verbindung herstellen kann (Augenmaß reicht erstmal).
Die Antenne schließt man nun an Strom und an den PC an.
Ich habe dazu den PoE Adapter der bei der NBE-5AC-19 dabei lag, direkt per LAN Kabel mit dem PoE Ausgang der Antenne verbunden.
Der LAN Ausgang am PoE Adapter wird an dem PC angeschlossen.
Nun sollte die Antenne das blinken anfangen und der PC eine neue Netzwerkverbindung erkennen. Da die Ubiquiti Hardware im Auslieferungszustand die IP Adresse 192.168.1.20 hat, geben wir dem PC manuell die IP Adresse 192.168.1.22 mit der Subnetzmaske 255.255.255.0. Danach sollte man im Browser auf 192.168.1.20 zugreifen können. Die folgende Warnung können wir ignorieren.


[[Datei:RFSbS1.png|600px]]
In diesem Beispiel wird dieses Netz verwendet:


Device Country stellen wir auf Germany (damit werden die Funkregulierungen auf Deutschland gestellt) und die Sprache habt ihr freie Wahl (hier handelt es sich nur um die Sprache im WebUI ich nehme dazu "Deutsch").  
[[Datei:RfFSbS9.png|600px]]


[[Datei:RFSbS2.png|600px]]
https://wiki.freifunk-franken.de/mediawiki/index.php?title=Portal%3ANetz&type=revision&diff=17850&oldid=17734


Nach einem Klick auf Continue müsst ihr noch das Passwort ändern.  
Zum berechnen von Subnetzen eignet sich z.B. diese Webseite sehr gut: http://jodies.de/ipcalc?host=10.83.227.224&mask1=27&mask2=


[[Datei:RFSbS3.png|600px]]
==== Richtfunkantenne einrichten und verbinden ====


Nach dem Klick auf speichern solltet ihr im WebUI landen. Sollte die Firmware sehr als sein (7.x sieht man links oben) müsst ihr die Firmware manuell aktualisieren, falls ihr da nicht weiter kommt, meldet euch auf der Mailingliste.
Dies ist von Hersteller zu Hersteller sehr unterschiedlich. Hier sollen verschiedene Anleitungen verlinkt werden:


[[Datei:RFSbS4.png|600px]]
* [[Anbindung/UbiquitiAirmax|Ubiquiti Airmax]]
* [[Anbindung/Mikrotik60GHz|Mikrotik60GHz - Draft!]]


Als nächstes bauen wir die Richtfunkverbindung zur Gegenstation auf. Dazu klicken wir unter Settings auf wireless und landen auf dieser Seite.  
Falls ihr mehrere Gegenstellen seht, könnt ihr natürlich auch mehrere Antennen verwenden um euch gleichzeitig zu mehreren Gegenstellen zu verbinden. So habt ihr mehrere Möglichkeiten in das Richtfunknetz zu kommen. Sollte eine Verbindung ausfallen kann eine andere übernehmen oder es können verschiedene Datenpakete an verschiedene Gegenstellen geroutet werden.
Ebenfalls sollt ihr natürlich auch anderen Personen Zugang zu eurem Netz ermöglichen. Lasst also immer noch etwas Platz frei um auch weitere Antennen montieren zu können wenn dies möglich ist.


[[Datei:RFSbS5.png|600px]]
== Anbindung per wireguard ==


Je nachdem ob die Gegenseite eine PtP (PointToPoint) Verbindung oder PtMP (PointToMultiPoint) anbietet, stellen wir entweder auf Station PtP oder Station PtMP. In meinem Fall handelt es sich um eine PtMP Verbindung. Danach klicken wir auf auswählen und hier werden nun alle Frequenzen abgescant und alle Nachbarn angezeigt. Bei den Nachbar mit dem wir uns verbinden wollen klicken wir links auf den kleinen Punkt damit er ausgefüllgt wird (hier ufb.ost.freifunk) und klicken unten auf auswählen.
=== Schritt für Schritt Anleitung wg ===


[[Datei:RFSbS6.png|600px]]
Hierzu benötigt man erst jemanden, der einen ermöglicht sich mit dem Freifunknetz zu verbinden. Verschiedene Personen sind [[Portal:Layer3Peering|hier]] aufgelistet oder man kennt bereits jemanden persönlich.


Danach müssen wir noch den WPA2 Key eingeben den uns die Gegenseite übermittelt hat.
==== Key generieren ====
 
[[Datei:RFSbS7.png|600px]]
 
Danach ein klick auf Save changes und die Einstellungen werden übernommen. Nach ein paar Sekunden sollte die Seite wieder erscheinen. Danach sollte im Dashboard bereits die Verbindung angezeigt werden. Wichtig sind hier die Empfangswerte auf beide Seiten. In meinem Beispiel sind das -55 und -62dBm. Diese Werte sollten größer als -80dBm sein um überhaupt sinnvoll arbeiten zu können, optimal wären Werte um die -50dBm, je nach Distanz ist dies aber natürlich nicht immer möglich. Auf eine Verbindung schlechter als -80dBm sollte verzichtet werden. Jetzt kann auch direkt versucht werden die Antenne auszurichten um die möglichst besten Empfangswerte zu haben.
 
[[Datei:RFSbS8.png|600px]]
 
====== IP Adresse und VLAN der RF Verbindung einstellen ======
 
Als nächstes müssen wir der Richtfunkantenne noch die IP Adresse geben die wir oben für sie reserviert haben. Ich habe hier als Test das 10.83.227.224/27 Netz reserviert, dem Gateway (kommt später) die 225 gegeben, der Antenne 226 und den DHCP Pool ab 230 gestartet
 
[[Datei:RfFSbS9.png|600px]]
 
https://wiki.freifunk-franken.de/mediawiki/index.php?title=Portal%3ANetz&type=revision&diff=17850&oldid=17734


Zum berechnen von Subnetzen eignet sich z.b. diese Webseite sehr gut: http://jodies.de/ipcalc?host=10.83.227.224&mask1=27&mask2=
Für [https://www.wireguard.com/ wireguard] wird ein Key benötigt. Man erhält von seinem Partner einen Publickey und muss ihm einen Publickey weitergeben wozu man den eigenen Privatkey privat hält (nicht weitergeben). Wie man ein eigenes Keypaar generieren kann steht [[Layer3Firmware#Generieren_der_Keys_f.C3.BCr_WireGuard|hier]]


Ebenfalls muss uns ein VLAN vom Nachbar genannt werden, auf dem per Richtfunk Babel ankommt, in meinem Fall ist es die VLAN ID 7.
== Einrichtung der Layer 3 Firmware ==
Egal für welche Anbindung man sich entscheidet (man kann natürlich auch beides machen), die Einrichtung der Layer 3 Firmware ist immer sehr ähnlich und soll hier Schritt für Schritt beschrieben werden


Wir klicken nun auf dem Webinterface der Antenne wieder auf Settings und oben im Reiter auf Network
=== Schritt für Schritt Anleitung der Konfiguration ===


[[Datei:RfFSbS10.png|600px]]
Nachdem man die Firmware [[Portal:Firmware|geflasht]] hat, sollte man sich zuerst mal per [[Anleitungen#SSH|SSH verbinden]]. Wir sollten uns mit einem Port verbinden, der später auch noch ein Clientport ist, damit nach Ändern der Einstellungen nicht alles umgesteckt werden muss. Wenn dies geklappt hat, kommen wir zur Einrichtung.


als erstes stellen wir bei Configuration Mode auf Erweitert
Zuerst müssen wir eine Datei erstellen, die die Gateway-Konfiguration enthält. Dafür benutzen wir den Editor [https://de.wikipedia.org/wiki/Vi vi]. Die unten aufgeführte Beispielkonfiguration die sowohl per Richtfunk über VLAN 7 (passt dann zum Setup der Anleitung von der [[Anbindung#Richtfunkantenne_einrichten_und_verbinden|Ubiquiti Airmax Hardware]]) als auch eine Verbindung per [https://de.wikipedia.org/wiki/WireGuard WireGuard] erstellt wird. Die Beispielkonfiguration muss auf die eigenen Bedürfnisse angepasst werden. Nutzt man z.b. kein [https://de.wikipedia.org/wiki/WireGuard WireGuard], so lässt man diesen Abschnitt einfach weg. Hat man mehrere [https://de.wikipedia.org/wiki/WireGuard WireGuard] Partner, muss dieser Block einfach mehrfach eingefügt werden. Hat man mehrere VLANs für mehrere Richtfunkverbindungen, so muss man diese Blöcke für jedes VLAN anlegen.


[[Datei:RfFSbS11.png|600px]]
Folgendes wissen wird benötigt:
* Welcher interne Port an welchem Anschluss außen am Router liegt. Eine Übersicht findet ihr [[Layer3Firmware_Config#Hardware-Port-Belegungen|hier]].
* Registrierte [[Anbindung#IP_Adressen|IP Adressen]]
* [[DNS#Andere_DNS_Server_nutzen|DNS Server]] im Freifunknetz


Die nächsten Schritte müssen unbedingt in einen Schritt gemacht werden und es darf dazwischen nicht auf speichern geklickt werden, sonst sperrt man sich von der Antenne aus, in diesem Fall muss man sie reseten und nochmal von vorne anfangen. Als erstes scrollt man ein Stück nach unten bis bridge networks
Hier ein Beispiel der Konfigurationsdatei /etc/config/gateway :
<pre>
config gateway 'meta'
#Aktuell haben wir Version 2
        option config_version '2'


[[Datei:RfFSbS12.png|600px]]
config gateway
      #hier kann frei ein Name gewählt werden
      option name 'MEINGATEWAYNAME'


Dort auf den kleinen Stift bei Actions klicken und auf dem neuen Fenster das LAN0 (dort steckt aktuell unser PC dran) aus der Bridge entfernen indem man das LAN0 Interface auswählt und entfernen klickt
#Konfigurationsabschnitt für das VLAN 1. Das VLAN 1 ist das Clientnetz.
config vlan '1'
option comment 'client'
# Hier trägt man die LAN-Ports ein. 
        option ports '2 3 4 5'


[[Datei:RfFSbS13.png|600px]]
#Konfigurationsabschnitt für das VLAN 2. Das VLAN 2 ist hier der WAN Anschluss. Über den WAN Anschluss wird der Router mit dem privaten Netz verbunden und kann einen Tunnel über den vorhandenen Internetanschluss aufbauen.
config vlan '2'
      option comment 'wan'
      #Hier die Portnummer eintragen, die in Portübersicht für deinen Router unter WAN eingetragen ist.
      option ports '1'


Danach auf ok klicken. Anschließend wieder nach oben scrollen und bei Managment Interface LAN0 einstellen, damit die Antenne wieder auf dem LAN Port erreichbar ist (vorher war sie das über die Bridge). Danach noch IP Adresse, Subnetmask, Gateway und DNS Server (ist später das Gateway selbst) eintragen:
#Konfigurationsabschnitt für das VLAN 7.
config vlan '7'
option comment 'RICHTFUNK'
#Übersicht welcher Port an welchen Port extern anliegt ist je nach Modell unterschiedlich und findet man unter den Link oben, da wir auf dem Richtfunkgerät den Port getagged haben, müssen wir hier ein t an die Portnummer anhängen
        option ports '5t'
#hier konfigurieren wir das Richtfunk für Babel, der Name muss der gleiche sein wie oben bei VLAN 7
config babelpeer 'RICHTFUNK'
        #weil weiter oben für Richtfunk vlan 7 war, muss hier eine 7 hin
        option vlan '7'
#default Wert
        option type 'wired'
#auf Rücksprache mit den Richtfunkpartner anpassen, erstmal 16384 belassen, wird dann angepasst wenn alles funktioniert.
        option rxcost '16384'


[[Datei:RfFSbS14.png|600px]]
#Hier konfigurieren wir das Clientinterface bzw. Clientnetz
config client
#weil weiter oben Client vlan 1 war, muss hier eine 1 hin
        option vlan '1'
#hier kommt die IPv4 Adresse des Gateways mit Subnetz Maske rein
        option ipaddr '10.83.227.225'
#Hier kommt die public IPv6 Adresse des Gateways mit Subnetz Maske rein. Hier könnt ihr die erste Adresse des euch zugewiesenen Subnetzes nehmen.
        #Solltet ihr mal die Konfig teilen müssen, so solltet ihr den Präfix der public IP Adresse aus Datenschutzgründen ändern
        list ip6addr '2001:db8::1/64'
# hier kommt die ULA IPv6 Adresse bzw. das Subnetz des des Gateways rein
        list ip6addr '2001:db8::/64'
# hier kommt die Startadresse vom DHCP rein
        option dhcp_start '10.83.227.230'
        # hier kannst du deine SSID frei wählen
        option essid 'bla.freifunk'
# hier kannst du den Kanal für 2,4GHz frei wählen
        option chan2ghz '13'
# hier kannst du den Kanal für 5GHz frei wählen
        option chan5ghz '36'


Jetzt darf auf speichern gedrückt werden und die Antenne sollte neu booten. Da wir nun die IP Adresse geändert haben, ist die Antenne natürlich nun nicht mehr auf 192.168.1.20 erreichbar sondern auf ihrer neuen IP. Dazu muss natürlich auch der PC im selben Subnetz sein. In meinem Fall gebe ich dem PC also aktuell die nicht benutzte IP 10.83.227.227/27 und kann die Antenne dann wieder unter 10.83.227.226 erreichen. Jetzt loggen wir uns wieder in die Antenne ein und müssen noch das VLAN für Babel einstellen. Dazu gehen wir wieder unter Settings auf die Network Seite und scrollen nach unten bis VLAN Networks. Dort klicken wir auf Add und geben im neuen Fenster unsere VLAN ID ein, dies machen wir 2x, einmal mit dem WLAN0 Interface und einmal mit dem LAN0 Interface (Babel kommt per Funk auf dem VLAN 7 und wird auf das Kabel per VLAN 7 weitergegeben, diese Bridge legen wir gleich an.
#Konfigurastionsabschnitt fuer DNS. Die Beispiele sollten funktionieren.
config dns
list server 'fd43:5602:29bd:ffff:a:a:a:a'
list server 'fd43:5602:29bd:ffff::42'
list server '10.83.252.11'
list server '10.83.252.0'


[[Datei:RfFSbS15.png|600px]]
#Konfigurationsabschnitt fuer einen WireGuard Tunnel
# hier kann der Name frei gewählt werden für die wireguard Verbindung, es gibt eine Zeichenbegrenzung ich glaub 12 Zeichen lasst es einfach kurz
config wireguardpeer 'NAME'
#Der Hostname der Gegenseite, es kann auch eine IPv4 oder IPv6 Adresse (ohne []) eingetragen werden
        option endpoint_host 'example.com'
#Port der Gegenseite bzw. deines Peering-Partners
        option endpoint_port '31337'
#Defaultwert stehen lassen
        option persistent_keepalive '20'
#Hier muss der public Key der GEGENSEITE bzw. deines Peering-Partners eingetragen werden
        option remote_public_key '/AB0Y2gSqdbdsuMWsEu+NQf/d9lHdSgTOF5IQj/4Mk4='
# sollte keinesfalls kleiner als 4096 eingestellt werden, um die Verbindung abzuwerten wenn man seinen eigenen Anschluss nur als Backup verwenden will kann er erhöht werden bis max 16384
        option rxcost '4096'
option mtu '1412' # Nur bei Verbindungen mit MTU 1492 nötig, zur Sicherheit so lassen
option local_private_key 'GCRmvTmmuxCIRHZ4zADjXitUj0AOcR4ZX48fC3j/60Y=' der eigene private Key
</pre>


am Ende sollte das ganze dann so aussehen:
Wir verbinden uns jetzt per SSH mit dem Router so das wir eine Konsole haben:


[[Datei:RfFSbS16.png|600px]]
Anschließend muss die oben erstellte Konfiguration als File unter /etc/config/gateway gespeichert werden. Aktuell ist als Editor nur vi installiert.  


Nun legen wir noch eine Bridge an und stecken dort die 2 neuen Interfaces WLAN0.7 und LAN0.7 rein, damit alles was auf WLAN0.7 rein kommt auf WLAN0.7 weitergegeben wird, bzw. auch andersherum. Dazu nach unten scrollen bis Bridge Network auf +add klicken und im neuen Fenster die 2 Interfaces WLAN0.7 und LAN0.7 hinzufügen, sollte dann so aussehen
<pre>
vi /etc/config/gateway
</pre>


[[Datei:RfFSbS17.png|600px]]
Da die Datei noch leer ist, erscheint ein leerer Bildschirm mit ganz vielen ~ am Zeilenanfang.


danach auf Ok klicken und save changes. Die Einrichtung der Antenne ist damit fertig.
Mit der Taste "i" auf der Tastatur kommt man in den "insert Mode" und kann nun Text schreiben. Erkennbar ist der Insertmode Anhand eines großen I ganz links unten. Nun kann man die vorher erstelle config Datei einfach herienkopieren. Dazu erst im Editor den ganzen Text kopieren und mit der rechten Maustaste in das Fenster klicken. Anschließend den Insertmode mit der "ESC" Taste verlassen (das "I" unten links wir zu einem "-") und dann :w eingeben und Enter drücken zum speichern, mit :q Enter kann man den Editor verlassen. Wenn man nun 
<pre>
vi /etc/config/gateway
</pre>
eingibt, kann man die Datei wieder aufmachen und der Inhalt sollte da sein, danach mit :q Enter einfach wieder rausgehen.
Nun sollten wir wieder eine Konsole vor uns haben, wir müssen diese Konfiguration nun noch speichern. Dazu geben wir
<pre>
configure-layer3 -c
</pre>
ein und drücken Enter.
Es sollte nun kein Fehler kommen und die Einstellungen gespeichert werden. Sollte ein Fehler kommen muss man sich die Konfigurationsdatei nochmal angucken ob man einen Fehler gemacht hat (z.b. wird gerne am Zeilenende ein ' vergessen).
Wenn dies geklappt hat, kann man einen Testmode ausführen, dadurch werden alle Einstellungen angewendet aber nach 200 Sekunden wieder zurück gesetzt. Wenn man sich also ausgesperrt hat, kommt man nach 200 Sekunden (oder einen Neustart des Gerätes) wieder auf dem alten Weg drauf. Wir geben also
<pre>
configure-layer3 -t
</pre>
ein, nach einigen Sekunden haben wir entweder wieder eine Konsole oder fliegen vom Router herunter. Im 2. Fall sollten wir uns wieder neu verbinden. Wenn dies geklappt hat, müssen wir den Timer abbrechen damit nach 200 Sekunden nicht alle Einstellungen zurück gesetzt werden, dies geschieht mit
<pre>
killall configure-layer3
</pre>
Anschließend müssen wir diese Einstellungen noch rebootfest schreiben, dies geschieht mit:
<pre>
configure-layer3 -a
</pre>


=== Anbindung per wireguard ===
Anschließend ist der Router konfiguriert und sollte funktionieren
Die einfachste Möglichkeit dich anzubinden ist, die [[Portal:Firmware#Layer-3| Layer-3 Firmware]] auf einen [[Portal:Hardware#Empfehlung_bei_Neukauf|kompatiblen Router]] {Link noch verbessern} zu installieren. Es muss noch [[Portal:Layer3Peering|ein Partner für den wireguard Endpunkt gesucht]] werden und dann muss die Layer-3 Firmware noch [[Layer3Firmware#Typischer_Ablauf_einer_Installation|eingerichtet]] werden


== Anbindung per Layer-2 ==
= Anbindung per Layer-2 =
Die Anbindung per [[Layer-2]] war früher die einzige Möglichkeit sich mit dem Freifunknetz zu verbinden. Leider ist man hier meist von zentralen Stellen wie den keyxchange abhängig. Da Freifunk sich nicht von zentralen Stellen abhängig machen soll, raten wir mittlerweile von dieser Möglichkeit ab.
Die Anbindung per [[Layer-2]] war früher die einzige Möglichkeit sich mit dem Freifunknetz zu verbinden. Leider ist man hier meist von zentralen Stellen wie den keyxchange abhängig. Da Freifunk sich nicht von zentralen Stellen abhängig machen soll, raten wir mittlerweile von dieser Möglichkeit ab.


=== Vorwissen ===
== Vorwissen ==


=== Anbindung per fastd ===
== Anbindung per fastd ==


=== Anbindung per mesh ===
== Anbindung per mesh ==

Version vom 31. Januar 2024, 20:43 Uhr

Um am Freifunknetz teilzunehmen, musst du dich auf irgendeine Art an das Freifunknetz anbinden. Neben Selbstbauten die wir grundsätzlich sehr gut finden, da dabei immer wieder neue Ideen und Vorschläge kommen, bieten wir auch fertige Lösungen an.

Anbindung an das Layer-3 Netz

Die Anbindung per Layer-3 sollte auf jeden Fall bevorzugt werden, da man sich nur damit ordentlich und dezentral mit dem Freifunknetz verbinden kann.

Man kann sich sowohl per Richtfunk anbinden (bevorzugt wenn möglich) und/oder per wireguard. Beide Punkte werden hier Schritt für Schritt beschrieben.

Vorteile von Layer 3 gegen über dem alten System

  • Man ist nicht mehr Abhängig vom zentralen keyxchange sondern hat seine Anbindung an das Freifunknetz selbst in der Hand
  • Im fehlerfall einzelner Gateways kann das Routing meist darum herum angepasst werden, zumindest sind die Verbindungspartner eindeutig bekannt und können direkt selbstständig angeschrieben werden
  • In unserer Firmware ist durch bessere Tunneltechnologie (wireguard) auch eine deutlich höhere Geschwindigkeit im VPN möglich
  • Anbindung an vielen Richtfunknetzen ist nur mit diesem System sinnvoll möglich
  • Es können eigene IP Bereiche verwendet werden, hier "hängt man sich nicht nur an fremde Gateways dran" sondern ist selbst Teilnehmer des Netzes

[...]

Systeme

Selbst bauen

Eine Anbindung an das Layer 3 Netz kann grundsätzlich auch komplett selbst gebaut werden. Mit einem Linuxrechner (oder auch OpenWrt-Router) ist dies möglich. Dieser Weg wird speziell für Leute empfohlen die gerne experiementieren und viel von anfang an lernen wollen. Ein wenig vorwissen über Linux, Routing, etc. ist hier auf jeden Fall zu empfehlen. Grundsätzlich muss dazu der Layer 3 Teil der Gatewayanleitung durchgegangen werden.

Fertige Firmware verwenden

Der einfachere Weg ist, die Layer 3 Firmware von Freifunk Franken zu verwenden. Hier sind schon alle benötigten Systeme enthalten und müssen nur noch über eine einzige Konfigurationsdatei konfiguriert werden. Die Anleitung dieser Seite bezieht sich auf diese Firmware.

Vorwissen

Anbindung per Richtfunk

Diese Möglichkeit wird in Franken immer häufiger angeboten und sollte das zu erreichende Ziel sein. Sieh aus dem Fenster oder klettere auf das Dach und schau dich im Monitoring um, ob es eine Möglichkeit gibt, wie du Sichtkontakt zu einer Gegenstelle bekommts. Wenn ja, nimm Kontakt mit dem Betreiber auf um dich zwecks einer Verbindung abzustimmen.

Die einfachste Möglichkeit dich anzubinden ist, die Layer-3 Firmware auf einen kompatiblen Router zu installieren. An dem Router wird dann eine Richtfunkantenne angeschlossen um sich mit der Gegenstelle zu verbinden.

Nach der Installation der Layer-3 Firmware auf den Router muss diese noch eingerichtet werden. Auch die Richtfunkantenne muss dann noch entsprechend eingerichtet werden und schon sollte die Verbindung stehen.

Schritt für Schritt Anleitung RF

Hardware

Wir brauchen mindestens

  • je Verbindung je eine RF-Hardware, die mit der Gegenseite sprechen kann
    • Achtung bei den meisten Herstellern (z.b. Ubiquiti Airmax) muss die Hardware zur Gegenseite passen, es wird hier proprietäre Software verwendet die nur mit dem gleichen Hersteller funktioniert.
  • einen Freifunk-Router mit Layer-3-Firmware (Die Anleitung beginnt mit dem Einrichten, für das eigentliche Flashen hier nachsehen)
  • genug Netzwerkkabel um alles zu verkabeln
  • Stromversorgung
  • einen PC um alles einzurichten (in diesem Fall verwende ich Linux, ich versuche es aber so zu erklären das man es auf Windows / MacOS hoffentlich anpassen kann)
    • Man muss wissen, wie man IP Adressen auf dem PC einstellt
    • Man muss wissen, wie man sich per SSH vom PC aus mit anderen Geräten verbindet
    • Man benötigt einen Webbrowser
  • von der Gegenseite ein zugewiesenes VLAN auf dem Babel gesprochen wird (dazu mit der Gegenseite in Kontakt treten)
  • WPA2 Kennwort der Gegenseite (im Normalfall sind unsere Richtfunkstrecken verschlüsselt)

IP Adressen

Danach müssen wir uns ein Subnetz im Wiki zuweisen.

Public IPv6: Einfach sich hier einen Provider aussuchen und ein Subnetz klicken: https://wiki.freifunk-franken.de/w/IPv6

ULA Ipv6: Einfach auf dieser Seite sich ein /64 herausschneiden und sich selbst zuweisen: https://wiki.freifunk-franken.de/w/Portal:Netz/IPv6

IPv4: Einfach auf dieser Seite sich ein Netz herausschneiden und sich selbst zuweisen https://wiki.freifunk-franken.de/w/Portal:Netz

Das IPv4 Netz so groß wie nötig aber so klein wie möglich wählen. Für die meisten Standorte sollte ein /27 locker ausreichen. Für die Richtfunkantenne können wir hier gleich eine feste IP Adresse reservieren die wir nicht im DHCP Pool verwenden.

In diesem Beispiel wird dieses Netz verwendet:

https://wiki.freifunk-franken.de/mediawiki/index.php?title=Portal%3ANetz&type=revision&diff=17850&oldid=17734

Zum berechnen von Subnetzen eignet sich z.B. diese Webseite sehr gut: http://jodies.de/ipcalc?host=10.83.227.224&mask1=27&mask2=

Richtfunkantenne einrichten und verbinden

Dies ist von Hersteller zu Hersteller sehr unterschiedlich. Hier sollen verschiedene Anleitungen verlinkt werden:

Falls ihr mehrere Gegenstellen seht, könnt ihr natürlich auch mehrere Antennen verwenden um euch gleichzeitig zu mehreren Gegenstellen zu verbinden. So habt ihr mehrere Möglichkeiten in das Richtfunknetz zu kommen. Sollte eine Verbindung ausfallen kann eine andere übernehmen oder es können verschiedene Datenpakete an verschiedene Gegenstellen geroutet werden. Ebenfalls sollt ihr natürlich auch anderen Personen Zugang zu eurem Netz ermöglichen. Lasst also immer noch etwas Platz frei um auch weitere Antennen montieren zu können wenn dies möglich ist.

Anbindung per wireguard

Schritt für Schritt Anleitung wg

Hierzu benötigt man erst jemanden, der einen ermöglicht sich mit dem Freifunknetz zu verbinden. Verschiedene Personen sind hier aufgelistet oder man kennt bereits jemanden persönlich.

Key generieren

Für wireguard wird ein Key benötigt. Man erhält von seinem Partner einen Publickey und muss ihm einen Publickey weitergeben wozu man den eigenen Privatkey privat hält (nicht weitergeben). Wie man ein eigenes Keypaar generieren kann steht hier

Einrichtung der Layer 3 Firmware

Egal für welche Anbindung man sich entscheidet (man kann natürlich auch beides machen), die Einrichtung der Layer 3 Firmware ist immer sehr ähnlich und soll hier Schritt für Schritt beschrieben werden

Schritt für Schritt Anleitung der Konfiguration

Nachdem man die Firmware geflasht hat, sollte man sich zuerst mal per SSH verbinden. Wir sollten uns mit einem Port verbinden, der später auch noch ein Clientport ist, damit nach Ändern der Einstellungen nicht alles umgesteckt werden muss. Wenn dies geklappt hat, kommen wir zur Einrichtung.

Zuerst müssen wir eine Datei erstellen, die die Gateway-Konfiguration enthält. Dafür benutzen wir den Editor vi. Die unten aufgeführte Beispielkonfiguration die sowohl per Richtfunk über VLAN 7 (passt dann zum Setup der Anleitung von der Ubiquiti Airmax Hardware) als auch eine Verbindung per WireGuard erstellt wird. Die Beispielkonfiguration muss auf die eigenen Bedürfnisse angepasst werden. Nutzt man z.b. kein WireGuard, so lässt man diesen Abschnitt einfach weg. Hat man mehrere WireGuard Partner, muss dieser Block einfach mehrfach eingefügt werden. Hat man mehrere VLANs für mehrere Richtfunkverbindungen, so muss man diese Blöcke für jedes VLAN anlegen.

Folgendes wissen wird benötigt:

  • Welcher interne Port an welchem Anschluss außen am Router liegt. Eine Übersicht findet ihr hier.
  • Registrierte IP Adressen
  • DNS Server im Freifunknetz

Hier ein Beispiel der Konfigurationsdatei /etc/config/gateway :

config gateway 'meta'
	#Aktuell haben wir Version 2
        option config_version '2' 

config gateway
       #hier kann frei ein Name gewählt werden
       option name 'MEINGATEWAYNAME' 

#Konfigurationsabschnitt für das VLAN 1. Das VLAN 1 ist das Clientnetz.
config vlan '1' 
	option comment 'client' 
	# Hier trägt man die LAN-Ports ein.  
        option ports '2 3 4 5' 

#Konfigurationsabschnitt für das VLAN 2. Das VLAN 2 ist hier der WAN Anschluss. Über den WAN Anschluss wird der Router mit dem privaten Netz verbunden und kann einen Tunnel über den vorhandenen Internetanschluss aufbauen. 
config vlan '2' 
       option comment 'wan' 
       #Hier die Portnummer eintragen, die in Portübersicht für deinen Router unter WAN eingetragen ist.
       option ports '1' 

#Konfigurationsabschnitt für das VLAN 7.
config vlan '7'
	option comment 'RICHTFUNK' 
	#Übersicht welcher Port an welchen Port extern anliegt ist je nach Modell unterschiedlich und findet man unter den Link oben, da wir auf dem Richtfunkgerät den Port getagged haben, müssen wir hier ein t an die Portnummer anhängen
        option ports '5t' 
#hier konfigurieren wir das Richtfunk für Babel, der Name muss der gleiche sein wie oben bei VLAN 7
config babelpeer 'RICHTFUNK' 
        #weil weiter oben für Richtfunk vlan 7 war, muss hier eine 7 hin	
        option vlan '7' 
	#default Wert
        option type 'wired'
	#auf Rücksprache mit den Richtfunkpartner anpassen, erstmal 16384 belassen, wird dann angepasst wenn alles funktioniert.
        option rxcost '16384' 

#Hier konfigurieren wir das Clientinterface bzw. Clientnetz
config client
	#weil weiter oben Client vlan 1 war, muss hier eine 1 hin
        option vlan '1' 
	#hier kommt die IPv4 Adresse des Gateways mit Subnetz Maske rein
        option ipaddr '10.83.227.225' 
	#Hier kommt die public IPv6 Adresse des Gateways mit Subnetz Maske rein. Hier könnt ihr die erste Adresse des euch zugewiesenen Subnetzes nehmen.
        #Solltet ihr mal die Konfig teilen müssen, so solltet ihr den Präfix der public IP Adresse aus Datenschutzgründen ändern 
        list ip6addr '2001:db8::1/64' 
	# hier kommt die ULA IPv6 Adresse bzw. das Subnetz des des Gateways rein
        list ip6addr '2001:db8::/64' 
	# hier kommt die Startadresse vom DHCP rein
        option dhcp_start '10.83.227.230' 
        # hier kannst du deine SSID frei wählen
        option essid 'bla.freifunk' 
	# hier kannst du den Kanal für 2,4GHz frei wählen
        option chan2ghz '13' 
	 # hier kannst du den Kanal für 5GHz frei wählen
        option chan5ghz '36'

#Konfigurastionsabschnitt fuer DNS. Die Beispiele sollten funktionieren.
config dns 
	list server 'fd43:5602:29bd:ffff:a:a:a:a' 
	list server 'fd43:5602:29bd:ffff::42' 
	list server '10.83.252.11' 
	list server '10.83.252.0' 

#Konfigurationsabschnitt fuer einen WireGuard Tunnel
# hier kann der Name frei gewählt werden für die wireguard Verbindung, es gibt eine Zeichenbegrenzung ich glaub 12 Zeichen lasst es einfach kurz
config wireguardpeer 'NAME' 
	#Der Hostname der Gegenseite, es kann auch eine IPv4 oder IPv6 Adresse (ohne []) eingetragen werden 
        option endpoint_host 'example.com' 
	#Port der Gegenseite bzw. deines Peering-Partners
        option endpoint_port '31337' 
	 #Defaultwert stehen lassen
        option persistent_keepalive '20'
	#Hier muss der public Key der GEGENSEITE bzw. deines Peering-Partners eingetragen werden
        option remote_public_key '/AB0Y2gSqdbdsuMWsEu+NQf/d9lHdSgTOF5IQj/4Mk4='
	# sollte keinesfalls kleiner als 4096 eingestellt werden, um die Verbindung abzuwerten wenn man seinen eigenen Anschluss nur als Backup verwenden will kann er erhöht werden bis max 16384
        option rxcost '4096' 
	option mtu '1412' # Nur bei Verbindungen mit MTU 1492 nötig, zur Sicherheit so lassen
	option local_private_key 'GCRmvTmmuxCIRHZ4zADjXitUj0AOcR4ZX48fC3j/60Y=' der eigene private Key

Wir verbinden uns jetzt per SSH mit dem Router so das wir eine Konsole haben:

Anschließend muss die oben erstellte Konfiguration als File unter /etc/config/gateway gespeichert werden. Aktuell ist als Editor nur vi installiert.

vi /etc/config/gateway

Da die Datei noch leer ist, erscheint ein leerer Bildschirm mit ganz vielen ~ am Zeilenanfang.

Mit der Taste "i" auf der Tastatur kommt man in den "insert Mode" und kann nun Text schreiben. Erkennbar ist der Insertmode Anhand eines großen I ganz links unten. Nun kann man die vorher erstelle config Datei einfach herienkopieren. Dazu erst im Editor den ganzen Text kopieren und mit der rechten Maustaste in das Fenster klicken. Anschließend den Insertmode mit der "ESC" Taste verlassen (das "I" unten links wir zu einem "-") und dann :w eingeben und Enter drücken zum speichern, mit :q Enter kann man den Editor verlassen. Wenn man nun

vi /etc/config/gateway

eingibt, kann man die Datei wieder aufmachen und der Inhalt sollte da sein, danach mit :q Enter einfach wieder rausgehen. Nun sollten wir wieder eine Konsole vor uns haben, wir müssen diese Konfiguration nun noch speichern. Dazu geben wir

configure-layer3 -c 

ein und drücken Enter. Es sollte nun kein Fehler kommen und die Einstellungen gespeichert werden. Sollte ein Fehler kommen muss man sich die Konfigurationsdatei nochmal angucken ob man einen Fehler gemacht hat (z.b. wird gerne am Zeilenende ein ' vergessen). Wenn dies geklappt hat, kann man einen Testmode ausführen, dadurch werden alle Einstellungen angewendet aber nach 200 Sekunden wieder zurück gesetzt. Wenn man sich also ausgesperrt hat, kommt man nach 200 Sekunden (oder einen Neustart des Gerätes) wieder auf dem alten Weg drauf. Wir geben also

configure-layer3 -t

ein, nach einigen Sekunden haben wir entweder wieder eine Konsole oder fliegen vom Router herunter. Im 2. Fall sollten wir uns wieder neu verbinden. Wenn dies geklappt hat, müssen wir den Timer abbrechen damit nach 200 Sekunden nicht alle Einstellungen zurück gesetzt werden, dies geschieht mit

killall configure-layer3

Anschließend müssen wir diese Einstellungen noch rebootfest schreiben, dies geschieht mit:

configure-layer3 -a

Anschließend ist der Router konfiguriert und sollte funktionieren

Anbindung per Layer-2

Die Anbindung per Layer-2 war früher die einzige Möglichkeit sich mit dem Freifunknetz zu verbinden. Leider ist man hier meist von zentralen Stellen wie den keyxchange abhängig. Da Freifunk sich nicht von zentralen Stellen abhängig machen soll, raten wir mittlerweile von dieser Möglichkeit ab.

Vorwissen

Anbindung per fastd

Anbindung per mesh