Zu einer sinnvollen Bewertung von Knoten- /Backbonestandorten sollten Fotos gemacht werden.
Dabei ist meist auch ein Rundumbild eine gute Entscheidung um im Nachgang relativ einfach die Richtungen und Sichtbarkeiten von möglichen Gegenstellen feststellen zu können.
Folgende Schritte sollten beachtet werden:
- Beim Fotografieren
- für ausreichende Überlappung der Bilder sorgen
- am besten ein Stativ verwenden
- die Drehrichtung zwischen den Panoramen beibehalten (der erleichtert die Sortierung am Nachgang)
- nichts am Zoom ändern
- automatischen Weißabgleich abschalten
- Bei der Nachbearbeitung
- Müssen Fotos aus verschiedenen Quellen (Kameras) in eine Sortierung eingepasst werden, dann stimmen häufig die Zeiten (in den EXIF-Daten) nicht überein. (Das hat erstmal nichts mit Panoramas zu tun.)
Mit diesem Befehl kann unter Linux die in den EXIFs hinterlegte Zeit geändert werden. (Hier: +55 Minuten für alle Bilddateien, die in und unter dem aktuellen Verzeichnis liegen und "DSC_" im Namen haben.)
exiftool muss dafür vorhanden sein
Anschließend können die Bilder anhand ihres Zeitstempels umbenannt werden um die verschiedenen Präfixe der Kameras ("IMG", "DSC", ...) vernachlässigen zu können.
find . -iname "DSC_*" -exec exiftool -d %Y%m%d-%H%M%S%%-c-%%f.%%e "-filenameHiermit werden alle Bilder unterhalb des aktuellen Ordners auf das Originaldatum umbenannt.
- Beim Zusammenfügen
- Es gibt verschiedene Softwarelösungen, mit denen die Bilder zusammengefügt (stitching) werden können.
- Als Empfehlung macht Hugin Sinn, da der eingebaute Assistent ziemlich gute Arbeit leistet.
- Hugin starten (Assistent startet automatisch)
- "1. Bilder laden"
- Ggf. "Ansicht -> Panorama Editor" um Kontrollpunkte manuell zu setzen
- "2. Ausrichten": Hier werden Kontrollpunkte automatisch anhand des Bildmaterials erstellt.
- "3. Panorama erstellen"
Für Anfänger macht Sinn, bei der Erstellung erst einmal auf den Assistenten zu vertrauen und nicht sofort über den Panorama Editor alles selbst einzustellen.
- Details
- Geschrieben von: Matthias Drobny
- Kategorie: Anleitungen
Bisher wird in der Firmware standardmäßig für den Tunnelaufbau zu den Gateways "fastd" verwendet. Seit ca. 0.8.11-beta wird aber auch Tunneldigger unterstützt.
Um einen bestehenden Knoten umzustellen, geht man folgendermaßen vor:
- Verbindungsaufbau per SSH: ssh root@[IP-Adresse]
- Die Adresse kann am einfachsten aus der Karte abgelesen werden.
- Alternativ kann man sich auch per 10.181.0.1 verbinden, wenn man mit dem Wunschknoten verbunden ist.
- Im Config-Modus (also per 192.168.1.1) sollte es auch möglich sein.
- Testen ob fastd läuft: ps w | grep fastd
- Wenn nichts angezeigt wird, läuft fastd nicht. Das ist das Ziel.
- Tunneldigger aktivieren, fastd deaktivieren, Speichern
uci set fastd.mesh_vpn.enabled='0' uci set tunneldigger.@broker[0].enabled='1' uci commit fastd uci commit tunneldigger
bzw. in der aktuellen Gluonversion
uci set fastd.mesh_vpn.enabled='0' uci set tunneldigger.mesh_vpn.enabled='1' uci commit fastd uci commit tunneldigger
- Zum Anwenden der Änderung gibt es zwei Varianten:
Wenn wir von außen Verbunden sind (sichere Variante):
reboot
Wenn wir direkt mit WLAN verbunden sind:
/etc/init.d/fastd stop killall fastd /etc/init.d/tunneldigger start
- Test ob Tunneldigger läuft:
- Details
- Geschrieben von: Hendrik Wittig
- Kategorie: Anleitungen
Einleitung
Da Mesh-Only Nodes keine IPv4-Adresse haben kann man opkg nicht verwenden, daher gibts eine alternative Quelle die direkt über das Mesh erreicht werden kann.
Das sieht dann z.B. so aus:
root@Test-Node:~# opkg update Downloading http://downloads.openwrt.org/chaos_calmer/15.05/ar71xx/generic/packages/base/Packages.gz. wget: can't connect to remote host (78.24.191.177): Network is unreachable (...) Collected errors: * opkg_download: Failed to download http://downloads.openwrt.org/chaos_calmer/15.05/ar71xx/generic/packages/base/Packages.gz, wget returned 1. (...)
Anleitung
1. Schritt
Dazu müssen aus /etc/opkg/distfeeds.conf alle Einträge auskommentiert oder entfernt werden.
2. Schritt
Dann die neuen Quellen in einer anderen Datei hinzufügen/ersetzen:/etc/opkg/customfeeds.conf
src/gz chaos_calmer_base http://gluon.ffggrz/opkg/chaos_calmer/15.05/ar71xx/generic/packages/base src/gz chaos_calmer_packages http://gluon.ffggrz/opkg/chaos_calmer/15.05/ar71xx/generic/packages/packages src/gz chaos_calmer_luci http://gluon.ffggrz/opkg/chaos_calmer/15.05/ar71xx/generic/packages/luci src/gz chaos_calmer_routing http://gluon.ffggrz/opkg/chaos_calmer/15.05/ar71xx/generic/packages/routing src/gz chaos_calmer_telephony http://gluon.ffggrz/opkg/chaos_calmer/15.05/ar71xx/generic/packages/telephony src/gz chaos_calmer_management http://gluon.ffggrz/opkg/chaos_calmer/15.05/ar71xx/generic/packages/management
3. Schritt
Dann die Quellen aktualisieren:
opkg update
Fertig
Wenn alles stimmt klappt das opkg-update auch wieder:
root@Test-Node:~# opkg update Downloading http://media.ffggrz/opkg/chaos_calmer/15.05/ar71xx/generic/packages/base/Packages.gz. Updated list of available packages in /var/opkg-lists/barrier_breaker_base. Downloading http://media.ffggrz/opkg/chaos_calmer/15.05/ar71xx/generic/packages/luci/Packages.gz. Updated list of available packages in /var/opkg-lists/barrier_breaker_luci. Downloading http://media.ffggrz/opkg/chaos_calmer/15.05/ar71xx/generic/packages/packages/Packages.gz. Updated list of available packages in /var/opkg-lists/barrier_breaker_packages. Downloading http://media.ffggrz/opkg/chaos_calmer/15.05/ar71xx/generic/packages/routing/Packages.gz. Updated list of available packages in /var/opkg-lists/barrier_breaker_routing. Downloading http://media.ffggrz/opkg/chaos_calmer/15.05/ar71xx/generic/packages/telephony/Packages.gz. Updated list of available packages in /var/opkg-lists/barrier_breaker_telephony. Downloading http://media.ffggrz/opkg/chaos_calmer/15.05/ar71xx/generic/packages/management/Packages.gz. Updated list of available packages in /var/opkg-lists/barrier_breaker_management.
Jetzt kann man seinen Lieblings-Editor wieder installieren:
{{{ root@Test-Node:~# opkg install nano Installing nano (2.4.1-1) to root... Downloading http://media.ffggrz/opkg/chaos_calmer/15.05/ar71xx/generic/packages/packages/nano_2.4.1-1_ar71xx.ipk. Installing libncurses (5.9-2) to root... Downloading http://media.ffggrz/opkg/chaos_calmer/15.05/ar71xx/generic/packages/base/libncurses_5.9-2_ar71xx.ipk. Installing terminfo (5.9-2) to root... Downloading http://media.ffggrz/opkg/chaos_calmer/15.05/ar71xx/generic/packages/base/terminfo_5.9-2_ar71xx.ipk. Configuring terminfo. Configuring libncurses. Configuring nano. }}}- Details
- Geschrieben von: Eric
- Kategorie: Anleitungen
Auspacken/Vorbereiten

Originalverpackung

Die Antennen liegen unterhalb der Mast- und Wandbefestigung.


Die Schutzabdeckung des Antennenanschluss wird abgeschraubt.

Zur Endmontage sollten die Antennen in einem 90°-Winkel zueinander ausgerichtet sein.
Der PoE-Injektor wird mit einem Netzwerkkabel über die "PoE"-Dose mit dem Gerät verbunden. Die "LAN"-Dose wird mit einem separaten Kabel mit PC oder Laptop verbunden.
IP-Adresse ermitteln
Die Geräte geben sich beim ersten Start eine Adresse in 192.168.0.x.
Linux
nmap -sn 192.168.0.0/24
Im Beispiel wird von der IP 192.168.0.36 ausgegangen.
Windows
Fing
Image herunterladen und auf den Router übertragen
Linux
wget "https://www.freifunk-gera-greiz.de/downloads/firmware/latest.php?branch=stable&type=sysupgrade&device=ubiquiti-unifi-ac-mesh" -O sysupgrade.bin scp sysupgrade.binDiese E-Mail-Adresse ist vor Spambots geschützt! Zur Anzeige muss JavaScript eingeschaltet sein. :/tmp/sysupgrade.bin
Windows
WinSCP
SSH und Flashen
Der Zugang erfolgt über SSH mit dem Benutzer "ubnt" und dem Standardpasswort "ubnt".
Linux
sshDiese E-Mail-Adresse ist vor Spambots geschützt! Zur Anzeige muss JavaScript eingeschaltet sein.
Windows
Putty
Firmware Downgrade
Die Originalfirmware muss vorher auf eine ältere Version "downgegradet" werden. Anleitung unter
https://wiki.freifunk-franken.de/w/Anleitung:UbiquitiUnifiACMesh
noch ältere Firmware unter
Flashen
mtd erase kernel0 mtd erase kernel1 mtd write /tmp/sysupgrade.bin kernel0 mtd write /tmp/sysupgrade.bin kernel1 dd if=/dev/zero bs=1 count=1 of=/dev/mtd$(cat /proc/mtd|grep bs|cut -c4) reboot
Wichtige Hinweise
Wenn die Geräte kein Batman-Interface mehr haben, ist ein erneutes Flashen notwendig.
Das Gerät muss dafür in den TFTP-Modus gebracht werden. Pings auf 192.168.1.20 gehen nicht notwendigerweise!
Falls TFTP-Put einen Fehler anzeigt "Transfer timed out", sollte ein anderer PoE-Injektor getestet werden. Dies gilt auch dann, wenn der Reset nicht über den Injektor ausgelöst wurde!
Aktuell funktioniert das "Erstflashen" nur mit der "Stable" Firmware.
- Details
- Geschrieben von: Matthias Drobny
- Kategorie: Anleitungen
Dieser Artikel beschreibt NICHT die Installation eines Debian auf einer APU oder reines vergleichbaren Servers, sondern die weitergehende Konfiguration zum Backbone-Server.
Benutzer hinzufügen
useradd [BENUTZER] usermod -aG adm,staff,sudo,dialout [BENUTZER]
Hauptprogramme installieren
apt update apt install ca-certificates dnsmasq vlan bridge-utils linux-headers-amd64 build-essential cmake doxygen bison libsodium-dev bridge-utils xz-utils wget pkg-config libnl-genl-3-dev libnl-3-200 libnl-3-dev git python3-netifaces ethtool lsb-release libcap-dev ifenslave iptables-persistent iptraf tcpdump iputils-* host socat vim nano mc screen tmux iperf3 htop strace nmap lsof tftp sudo linux-headers-$(uname -r) telnet unattended-upgrades apt-listchanges
Systemname vergeben ([XXX] => Standortkurzbezeichnung)
nano /etc/hostname Gera-[XXX]-Backbone
Softraid/mdadm
lsblk -o NAME,SIZE,FSTYPE,TYPE,MOUNTPOINT mdadm create verbose /dev/md0 level=5 raid-devices=4 /dev/sdb /dev/sdc /dev/sdd /dev/sde mdadm misc detail /dev/md0
pvcreate /dev/md0 vgcreate hddraid /dev/md0 Proxmox: Storage->Add->LVM
lvcreate hddraid size 1TB name vmbackup
mkfs.ext4 /dev/hddraid/vmbackup
mkdir -p /var/backups/vmbackup
echo "/dev/hddraid/vmbackup /var/backups/vmbackup ext4 defaults 0 0" >> /etc/fstab mount -a
Proxmox:
Storage -> Add -> Directory
vmbackup /var/backups/vmbackup "VZDump backup file"
Proxmox: Backup -> Add
Speicherplatz (LVM)
fdisk /dev/sdb n p ... t 8e w
pvcreate /dev/sdb1 vgcreate data-kuk01 /dev/sdb1
Unattendes Upgrades
sudo apt-get install unattended-upgrades apt-listchanges sudo dpkg-reconfigure -plow unattended-upgrades
SNMP/MIBS
mkdir -p /usr/share/snmp/mibs cd /tmp wget https://www.ubnt.com/downloads/firmwares/airos-ubnt-mib/ubnt-mib.zip unzip ubnt-mib.zip mv UBNT-* /usr/share/snmp/mibs
nano /etc/apt/sources.list.d/mibs.list deb http://ftp.de.debian.org/debian/ stretch main non-free deb http://ftp.de.debian.org/debian/ stretch-updates main non-free
apt update apt install snmp snmpd snmp-mibs-downloader
mv /etc/snmp/snmpd.conf /etc/snmp/snmpd.conf.orig nano /etc/snmp/snmpd.conf master agentx agentaddress 161 rocommunity public 127.0.0.1 rocommunity public 10.181.0.131 rocommunity public 172.16.[x].254
syslocation "Gera, [Standort]"
syscontactDiese E-Mail-Adresse ist vor Spambots geschützt! Zur Anzeige muss JavaScript eingeschaltet sein.
sysServices 72
sysservices 79
trapsink localhost public
trapsink zabbix.ffggrz.de public
trapcommunity public auth
trapenable 1
nano /etc/default/snmpd nano /etc/systemd/system/multi-user.target.wants/snmpd.service SNMPDOPTS='-LS6d -Lf /dev/null -u snmp -g snmp -I -smux,mteTrigger,mteTriggerConf -p /run/snmpd.pid'
systemctl enable snmpd systemctl restart snmpd
iperf3
nano /etc/systemd/system/multi-user.target.wants/iperf3.service [Unit] Description=iperf3 After=syslog.target network.target
[Service]
Type=simple
User=www-data
Group=www-data
Restart=on-failure
RestartSec=30
ExecStart=/usr/bin/iperf3 server daemon
KillMode=process
[Install]
WantedBy=multi-user.target
systemctl enable iperf3
systemctl restart iperf3
Zabbix
nano /etc/apt/sources.list.d/zabbix.list deb https://repo.zabbix.com/zabbix/4.5/debian buster main deb-src https://repo.zabbix.com/zabbix/4.5/debian buster main
wget -O - "https://repo.zabbix.com/zabbix-official-repo.key" | apt-key add - apt update apt install zabbix-proxy-sqlite3 zabbix-agent
Proxy-Konfiguration
nano /etc/zabbix/zabbix_proxy.conf Server=10.181.0.131 Hostname=bb[x] DBName=/var/lib/zabbix/proxy.db ProxyOfflineBuffer=24
mkdir -p /var/lib/zabbix/ /etc/zabbix/zabbix_proxy.conf.d chown zabbix:zabbix -R /var/lib/zabbix/ chown zabbix:zabbix -R /etc/zabbix/zabbix_proxy.conf.d systemctl enable zabbix-proxy systemctl start zabbix-proxy
Bei einem Update des Proxies muss ggf. die alte Datenbankdatei gelöscht werden.
systemctl stop zabbix-proxy rm /var/lib/zabbix/proxy.db systemctl start zabbix-proxy
Zabbix-Agent
nano /etc/zabbix/zabbix_agentd.conf Server=127.0.0.1,172.16.[x].254,10.181.0.131 ServerActive=127.0.0.1,172.16.[x].254,10.181.0.131 Hostname=bb[x] Timeout=30
mkdir -p /etc/zabbix/zabbix_agentd.conf.d/ nano /etc/zabbix/zabbix_agentd.conf.d/statistics.conf UserParameter=statistics.iperf[*],iperf3 -c $2 -fB -t1 | grep " $1" | sed -e 's|:blank:
+|#|g' | cut -d# -f7 UserParameter=statistics.wget[*],wget -O /dev/null "$1" 2>&1 | grep "
[[0-9]*/[0-9]*
]" | awk -F'[()B ]+' '{gsub("K",1024);gsub("M",1048576);gsub("G",1073741824);print $$3*$$4}'
systemctl enable zabbix-agent systemctl restart zabbix-agent
NUT (UPS-Steuerung)
apt install nut
echo "MODE=standalone" > /etc/nut/nut.conf
mv /etc/nut/upsd.conf /etc/nut/upsd.conf.old
echo "LISTEN 127.0.0.1 3493" > /etc/nut/upsd.conf
chown nut:nut /etc/nut/upsd.conf
chmod 400 /etc/nut/upsd.conf
mv /etc/nut/upsd.users /etc/nut/upsd.users.old
echo "[upsmon]" > /etc/nut/upsd.users
echo "password = [PASSWORD]" >> /etc/nut/upsd.users
echo "upsmon master" >> /etc/nut/upsd.users
echo "[admin]" >> /etc/nut/upsd.users
echo "password = [ADMINPASSWORD]" >> /etc/nut/upsd.users
echo "actions = SET" >> /etc/nut/upsd.users
echo "instcmds = ALL" >> /etc/nut/upsd.users
chown nut:nut /etc/nut/upsd.users
chmod 400 /etc/nut/upsd.users
mv /etc/nut/ups.conf /etc/nut/ups.conf.old
echo "["`hostname | tr '[:upper:]' '[:lower:]'`"-ups-01]" > /etc/nut/ups.conf
echo "driver = usbhid-ups" >> /etc/nut/ups.conf
echo "port = /dev/usb/hiddev0" >> /etc/nut/ups.conf
echo "desc = `hostname` "UPS 01"" >> /etc/nut/ups.conf
echo "pollinterval = 15" >> /etc/nut/ups.conf
mv /etc/nut/upsmon.conf /etc/nut/upsmon.conf.old
echo "MONITOR "`hostname | tr '[:upper:]' '[:lower:]'`"-ups-01@localhost 1 upsmon [PASSWORD] master" > /etc/nut/upsmon.conf
echo "#MONITOR "`hostname | tr '[:upper:]' '[:lower:]'`"-ups-01@localhost 1 admin [ADMINPASSWORD] master" >> /etc/nut/upsmon.conf
echo "DEADTIME 25" >> /etc/nut/upsmon.conf echo "MAXAGE 25" >> /etc/nut/upsmon.conf
##
# cp /lib/udev/rules.d/62-nut-usbups.rules /etc/udev/rules.d/
udevadm control --reload-rule udevadm trigger upsdrvctl start
- service nut-client stop
- service nut-server stop
- sleep 2
- service nut-server start
-
service nut-client start
systemctl restart upsmon systemctl restart nut-server#
#
# cd /tmp/ wget https://github.com/aktienmakler/Zabbix-NUT-Template/archive/master.zip
unzip master.zip
cp Zabbix-NUT-Template-master/sh/ups_status.sh /usr/lib/zabbix/externalscripts/
- cp Zabbix-NUT-Template-master/zabbix_agentd.d/userparameter_nut.conf /etc/zabbix/zabbix_agentd.conf.d/
echo "UserParameter=upsmon[*],/usr/lib/zabbix/externalscripts/ups_status.sh
$1
$2" > /etc/zabbix/zabbix_agentd.conf.d/userparameter_nut.conf
systemctl restart zabbix-agent
Netzwerk
am besten die Konfigurationsdateien von einem bestehenden System kopieren
- apt-get purge network-manager
- apt-get purge $(tasksel --task-packages desktop)
scpDiese E-Mail-Adresse ist vor Spambots geschützt! Zur Anzeige muss JavaScript eingeschaltet sein. .1:/etc/network/interfaces /etc/network/interfaces scpDiese E-Mail-Adresse ist vor Spambots geschützt! Zur Anzeige muss JavaScript eingeschaltet sein. .1:/etc/network/interfaces.d/freifunk /etc/network/interfaces.d/freifunk scpDiese E-Mail-Adresse ist vor Spambots geschützt! Zur Anzeige muss JavaScript eingeschaltet sein. .1:/etc/network/interfaces.d/mgmt /etc/network/interfaces.d/mgmt scpDiese E-Mail-Adresse ist vor Spambots geschützt! Zur Anzeige muss JavaScript eingeschaltet sein. .1:/etc/network/interfaces.d/wan /etc/network/interfaces.d/wan
nano /etc/network/interfaces.d/freifunk
- alle MAC-Adressen auf die Standortnummer anpassen
nano /etc/network/interfaces.d/mgmt nano /etc/network/interfaces.d/wan
nano /etc/resolv.conf domain ffggrz search ffggrz. nameserver 10.181.0.11 nameserver 10.181.0.12 nameserver 10.181.0.13
lokales DNS
https://www.freifunk-gera-greiz.de/wiki/-/wiki/Allgemein/interne+Domains+und+DHCP+mit+dnsmasq
Routing
sudo iptables -t nat -A POSTROUTING --out-interface br-freifunk -j MASQUERADE
sudo iptables -t nat -A nat append POSTROUTING --out-interface wan -j MASQUERADE
sudo iptables -A FORWARD --in-interface [MGMT-Interface] -j ACCEPT
sudo iptables-save > /etc/iptables/rules.v4
- Dauerhaft
nano /etc/sysctl.conf net.ipv4.ip_forward=1
- Einmalig bis zum Reboot
echo 1 > /proc/sys/net/ipv4/ip_forward
ext-respondd
cd /opt/ git clone https://github.com/ffggrz/ext-respondd cp ext-respondd/alias.json.example ext-respondd/alias.json nano ext-respondd/alias.json { "nodeinfo": { "hostname": "bb[Standort]", "node_id": "[MAC]", "owner": { "contact": "Diese E-Mail-Adresse ist vor Spambots geschützt! Zur Anzeige muss JavaScript eingeschaltet sein. " }, "system": { "site_code": "ffggrz", "role": "gateway" }, "location": { "latitude": [LAT], "longitude": [LON] }, "pages": [ "http://start.ffggrz/", "http://start.ffggrz.de/" ] }, }
cp ext-respondd/config.json.example ext-respondd/config.json
nano ext-respondd/config.json
{
"batman": "bat0",
"bridge": "br-freifunk",
"rate_limit": 30,
"rate_limit_burst": 10,
"wan": "[Bond|Interface].[VLAN]",
"mesh-vpn": [ "mesh-vpn-l2tp-1", "mesh-vpn-l2tp-2", "mesh-vpn-l2tp-3"]
}
cp /opt/ext-respondd/ext-respondd.service.example /etc/systemd/system/ext-respondd.service
systemctl enable ext-respondd
systemctl restart ext-respondd
- läuft erst nach einem Neustart, wenn bat0 vorhanden ist
tunneldigger
batctl/batman-adv
Batman-Update
- damit das Kernelmodul gegen den aktuellsten Kernel gebaut wird, sollte vorher ein Upgrade und ein Neustart durchgeführt werden
-
apt install linux-headers-$(uname -r) apt upgrade systemctl reboot
export BATMANVERSION="2021.0" cd /usr/local/src/ wget "https://downloads.open-mesh.org/batman/releases/batman-adv-${BATMANVERSION}/batctl-${BATMANVERSION}.tar.gz" wget "https://downloads.open-mesh.org/batman/releases/batman-adv-${BATMANVERSION}/batman-adv-${BATMANVERSION}.tar.gz" tar -xvzf batman-adv-"${BATMANVERSION}".tar.gz tar -xvzf batctl-"${BATMANVERSION}".tar.gz cd batctl-"${BATMANVERSION}" make && make install cd ../batman-adv-"${BATMANVERSION}" make && make install
- Nach der Kompilierung wird erneut durchgestartet
-
systemctl reboot
- Die aktuelle Version kann über batctl getestet werden.
-
batctl -v
- Details
- Geschrieben von: Matthias Drobny
- Kategorie: Anleitungen