Raspberry Pi ins B.A.T.M.A.N.

Aus Freifunk Franken
Version vom 30. Oktober 2018, 15:16 Uhr von Rokufukka-iō (Diskussion | Beiträge) (Rokufukka-iō verschob die Seite Raspberry Pi ins Batman nach Raspberry Pi ins B.A.T.M.A.N.)
(Unterschied) ← Nächstältere Version | Aktuelle Version (Unterschied) | Nächstjüngere Version → (Unterschied)
Wechseln zu:Navigation, Suche

Ist erstmal nur eine Notiz und wird irgendwann schön gemacht. Sinnvoll ist eine USB Lan Karte damit man sich nicht aussperrt, diese kommt ans private Netz für jeglichen Zugriff. Die eth0 interne LAN Karte nutzt man für Batman.

apt-get install dkms gcc bc
cat /proc/version

passenden Kernelheader von hier auf das Pi laden

[1]

Installieren mit

dpkg -i filename.deb
git clone https://github.com/freifunk-gluon/batman-adv-legacy
cd batman-adv-legacy 
sudo make 
sudo make install 
cd ..
wget http://downloads.open-mesh.org/batman/releases/batman-adv-2013.4.0/batctl-2013.4.0.tar.gz
tar xzf batctl-2013.4.0.tar.gz 
cd batctl-2013.4.0 
make 
sudo make install 
sudo modprobe batman-adv 
sudo vi /etc/modules -> batman-adv

reboot

Sollte nun ein

batctl -v

zeigen das Batman 2015.0 oder etwas anderes außer 2013.4 läuft, muss die *.ko File manuell ins richtige Verzeichnis kopiert werden

cd batman-adv-legacy 
cp batman-adv.ko /lib/modules/4.1.19+/kernel/net/batman-adv/

Das Verzeichnis findet man mit

modinfo batman-adv

heraus.

Nach reboot sollte nun

batctl -v

Batman 2013.4 ausgeben

Schönheitsreparaturen:

apt-get install ethtool
ethtool -K eth0 rx off
ethtool -K bat0 gro off

weil ich gefragt wurde, hier noch der komplette Inhalt von /etc/network/interfaces

# interfaces(5) file used by ifup(8) and ifdown(8)

# Please note that this file is written to be used with dhcpcd
# For static IP, consult /etc/dhcpcd.conf and 'man dhcpcd.conf'

# Include files from /etc/network/interfaces.d:
source-directory /etc/network/interfaces.d

auto lo
iface lo inet loopback

iface eth0 inet static

iface eth1 inet static
        address 192.168.2.108
        netmask 255.255.255.0

iface bat0 inet manual
post-up ifconfig $IFACE up
    post-up ip addr add 10.50.132.9/22 dev $IFACE
    post-up ip route add default via 10.50.132.1 dev $IFACE
    post-down ifconfig $IFACE down


-hotplug wlan0
iface wlan0 inet manual
    wpa-conf /etc/wpa_supplicant/wpa_supplicant.conf

allow-hotplug wlan1
iface wlan1 inet manual
    wpa-conf /etc/wpa_supplicant/wpa_supplicant.conf

Alfred nachinstallieren

apt-get install libcap-dev gpsd libgps-dev
git clone https://git.open-mesh.org/alfred.git
cd alfred
git reset --hard efd73267b59a95fc1c28b51c71827190c601f7c9
make 
sudo make install

aus irgendeinen Grund läd er noch keine Alfreddaten und ich bin mir unschlüssig warum...

Zusatz:

Nachdem ich alles in die rc.local eingetragen habe, damit das Zeug alles automatisch startet geht der Alfred nun auf einmal. Verwendet wurde nun Alfred 2014.1.0

Dies wurde in der rc.local nachgetragen:

...
sudo batctl if add eth0
sudo ifup bat0
sudo ifconfig bat0 up

sudo ethtool -K eth0 rx off
sudo ethtool -K bat0 gro off

sudo alfred -m -i bat0
...

danach den pyalfred und den Alfred Monitoring Proxy nach dieser Anleitung installiert (python ist in der Grundinstallation am RasPi schon drauf): https://github.com/asdil12/fff-monitoring/tree/master/alfred-monitoring-proxy

/usr/local/bin/alfred-monitoring-proxy hab ich kopiert und nochmals angelegt unter /usr/local/bin/alfred-monitoring-proxy2 dort hab ich die api_url angepasst und auf monitoring.fff.community schicken lassen, damit mein Monitoring die Daten ebenfalls erhält. Beide hab ich in die crontab eingetragen:

*/5 *   *   *   *    sudo /usr/local/bin/alfred-monitoring-proxy
*/5 *   *   *   *    sudo /usr/local/bin/alfred-monitoring-proxy2

Zusatz:

Das Problem scheint dhcpcd zu sein der sich mit Alfred&Batman beißt. Man muss den DHCP Client auf bat0 und eth0 abschalten:

sudo vi /etc/dhcpcd.conf

...
denyinterfaces eth0
denyinterfaces bat0
...

das ganze hat bei mir dann aber wieder den Nameserver abgeschaltet so das die /etc/resolv.conf leer war. Ich hab dort manuell einen Nameserver nachgetragen

...
nameserver 10.50.32.4
...