Wireless-mesh-networking auf Raspberry Pi mit batman-adv Protokoll
Ersten mal poster, so dass ich entschuldige mich, wenn ich etwas falsch!
So, ich versuche zum einrichten einer wireless-mesh-Netzwerk mit Raspberry Pi, mit dem Edimax EW-7811Un WLAN-Adapter und die batman-adv-Protokoll.
Habe ich versucht, nach dem basic-setup-guides aus:
http://www.open-mesh.org/projects/batman-adv/wiki/Quick-start-guide
http://mindofdes.blogspot.co.uk/2013/02/raspberry-pi-raspbian-wireless-and.html
Leider wenn ich auf den Punkt kommen, wo ich zu pingen Sie einen Knoten aus der anderen, ich bekomme
'Destination Host Unreachable'.
'Batctl o" - Befehl zeigt "keine batman-Knoten in Reichweite", aber beim ausführen von 'iwconfig', beide Knoten zu sein scheinen, die mit dem Netzwerk habe ich setup und beim laufen 'iwlist wlan0 scan', das Netzwerk habe ich setup angezeigt, wie Zellen auf beiden Knoten.
Ich bin nun ratlos, wie es weitergehen soll. Ich habe einige Artikel über Probleme mit ad-hoc-Unterstützung für linux-wlan-adapter-Treiber. Mein adapter ist mit dem RTL8192CU Treiber. Könnte dies die Ursache des Problems?
Jede Hilfe wäre sehr geschätzt werden. Lassen Sie mich wissen, wenn es alles, was Sie brauchen.
P. s ich habe mir den folgenden Beitrag, aber das war keine Hilfe, leider:
Raspberry Pi ad-hoc-Vernetzung
Edit: Inhalt von /etc/network/interfaces:
Beide derzeit setup-Knoten haben den gleichen Inhalt:
auto lo
iface lo inet loopback
iface eth0 inet dhcp
allow-hotplug wlan0
iface wlan0 inet manual
wpa-roam /etc/wpa_supplicant/wpa_supplicant.conf
iface default inet dhcp
Edit: Inhalt von /etc/wpa_supplicant/wpa_supplicant.conf für beide Knoten:
ctrl_interface=DIR=/var/run/wpa_supplicant GROUP=netdev
update_config=1
Edit: ifconfig, iwconfig und route für die beiden Knoten:
Knoten 1
ifconfig
wlan0 Link encap: Ethernet HWaddr 80:1f:02:9b:bc:6c
inet addr:192.168.2.1 Bcast:192.168.2.255 Mask:255.255.255.0
UP BROADCAST RUNNING MULTICAST MTU:1500 Metric:1
RX packets:0 errors:0 dropped:1 overruns:0 frame:0
TX packets:0 errors:0 dropped:0 overruns:0 carrier:0
collisions:0 txqueuelen:1000
RX bytes:0 (0.0 B) TX bytes: 0 (0.0 B)
iwconfig
wlan0 IEEE 802.11bg ESSID:"pi-ad-hoc" Nickname:"<WIFI@REALTEK>"
Mode:Ad-Hoc Frequency:2.412 GHz Cell: 02:11:87:A1:CD:FF
Bit Rate:54 Mb/s Sensitivity:0/0
Retry:off RTS thr:off Fragment thr:off
Encryption key:off
Power Management:off
Link Quality=2/100 Signal level=2/100 Noise level=0/100
Rx invalid nwid:0 Rx invalid crypt:0 Rx invalid frag:0
Tx excessive retries:0 Invalid misc:0 Missed beacon:0
route
Kernel IP routing table
Destination Gateway Genmask Flags Metric Ref Use Iface
192.168.2.0 * 255.255.255.0 U 0 0 0 wlan0
Knoten 2
ifconfig
wlan0 Link encap:Ethernet HWaddr 80:1f:02:da:2e:ee
inet addr:192.168.2.3 Bcast:192.168.2.255 Mask:255.255.255.0
UP BROADCAST RUNNING MULTICAST MTU:1500 Metric:1
RX packets:0 errors:0 dropped:0 overruns:0 frame:0
TX packets:6 errors:0 dropped:0 overruns:0 carrier:0
collisions:0 txqueuelen:1000
RX bytes:0 (0.0 B) TX bytes:0 (0.0 B)
iwconfig
wlan0 IEEE 802.11bg ESSID:"pi-ad-hoc" Nickname:"<WIFI@REALTEK>"
Mode:Ad-Hoc Frequency:2.412 GHz Cell: 02:11:87:2F:D6:FF
Bit Rate:54 Mb/s Sensitivity:0/0
Retry:off RTS thr:off Fragment thr:off
Encryption key:off
Power Management:off
Link Quality=2/100 Signal level=2/100 Noise level=0/100
Rx invalid nwid:0 Rx invalid crypt:0 Rx invalid frag:0
Tx excessive retries:0 Invalid misc:0 Missed beacon:0
route
Kernel IP routing table
Destination Gateway Genmask Flags Metric Ref Use Iface
192.168.2.0 * 255.255.255.0 U 0 0 0 wlan0
Der bat0-Schnittstelle zeigt die Folgen für Knoten 1: inet-Adresse:192.168.2.1 Bcast:192.168.2.255 Maske 255.255.255.0 und für Knoten 2: inet addr:192.168.2.2 Bcast:192.168.2.255 Maske 255.255.255.0 wlan0 zeigt keine ip-Adresse oder Subnetz-Maske. Aber ich nehme an, dass ist, da batman-adv ist nun mit Hilfe der virtuellen bat0-Schnittstelle?
Soweit ich die Dokumente Lesen, die Sie bereits erwähnt, sowohl die wlan-Schnittstelle eine IP-Adresse. Da batman basiert auf ad-hoc-Netzwerke. Wo batman ist verantwortlich für das routing von bat zu bat über mehrere Knoten. So wie von dir beschrieben sollte in der Lage sein ping von bat zu bat nach erfolgreicher ad-hoc-Verbindung. Wenn das nicht funktioniert, sollten wir den Blick tiefer in das setup des ad-hoc-Netzwerk.
Irgendwelche Ideen auf, wo Sie anfangen sollen? Wie erwähnt, wenn ich ausführen "batctl o" es sagt mir, dass es keine batman-Knoten in Reichweite, so bezweifle ich, ich wäre in der Lage zu pingen, wenn es Sie nicht sehen können?
können Sie fügen Sie bitte/post-beide unter "/etc/network/interface" - Einstellungen?
InformationsquelleAutor user3597805 | 2014-05-02
Du musst angemeldet sein, um einen Kommentar abzugeben.
Kann ich bestätigen, dass dies ein Problem der aktuellen Treiber rtl8192cu.
Ich war mit ein älteren version der Treiber für edimax wlan-Adapter, mit batman zu arbeiten (fast) in Ordnung. Aber ich fand, dass unter bestimmten Umständen (mit hoher Auslastung), die Verbindung ist fehlgeschlagen.
Dann habe ich ein Upgrade auf die neueste version des Treibers (Stand: September 11th 2013) fand aber, dass batman funktionierte nicht mehr (in der exakt gleichen Konfiguration wie mit dem älteren Treiber). Die Symptome waren genau wie du Sie beschrieben hast in deinem post.
Edit: Mein post gelöscht wurde, sagen, dass ich nicht geben eine Antwort auf die Frage. Ich bin nicht einverstanden mit, dass: diese IST eine Antwort auf den ursprünglichen post. Die einzige Frage, in der original-post war dieser:
"Mein adapter ist mit dem RTL8192CU Treiber. Könnte dies die Ursache des Problems?"
Wieder: ich kann bestätigen, dass mit dieser (neuesten) Treiber das Problem verursacht. Dieser Treiber ist nicht kompatibel mit batman. Das Problem hat nichts zu tun mit der Konfigurationsdatei. Versuchen Sie, sich für einen älteren Fahrer oder-besser - verwenden Sie einen wlan-adapter mit einem anderen Chipsatz.
InformationsquelleAutor Ratz Fatz
Sie versuchen, richten Sie ein ad-hoc Netzwerk. Allerdings schlage ich vor, beginnen mit einem einfacheren Ansatz, -- Wifi Access Point und dann Umschalten auf ad-hoc-Netzwerk.
Aus meiner Sicht ist es leichter zu verbinden den raspi an einen WLAN-accesspoint. Da der accesspoint wird mit der hand über die IP-Adressen über DHCP. Wo im ad-hoc-Modus, die Sie haben zu kümmern, die IPs selbst (soweit ich weiß).
Daher die config für die accespoint-basierte Lösung wäre, wie
/etc/network/interfaces
(das ist übrigens ziemlich genau wie Ihre bereits)
und dann die /etc/wpa_supplicant/wpa_supplicant.conf die Verbindung zu einem WPA2 accesspoint
Bitte beachten Sie, dass die psk-Schlüssel erzeugt werden soll
welche Ergebnisse in so etwas wie
einfach kopieren und fügen Sie den psk
Dann neu zu starten! Ich habe manchmal Probleme, wenn nur die änderung der Netzwerk-WLAN-Einstellungen auf die fliege. Während nach dem Neustart alles in Ordnung ist. Auch die wifi-Netzwerk einige Zeit in Anspruch nimmt. Bei mir so zwischen 20-40secs.
Btw. Ich hatte auch Schwierigkeiten, wenn Sie versuchen, um das setup wifi, ohne Verschlüsselung oder WEP-Verschlüsselung, so empfehle ich die Verwendung von WPA2 oder WPA. Bitte beachten Sie auch, dass die WPA Konfiguration der wpa_supplicant ist sehr anders als das von WPA2. So könnten Sie beginnen mit dem oben genannten Beispiel für WPA2.
Also, wenn Sie getestet der access-point-Verbindung, dann sollten wir den Fokus auf die adhoc. Ich Frage mich, ob es ein Allgemeines Verbindungsproblem mit dem Fahrer/Adapter.
InformationsquelleAutor tswaehn
Wifi-Verbindung zu Ihrem access-point funktionieren. Wir übernehmen die Treiber und die hardware sind in Ordnung. Lassen Sie uns nun versuchen, eine Verbindung über -- Wifi-ad-hoc -.
Fand ich hier einige sehr vielversprechende Konfiguration ohne Verwendung von wpa_supplicant. Wie bereits erwähnt wir verwenden Feste IPs. Also, natürlich, Sie brauchen, um zu unterscheiden, die auf beide raspis. Bitte beachten Sie, dass ich mich ändern musste "manuell" auf "static". Jetzt funktioniert es auch bei mir (nach Neustart). Hier kommt es
/etc/network/interfaces
Bitte beachten Sie: Die gewählten IPs sollten nicht im sub-Netz Ihres WLAN-Netzwerks (eth0).
Stellen Sie außerdem sicher sudo ifconfig wlan0 zeigt die korrekte IP -
und hier ist die sudo iwconfig wlan0
Sorry, ich habe es gerade ausprobiert und musste ich ändern "manuell" auf "static". (aktualisiert, genau richtig oben). Jetzt funktioniert es bei mir - genau die gleiche Konfiguration wie oben.
Ok, also ich habe es geändert von 'manuell' auf 'statisch' und es nicht mehr sagt: 'network unreachable', sagt aber 'Destination Host Unreachable'.
Hey Kumpel, wir brauchen noch ein paar mehr Informationen hier :). Wie Sie über Ihre "sudo ifconfig" und "sudo iwconfig" und "sudo route" der beiden Geräte? (hast du Neustart nach dem ändern der Einstellungen - richtig?)
Zumindest haben wir Fortschritte gemacht 🙂 -- das Netzwerk zugänglich ist. Vielleicht sollten Sie Ihre Himbeeren näher zusammen. Mein Test-Abstand Betrug 80 cm.
InformationsquelleAutor tswaehn
Hatte ich Probleme mit der Edimax EW-7811Un in Kombination mit dem Raspberry Pi A+
Es wurde nicht reagiert, nach ein paar Minuten. Apache und SSH waren nicht erreichbar und ping nicht verbinden.
Dem Programm iwconfig zeigt: "Power Management:off", aber trotzdem, es geht in einen idle-Modus.
Fand ich eine Lösung von MrEngman auf den raspberry Foren: http://www.raspberrypi.org/forums/viewtopic.php?f=28&t=61665
Diese lösen könnte:
Machen Sie eine Datei 8192cu.conf im Verzeichnis /etc/modprobe.d/mit dem Befehl:
fügen Sie diese Zeilen:
InformationsquelleAutor hennep
Ich habe gerade überprüft Ihre Konfiguration mit zwei Himbeeren und dem gleichen WLAN Adapter (Edimax EW-7811Un) auf Raspbian. Lange Rede, kurzer Sinn: ich bekomme die gleichen Ergebnisse wie du.
Meine Ergebnisse sind wie folgt
Es ist ziemlich viel scheint, wie Sie die Adapter-Treiber wird nicht zulassen, dass diese Verbindung ein.
Bitte beachten Sie: das einrichten eines accesspoint mit dieser Adapter erfordert ein besonderes zusammengestellt hostapd: Lesen Sie hier, um herauszufinden, wie
InformationsquelleAutor tswaehn
Habe ich nicht irgendwo zum testen im moment, also sorry für die fehlenden screenshots 🙁
Wenn Sie noch interessiert und haben mehrere mesh-Netzwerke mit batman-adv und catwoman und vor ähnlichen Problemen (ich habe das getan mixed-Geräte wie android-Handys, foneras, openwrt-Geräte, etc, etc, zusammen zu arbeiten).
Erste, was zu überprüfen, wenn die mit batman-adv ist die Kompatibilitäts-version, überprüfen Sie auf Ihrem dmesg, die man mit jedem Knoten aus, wenn Sie laden de batman-adv Modul, sollte es passen in beide, oder Sie werden einander nicht sehen noch mit beiden setup-propertly! (dies hat mir einiges an Kopfschmerzen in der Vergangenheit hehe)
Wenn die Knoten noch nicht sehen können, sich gegenseitig die Sie benötigen, um zu überprüfen, dass Sie nicht über etwaige Probleme beim Wechsel des Modus ad-hoc.
Nun, sobald die Knoten einander sehen, sich erinnern, dass batman-adv arbeitet in Schicht 2, batctl hat ein ping-tool ping auf dieser Ebene, auch wenn die Knoten können einander nicht sehen.
Ich bin nicht wirklich sicher, warum Sie den wpa-supplicant hier, mesh-Netzwerke, doesnt es brauchen, um Ihre Netz-wählen Sie einfach einen Kanal und ESSID; alle Knoten haben sollte, diese gleichen parameter, dann setzen Sie einfach die WLAN-Schnittstelle im ad-hoc Modus und auf batctl die Schnittstellen hinzufügen, um das bat0-interface.
bat0-Schnittstelle? das ist die eigentliche mesh-Oberfläche, nicht wlan0. Sie hat eine ip, auf die wlan0-Schnittstellen, aber das würde nicht funktionieren, müssen Sie bat0 eine ip-Adresse und, dass die, die das Netz nutzen werden. Durch die Erinnerung wäre der Befehl: batctl ifadd wlan0, aber überprüfen Sie die batctl helfen, nur für den Fall 🙂
Wenn Sie möchten, zu teilen internet-Verbindung, die Sie benötigen, Folgen Sie den nachstehenden Schritten, dann auf den Knoten mit dem internet verbunden erstellen Sie eine Brücke zwischen bat0 und die Schnittstelle mit dem internet (sich erinnern zu lassen, wlan0 oder was auch immer-Schnittstelle ist mit dem mesh alleine) und zu beenden, gehen Sie zu batctl auf diesem Knoten, und schalten Sie das gw (gateway) Modus auf (batctl gw, denke ich). dann können Sie dhcp über bat0 auf alle Knoten und es sollte gut funktionieren.
Nur für den Fall, dass das batman-adv Kernelmodul geladen ist, hehe
Ich glaube, ich habe alle Seiten, wenn es um die Einrichtung einer batman-adv-Netz. Wenn Sie irgendwelche Zweifel werde ich versuchen zu helfen 😀
Beste Grüße und hoffe, dass Ihre Masche funktioniert! 🙂
InformationsquelleAutor KALRONG