Debian batctl trace nicht möglich

Hallo,
ich kann von meinem Off-loader kein batctl p / tr machen:

Error - can't write to batman adv kernel file '/sys/kernel/debug//batman_adv/bat0/socket': Invalid argument

Dies passiert in allen Kombinationen von batctl und batman-adv versionen

beides aus:
deb http://repo.universe-factory.net/debian/ sid main

batman-adv aus

batctl aus:
http://ftp.uni-erlangen.de/pub/debian/pool/main/b/batctl/batctl_2015.0-2_amd64.deb

Aber das Interface als solches ist da und man kann mit brctl das Interface auch mit anderen Interfaces auf eine Bridge stecken?

Ja das Interface ist da und wenn du ‚batctl if add eth1‘ meinst ja

Ich kann auch batctl o machen und sehe entsprechend andere nodes.

Hier vielleicht noch ein paar Versions infos:

manuel@atom ~ % uname -r
3.16.0-4-amd64
manuel@atom ~ % lsb_release -a
No LSB modules are available.
Distributor ID:	Debian
Description:	Debian GNU/Linux 8.0 (jessie)
Release:	8.0
Codename:	jessie
manuel@atom ~ % sudo batctl -v             
batctl debian-2014.3.0-2 [batman-adv: 2013.4.0]

Dieses Problem habe ich noch nie beobachtet. Das ist richtig evil.

Hast Du beim Ausprobieren das Bat-Modul entladen und neu geladen?

rmmod batman-adv
modprobe batman-adv

Deine Wolke fährt den Kompatibilitätsmodus 14 (legacy), versuche in diesem Fall nicht so ein neues batctl zu verwenden. Jessie verwendet den 3.16er Kernel, drin befindet sich Batman mit der Kompatibilitätsversion 15, die Du bestimmt nicht haben willst.

es sollte mit dem erstgenannten Repository klappen, ansonsten deinstalliere alles Bat-haltige, entlade das Batmodul und installiere die Sachen aus der Repository – notfalls manuell mit dpkg (batman-adv-dkms_2013.4.0-6_all.deb und batctl_2013.4.0-1_amd64.deb), ansonsten kompiliere zu Fuß:

In Wupper nutze ich schon den 15er, deshalb kann ich das nicht reproduzieren. Viel Erfolg.

Mach mal

modinfo batman-adv

Dann siehst du ob das korrekte Modul geladen wurde.

1 Like
manuel@atom ~ % sudo modinfo batman-adv
filename:       /lib/modules/3.16.0-4-amd64/updates/dkms/batman-adv.ko
version:        2013.4.0
description:    B.A.T.M.A.N. advanced
author:         Marek Lindner <lindner_marek@yahoo.de>, Simon Wunderlich <siwu@hrz.tu-chemnitz.de>
license:        GPL
srcversion:     78625B21F75CD78C381FC83
depends:        libcrc32c,crc16
vermagic:       3.16.0-4-amd64 SMP mod_unload modversions

ich habe vorher schon ein paar supernodes mit

deb http://repo.universe-factory.net/debian/1 sid main

installiert.

Das ist da noch nie aufgetreten. Bei einem weiteren Rechner mit debian jessie passiert jetzt das gleiche. Also liegt das an der Debian und /oder Kernel Version.

rmmod & modprobe habe ich immer gemacht und dann mit batctl -v nachgesehen ob auch die entsprechende Version geladen war.

Das verstehe ich nicht. Wenn ich doch die o.g. Quellen habe installiert der doch daraus. Oder habe ich die offiziellen debian Pakete installiert?
Wie konnte ich noch mal die verschiedenen Versionen eines Paketes in verschiedenen Repos mit apt anzeigen?

Soweit ich das verstanden habe, braucht man dafür gar kein Paket, weil das schon im Kernel mit drin ist. War zumindest bei Ubuntu so und ich glaube nicht, dass die das so groß anders kompilieren.

