knb:rpb4_wg

Unterschiede

Hier werden die Unterschiede zwischen zwei Versionen angezeigt.

Link zu dieser Vergleichsansicht

Beide Seiten der vorigen Revision Vorhergehende Überarbeitung
Nächste Überarbeitung
Vorhergehende Überarbeitung
knb:rpb4_wg [2020/12/18 21:06]
gunter.m Wie bringt man ein RPi-Image auf eine SD-Karte - Fixes, Erläuterungen und Ergänzungen
knb:rpb4_wg [2021/02/15 19:24] (aktuell)
django typo korrigiert
Zeile 98: Zeile 98:
 aufrufen, und feststellen,​ wo die **root-Partition** und die **boot-Partition** zu finden ist. aufrufen, und feststellen,​ wo die **root-Partition** und die **boot-Partition** zu finden ist.
  
-Da wir später weder Tastatur noch Monitor an unseren Raspberry 4B anstecken wollen, diesen demnach im **headless**-Mode betreiben wollen und werden, legen wir noch eine leere Datei **''​ssh''​** auf der **boot**-Partition ab. Damit wird beim Hochfahren der ssh-Server auf dem RPi gestartet. Zum Anlagen dieser Datei  **''​ssh''​** reicht ​also folgender Aufruf, bei dem wir den Usernamen im Pfad natürlich unseren Gegebenheiten entsprechend anpassen:+Da wir später weder Tastatur noch Monitor an unseren Raspberry 4B anstecken wollen, diesen demnach im **headless**-Mode betreiben wollen und werden, legen wir noch eine leere Datei **''​ssh''​** auf der **boot**-Partition ab. Damit wird beim Hochfahren der ssh-Server auf dem RPi gestartet, mit dessen Hilfe wir uns über das Netzwerk einloggen können. Zum Anlagen dieser Datei  **''​ssh''​** reicht folgender Aufruf, bei dem wir den Pfad, und insbesondere ​den Usernamen im Pfadnatürlich unseren Gegebenheiten entsprechend anpassen:
    # touch /​run/​media/​django/​boot/​ssh    # touch /​run/​media/​django/​boot/​ssh
 bzw. bzw.
Zeile 175: Zeile 175:
  
 ==== Änderung des Hostnamens ==== ==== Änderung des Hostnamens ====
