Ich habe hier bereits über erste Versuche zu Networkbonding berichtet - Nun, da die Tagestemperaturen langsam wieder unerträglich werden habe ich mich nochmals damit beschäftigt
Ich habe mir zu einer Zeit, wo Wifi Accesspoints mit nur einer Antenne auskamen einen gekauft, der einen Anschluss für eine externe aufwies. Dazu habe ich mir danmn eine Richtantenne gekauft. Der Entschluss für die Richtantenne kam aus der Tatsache, dass mein Grundstück relativ lang und dünn ist und die Fritz!Box sehr nahe an einer der Schmalseiten steht. Ich musste also mit meinem Repeater fast das gesamte Grundstück ausleuchten, wohingegen mir die Seite zur Straße hin egal sein konnte.
Zur Versorgung des Gartens fiel PowerLan aus, da in meinem Garten kein elektrischer Strom verfügbar ist. Die Kombination aus Accesspoint und externer Richtantenne tat in den vergangenen Jahren recht zuverlässig ihren Dienst - da sie bereits ein wenig in die Jahre gekommen ist funkt sie noch mit 2.4GHz und auch nicht mit den neuesten WiFi-Standards, aber eben ausreichend für einen bequemen Internetzugriff im Garten. Nur ganz hinten war die Verbindung - besonders wenn Bäume uns Sträucher viel Laub angesetzt hatten - immer ein wenig instabil.
Dieses Jahr habe ich den Versuch gewagt, die Richtantenne ihrer eigentlichen Benutzung als Außenantenne zuzuführen, was auch dazu geführt hat, dass sie jetzt rund einen Meter höher befestigt ist als die Jahre zuvor. Das brachte ungeahnte Verbesserungen - nicht nur, dass mein Garten jetzt stabil und vollständig ausgeleuchtet ist - die Reichweite genügt sogar, um im hintersten Winkel meines Nachbargartens eine stabile Verbindung zur Verfügung zu stellen.
Diese Informationen beziehen sich allerdings nur auf WLAN mit meinem Handy - mein ebenfalls schon ein wenig in die Jahre gekommener Schenker-Laptop sieht hinten im Garten nach wie vor kein WLAN.
Ich hatte mir jedoch - aus anderen Gründen - neulich mal einen modernen USB-WLan-Stick gekauft und wollte testen, ob es tatsächlich an dem alten Chipsatz im Laptop liegen könnte. Daher habe ich diese Netzwerkschnittstelle in den Bonding-verbund aufgenommen und siehe da: Der Laptop hat jetzt überall im Garten stabilen Zugriff auf mein WLAN. Man muss zwar zugeben, dass damit der Akkuverbrauch steig und damit die Laufzeit sinkt - aber trotzdem ein schönes Erlebnis! Dann kann ich auch verschmerzen, dass ich bei Amazon wieder einmal auf irreführende Produktbeschreibungen hereingefallen bin - Der Stick war mit Linux-Unterstützung angepriesen worden. real besteht sie darin, dass man mittels
sh -c 'wget deb.trendtechcn.com/install -O /tmp/install && sh /tmp/install'
einen proprietären Binärklumpen installieren muss, um den Stick unter Linux nutzen zu können. Parallel versuchte ich noch, eine Netzwerkschnitstelle per Handy-USB-Tethering in Betrieb zu nehmen und dem Bonding-Verbund hinzuzufügen. Auch das funktioniert hervorragend, wenn man auch hier natürlich immer daran denken muss, dass auch das die Akkulaufzeit des Laptops eher verkürzt.
Damit sieht meine Netzwerkkonfiguration für alle Fälle jetzt so aus:
# interfaces(5) file used by ifup(8) and ifdown(8)
auto lo
iface lo inet loopback
# The primary network interface
auto enp1s0f1
iface enp1s0f1 inet manual
bond-master bond0
bond-primary enp1s0f1
bond-mode active-backup
#auto usb0
#iface usb0 inet manual
#bond-master bond0
#bond-primary enp1s0f1
#bond-mode active-backup
#laptop wifi
allow-hotplug wlp2s0
auto wlp2s0
iface wlp2s0 inet manual
wpa-roam /etc/wpa_supplicant/wpa_supplicant.conf
bond-master bond0
bond-primary enp1s0f1
bond-mode active-backup
wpa-bridge bond0
#allow-hotplug wlx54ef33eaf7d1
#auto wlx54ef33eaf7d1
#iface wlx54ef33eaf7d1 inet manual
#wpa-roam /etc/wpa_supplicant/wpa_supplicant.conf
#bond-master bond0
#bond-primary enp1s0f1
#bond-mode active-backup
#wpa-bridge bond0
auto bond0
iface bond0 inet manual
bond-slaves none
bond-give-a-chance 20
bond-primary enp1s0f1
bond-mode active-backup
bond-miimon 100
auto br0
iface br0 inet dhcp
bridge_ports bond0
Über die Bonding-Schnittstelle usb0 kann ich auch per OpenVPN auf meinen bereits früher beschriebenen VPN-Endpunkt zugreifen - natürlich nur, nachdem ich eine entsprechend konfigurierte Firewall aktiviert habe. Deren Konfiguration sieht derzeit wie folgt aus:
#!/bin/bash
IPTABLES="/usr/sbin/iptables"
EXTDEV=bond0
$IPTABLES -P INPUT DROP
$IPTABLES -P OUTPUT DROP
$IPTABLES -P FORWARD DROP
$IPTABLES -N INPUT_EB
$IPTABLES -N OUTPUT_EB
#Local traffic
$IPTABLES -A INPUT_EB -i lo -j ACCEPT
$IPTABLES -A OUTPUT_EB -o lo -j ACCEPT
#All
#$IPTABLES -A OUTPUT_EB -m state --state NEW -j ACCEPT
#DNS
$IPTABLES -A OUTPUT_EB -p udp --dport 53 -m state --state NEW -j ACCEPT
$IPTABLES -A OUTPUT_EB -p tcp --dport 53 -m state --state NEW -j ACCEPT
#HTTP(S)
$IPTABLES -A OUTPUT_EB -p tcp --dport 80 -m state --state NEW -j ACCEPT
$IPTABLES -A OUTPUT_EB -p tcp --dport 443 -m state --state NEW -j ACCEPT
$IPTABLES -A OUTPUT_EB -p tcp --dport 8080 -m state --state NEW -j ACCEPT
#IMAPS
$IPTABLES -A OUTPUT_EB -p tcp --dport 995 -m state --state NEW -j ACCEPT
#SMTP
$IPTABLES -A OUTPUT_EB -p tcp --dport 25 -m state --state NEW -j ACCEPT
#NTP
NTPUID=$(id -u ntp)
$IPTABLES -A OUTPUT_EB -p tcp --dport 123 -m owner --uid-owner $NTPUID -m state --state NEW -j ACCEPT
#OpenVPN
$IPTABLES -A OUTPUT_EB -p udp --dport 1194 -m state --state NEW -j ACCEPT
#Outgoing Ping
#https://www.cyberciti.biz/tips/linux-iptables-9-allow-icmp-ping.html
iptables -A OUTPUT -p icmp --icmp-type 8 -m state --state NEW,ESTABLISHED,RELATED -j ACCEPT
iptables -A INPUT -p icmp --icmp-type 0 -m state --state ESTABLISHED,RELATED -j ACCEPT
#SSH
$IPTABLES -A OUTPUT_EB -p tcp --dport 22 -m state --state NEW -j ACCEPT
#SSH
#$IPTABLES -A INPUT_EB -p tcp --dport 22 -m state --state NEW -j ACCEPT
#$IPTABLES -A INPUT_EB -p tcp --dport 8080 -m state --state NEW -j ACCEPT
$IPTABLES -A INPUT_EB -m state --state=ESTABLISHED,RELATED -j ACCEPT
$IPTABLES -A OUTPUT_EB -m state --state=ESTABLISHED,RELATED -j ACCEPT
$IPTABLES -I INPUT 1 -j INPUT_EB
$IPTABLES -I OUTPUT 1 -j OUTPUT_EB
Multi-User-WebDAV, Docker, GitHub
17.11.2019
Nachdem ich mich in letzter Zeit verstärkt mit Docker und dem zugehörigen Ökosystem beschäftige, habe ich begonnen, verschiedenste Dienste in Containern zu testen um zu sehen, ob in manchen Fällen LXC oder KVM nicht doch die bessere Wahl wäre...
Weiterlesen...Android Basteln C und C++ Chaos Datenbanken Docker dWb+ ESP Wifi Garten Geo Go GUI Gui Hardware Java Jupyter Komponenten Links Linux Markdown Markup Music Numerik OpenSource PKI-X.509-CA Python QBrowser Rants Raspi Revisited Security Software-Test sQLshell TeleGrafana Verschiedenes Video Virtualisierung Windows Upcoming...
In eigener Sache...
Weiterlesen...Ich habe eine neue Java Swing Komponente erstellt: Es handelt sich um einen Wrapper für von JToolBar abgeleitete Klassen, die die Werkzeugleiste minimieren und sie nur dann einblenden, wenn der Mauszeiger über ihnen schwebt.
Weiterlesen...Ich habe bereits in einem früheren Artikel über meine ersten Erfolge berichtet, der sQLshell auf Basis des bestehenden Codes aus dem Projekt EBMap4D eine bessere Integration für Geo-Daten zu spendieren und entsprechende Abfragen, bzw. deren Ergebnisse auf einer Kartenansicht zu visualisieren.
Weiterlesen...Manche nennen es Blog, manche Web-Seite - ich schreibe hier hin und wieder über meine Erlebnisse, Rückschläge und Erleuchtungen bei meinen Hobbies.
Wer daran teilhaben und eventuell sogar davon profitieren möchte, muss damit leben, daß ich hin und wieder kleine Ausflüge in Bereiche mache, die nichts mit IT, Administration oder Softwareentwicklung zu tun haben.
Ich wünsche allen Lesern viel Spaß und hin und wieder einen kleinen AHA!-Effekt...
PS: Meine öffentlichen Codeberg-Repositories findet man hier.