Bei welcher Distribution gibt es denn im Kernel ein Legacy-BatmanAdv?

Ne, ich meinte, dass im Kernel das zu neue Batman drin ist.

Du meinst, dass das batctl „im pfad“ evtl. nicht zum geladenen Batman-Kernelmodul passt und dass das „batctl o“ mehr zufällig glücklicherweise Ausgaben liefert, batctl p aber nicht mehr läuft?

So im Detail kenne ich mich nicht aus. Aber Freifunk nutzt Batman 14 und im Kernel ist jedenfalls Batman 15. Das muss man erst rausschmeißen. Das gilt zumindest für Ubuntu und das aktuelle Debian.

hier wurde bereits über DKMS der bat14 eingespielt und ersetzt den im Kernel mitgelieferten bat15

mit dem batctl aus http://repo.universe-factory.net/debian/ sollte es eigentlich keine Probleme geben. Es sei denn im Modul wurde etwas herauskompiliert. Dank Jessie gibt es aber Probleme, die ich mir ohne ein Passendes System nicht erklären kann.

Ich muss eh bald Jessie installieren. Dann schaue ich bei Gelegenheit, was da los ist. Vielleicht kann @NeoRaider als Repository-Besitzer sich das mal kurz anschauen.

Wenn einer Lust und Zeit hat seinen Debian Offloader von Wheezy auf Jessie upzudaten wissen wir es ja.

Was mich am meisten irritiert sind die beiden // im Pfad. Das kann doch nicht gesund sein, oder?

den gleichen Fehler hab ich auch noch mal gefunden:
http://stackoverflow.com/questions/26834723/batman-protocol

Dort handelt es sich um ubuntu 14.04 welches ja glaube ich den gleichen Kernel wie Jessie nutzt.

1 Like

Hallo,
ich wollte nur mal hören ob es mittlerweile Supernodes oder offloader mit dem aktuellen debian stable jessie haben welche das gleich Problem haben.

Moin,
nach dem wir in Arnsberg beginnen mit BATMAN 15 zu meshen kann ich jetzt auch wieder tracen.

Danke an alle die gegrübelt haben.

manuel@atom ~ % sudo batctl tr c4:6e:1f:fe:90:84
traceroute to c4:6e:1f:fe:90:84 (c6:72:1f:fe:90:84), 50 hops max, 20 byte packets
 1: 26:a5:3c:e4:c6:af  0.130 ms  0.099 ms  0.099 ms
 2: 26:a7:3d:46:4e:2a  38.236 ms  1.112 ms  2.056 ms
 3: c6:72:1f:fe:90:84  2.304 ms  6.824 ms  3.024 ms
manuel@atom ~ % 
manuel@atom ~ % sudo modinfo batman-adv
filename:       /lib/modules/3.16.0-4-amd64/kernel/net/batman-adv/batman-adv.ko
version:        2014.3.0
description:    B.A.T.M.A.N. advanced
author:         Marek Lindner <mareklindner@neomailbox.ch>, Simon Wunderlich <sw@simonwunderlich.de>
license:        GPL
srcversion:     39F613C8D996EE89ACE5144
depends:        libcrc32c,crc16
intree:         Y
vermagic:       3.16.0-4-amd64 SMP mod_unload modversions

Auch wenn es Leichenschänderei ist.

Da ich das selbe Problem hatte:

Lösung:

  • batctl Version passt nicht zur batman-adv-dkms Version

Vergleiche:

batctl -v
modinfo batman-adv

Leider kommen bei vielen Distributionen uralte Versionen vom Batman-adv mit.
Oder aber das debugging(?) ist nicht mit eincompiliert, so dass /sys/kernel/debug/batman_adv/ nicht „bevölkert“ ist mit Daten.
Dagegen hilft leider nur ein Batman-Selbstcompilieren nach jedem (größeren) Kernel-Update.
(siehe auch Ubuntu PPA für Batman-adv und Fastd gesucht )