-Damit unser neuer Offloader ​auch sauber mit seinem ​Namen angesprochen und dieser Name dann auch weiterverwendet werden kannpassen wir diesen nun erst einmal an. In unserem Konfigurationsbeispiel soll dies der Name **''​rpb4-wg-ol''​** lauten. ​+Unser neuer Offloader ​braucht einen eigenen ​Namen, ​mit dem er sich von anderen eigenen Raspberry P4 unterscheiden lässt. In unserem Konfigurationsbeispiel soll der Name **''​rpb4-wg-ol''​** lauten. ​Das Setzen des Nodenamens, mit der unser Offloader dann auch auf der Freifunk-Karte später erscheinen wird, erfolgt im Abschnitt **[[#​ext-respondd|Konfiguration des ext-respondd]]**!
  
-Nun setzen ​wir den Hostnamen wie folgt:+Wir setzen den Hostnamen wie folgt:
    # hostnamectl set-hostname rpb4-wg-ol    # hostnamectl set-hostname rpb4-wg-ol
  
-Damit beim späteren Wechsel der Userrechte zu keiner Warnmeldung kommt, ​da der Hostname nicht aufgelöst werden konnte, korrigieren wir gleich noch die Konfigurationsdatei **''/​etc/​hosts''​** und ändern dort in der letzten Zeile den Defaultwert von **''​raspberrypi''​** auf unseren neuen individuellen Namen **''​rpb4-wg-ol''​** ab.+Damit es beim späteren Wechsel der Userrechte zu keiner Warnmeldung kommt, ​weil der Hostname nicht aufgelöst werden konnte, korrigieren wir gleich noch die Konfigurationsdatei **''/​etc/​hosts''​**und ändern ​auch dort den Standardnamen ​**''​raspberrypi''​** auf unseren neuen individuellen Namen **''​rpb4-wg-ol''​** ab.
    # vim /etc/hosts    # vim /etc/hosts
 <file bash /​etc/​hosts>​127.0.0.1 localhost ​ <file bash /​etc/​hosts>​127.0.0.1 localhost ​
Zeile 199: Zeile 199:
  
 <WRAP center round alert 80%> <WRAP center round alert 80%>
-Möchte ​man vom Raspberry ​später auch ein WLAN ausstrahlen lassen ​so ist es zwingend von Nöten, dass WIFI explizit via **rfkill** freizugeben!+Möchte später auch das WLAN des Raspberry verwenden, ​so ist es zwingend von Nöten, dass WIFI explizit via **rfkill** freizugeben!
 Hier loggen wir uns per SSH ein und setzen folgenden Befehl ab: Hier loggen wir uns per SSH ein und setzen folgenden Befehl ab:
    # rfkill unblock wifi    # rfkill unblock wifi
-Zum Aktivieren ist noch ein Reboot unseres Raspberry 4 nötig!+Erst ein Reboot unseres Raspberry 4 aktiviert das WLAN tatsächlich
    # systemctl reboot    # systemctl reboot
 </​WRAP>​ </​WRAP>​
Zeile 212: Zeile 212:
    # apt-get upgrade -y    # apt-get upgrade -y
  
-Nun ist es an der Zeit, das wir unseren Kleinstrechner **rpb4-wg-ol** neu zu starten.+Nun ist es dann doch an der Zeit, dass wir unseren Kleinstrechner **rpb4-wg-ol** neu zu starten.
    # systemctl reboot    # systemctl reboot
  
 ===== BATMAN ===== ===== BATMAN =====
-Für das Routing der Layer-2-Verbindungen innerhalb des Freifunknetzes wird als Mesh-Protokoll **[[https://​de.wikipedia.org/​wiki/​B.A.T.M.A.N.|B.A.T.M.A.N.-Advanced]]** kurz **''​batman-adv''​** ​benötigen, welches wir uns nun in diesem Abschnitt installieren und konfigurieren wollen. ​+Für das Routing der Layer-2-Verbindungen innerhalb des Freifunknetzes wird als Mesh-Protokoll **[[https://​de.wikipedia.org/​wiki/​B.A.T.M.A.N.|B.A.T.M.A.N.-Advanced]]** kurz **''​batman-adv''​** ​eingesetzt, welches wir uns nun in diesem Abschnitt installieren und konfigurieren wollen. ​
  
 <WRAP center round tip 60%> <WRAP center round tip 60%>
Zeile 238: Zeile 238:
  
 ==== Kernelmodule ==== ==== Kernelmodule ====
-Nachdem das Kernelmodul manuell gebaut wird, wollen wir natürlich dass das auch Bestand hat, wenn ein Kernelupdate eingespielt wird. Dazu brauchen wir nun einige Pakete, die wir erst einmal installieren werden.+Nachdem das Kernelmodul manuell gebaut wird, wollen wir natürlichdass das auch Bestand hat, wenn ein Kernelupdate eingespielt wird. Dazu brauchen wir nun einige Pakete, die wir erst einmal installieren werden.
    # apt update && apt install dkms raspberrypi-kernel-headers    # apt update && apt install dkms raspberrypi-kernel-headers
  
-Anschließend müssen wir auf Grund dessendass der Raspberry PI Kernel ​crosscompiled ​wurde, die make Skripte neu generieren.+Anschließend müssen wir die make Skripte neu generierenweil der Raspberry PI Kernel ​ursprünglich crosscompiliert ​wurde.
    # cd linux-headers-$(uname -r)    # cd linux-headers-$(uname -r)
  
Zeile 261: Zeile 261:
 </​WRAP>​ </​WRAP>​
  
-Da nun alle nötigen vorbereitenden Installations- und Konfigurationsschritte abgearbeitet ​wurden, machen wir uns an das Anlegen der für B.A.T.M.A.N. notwendigen Konfigurationsdatei **''​dkms.conf''​**.+Da nun alle nötigen vorbereitenden Installations- und Konfigurationsschritte abgearbeitet ​sind, machen wir uns an das Anlegen der für B.A.T.M.A.N. notwendigen Konfigurationsdatei **''​dkms.conf''​**.
    # cd ../​batman-adv-2020.4/​    # cd ../​batman-adv-2020.4/​
  
Zeile 282: Zeile 282:
 Zum Speichern und Verlassen des Editors **vim** benutzen wir den **Vim**-Syntax **''​ESC :​x''​**. Zum Speichern und Verlassen des Editors **vim** benutzen wir den **Vim**-Syntax **''​ESC :​x''​**.
  
-Nun sind wir mit unserer Konfiguration soweit dass wir die B.A.T.M.A.N-Kernelmodule bauen können.+Nun sind wir mit unserer Konfiguration soweitdass wir die B.A.T.M.A.N-Kernelmodule bauen können.
    # dkms add -m batman-adv -v 2020.4    # dkms add -m batman-adv -v 2020.4
  
Zeile 346: Zeile 346:
  * BATMAN_V</​code>​  * BATMAN_V</​code>​
  
-Nun kommen wir zur Interface Konfiguration. In diesem Beispielwerden wir das Raspberry PI im Segment "​**welt**"​ ansiedeln, deswegen benennen wir das zugehörige Interface **''​br-welt''​** auch entsprechend. Hierzu benötigen wir noch die **''​bridge-utils''​** die wir uns nun noch nachinstallieren werden.+Nun kommen wir zur Interface Konfiguration. In diesem Beispiel werden wir den RPi-Offloader ​im Segment "​**welt**"​ ansiedeln, deswegen benennen wir das zugehörige Interface **''​br-welt''​** auch entsprechend. Hierzu benötigen wir noch die **''​bridge-utils''​**die wir uns noch installieren:​
    # apt install bridge-utils -y    # apt install bridge-utils -y
  
-Wir können mit nachfolgendem Befehl ​noch überprüfen,​ ob die Version von **''​batctl''​** auch zur installierten Version von **''​batman-adv''​** passt.+Wir können mit nachfolgendem Befehl überprüfen,​ ob die Version von **''​batctl''​** auch zur installierten Version von **''​batman-adv''​** passt.
    # batctl -v    # batctl -v
  
Zeile 548: Zeile 548:
 Description=Inform tunnel about our wireguard-public key Description=Inform tunnel about our wireguard-public key
 Documentation=https://​wiki.mailserver.guru/​doku.php/​centos:​ansible:​ffmuc-rpb4-ol Documentation=https://​wiki.mailserver.guru/​doku.php/​centos:​ansible:​ffmuc-rpb4-ol
-Bevore=wg-quick.target+Before=wg-quick.target
  
 [Service] [Service]
Zeile 689: Zeile 689:
         /​usr/​bin/​wget -q -O- --post-data='​{"​domain":"​ffmuc_welt","​public_key":"​HjDRCwE4Q7UPAKXrmM4s6VOgMK+HJZCixWTaVC8KiRU="​}'​ http://​broker.ffmuc.net/​api/​v1/​wg/​key/​exchange         /​usr/​bin/​wget -q -O- --post-data='​{"​domain":"​ffmuc_welt","​public_key":"​HjDRCwE4Q7UPAKXrmM4s6VOgMK+HJZCixWTaVC8KiRU="​}'​ http://​broker.ffmuc.net/​api/​v1/​wg/​key/​exchange
         logger -t checkuplink "​Starting wireguard-daemon."​         logger -t checkuplink "​Starting wireguard-daemon."​
-        systemctl start [email protected]uplink+        systemctl start [email protected]welt
         logger -t checkuplink "​Starting vxlan-meshing."​         logger -t checkuplink "​Starting vxlan-meshing."​
         vxlan         vxlan
Zeile 1155: Zeile 1155:
 ssid=muenchen.freifunk.net/​welt ssid=muenchen.freifunk.net/​welt
  
-country_code=US+country_code=DE
  
 interface=wlan0 interface=wlan0
  • knb/rpb4_wg.1608325577.txt.gz
  • Zuletzt geändert: 2020/12/18 21:06
  • von gunter.m