Autor Thema: [gelöst] Mit welchen Befehl wechsle ich in ein bekanntes W-Lan?  (Gelesen 1041 mal)

Offline SKg

  • Full Member
  • ***
  • Beiträge: 114
Hallo

ich muss leider mal wieder eine Anfängerfrage stellen.

Verwendet wird ein Raspberry PI 3B+ mit Buster ohne Desktop.
Alle bekannten W-Lan Netze sind in der wpa_supplicant.conf eingetragen und funktionieren auch.

Nach dem "Start" verbindet sich mein Pi mit dem erstbesten Netz und verbindet sich bei Verbindungsverlust mit dem nächsten bekannten Netz.
Soweit so gut.

Ich würde mich aber gern, nach dem Start, gezielt mit einem anderen bekannten Netz verbinden.

Gibt es dafür einen Kommandozeilenbefehl?

MFG
Stephan
« Letzte Änderung: 02 September 2021, 15:28:39 von SKg »

Offline betateilchen

  • Developer
  • Hero Member
  • ****
  • Beiträge: 17556
  • s/fhem\.cfg/configDB/g
Antw:Mit welchen Befehl wechsle ich in ein bekanntes W-Lan?
« Antwort #1 am: 02 September 2021, 10:14:04 »
Keine Ahnung, ob das mit wpa_supplicant überhaupt möglich ist.

Installiere den NetworkManager, dann kannst Du die Auswahl auf Betriebssystemebene mit nmcli lösen.

-----------------------
Unaufgeforderte Anfragen per email werden von mir nicht beantwortet. Dafür ist das Forum da.
-----------------------
Lesen gefährdet die Unwissenheit!

Offline erwin

  • Developer
  • Sr. Member
  • ****
  • Beiträge: 622
Antw:Mit welchen Befehl wechsle ich in ein bekanntes W-Lan?
« Antwort #2 am: 02 September 2021, 11:14:43 »
Zitat
Gibt es dafür einen Kommandozeilenbefehl?
kenn ich nicht, aber mit wpa_supplicant lässt sich eine priorisierung definieren:
network={
        ssid="aaaaa"
        psk="bbbbbbbbb"
        priority=3
}

network={
        ssid="ccccccc"
        psk="dddddddddddddddddddd"
        priority=4
        id_str="xxxHome"
}

network={
        ssid="eeeeeeeeeeeee"
        psk="ffffffffffffffffffffffffffffffffff"
        priority=5
        id_str="YYYYYYYYiPhone"
}
damit wird das ssid mit der höchsten prio vernwendet - falls verfügbar!
l.g erwin
FHEM aktuell auf RaspberryPI mit Busware ROT / Weinzirl IP731
Maintainer 10_KNX.pm
CUNO2 (868 SLOWRF) - HMS100xx, FS20, FHT
1-Wire  - 2401(iButton), 18x20, 2406, 2413 (AVR), 2450,...
MQTT2, KNX, SONOFF, mySENSORS,...

Offline SKg

  • Full Member
  • ***
  • Beiträge: 114
Antw:Mit welchen Befehl wechsle ich in ein bekanntes W-Lan?
« Antwort #3 am: 02 September 2021, 11:26:37 »
Hallo,

Erst einmal vielen Dank für die bisherigen Antworten.

@betateilchen

Installiere den NetworkManager, dann kannst Du die Auswahl auf Betriebssystemebene mit nmcli lösen.
Kann ich das Programm so ohne weiteres Installieren oder sperre ich mich da gleich aus?
Ich verwende SSH um meinen Pi zu konfigurieren, am Pi selbst ist kein Monitor oder Tastatur angeschlossen!
Die Beschreibung zum NetworkManager liest sich so als müsse man erst alle möglichen Verbindungen konfigurieren (auch die Ethernet Schnittstelle)?

MFG
Stephan

Offline SKg

  • Full Member
  • ***
  • Beiträge: 114
Antw:Mit welchen Befehl wechsle ich in ein bekanntes W-Lan?
« Antwort #4 am: 02 September 2021, 11:34:19 »
Hallo, @erwin

damit wird das ssid mit der höchsten prio vernwendet - falls verfügbar!

Angenommen das Netz mit Prio1 fällt aus und mein Pi wechselt zum Netz mit Prio2.
Würde der Pi wieder zum Netz mit Prio1 wechseln wenn es wieder erreichbar ist?

MFG
Stephan 

Offline erwin

  • Developer
  • Sr. Member
  • ****
  • Beiträge: 622
Antw:Mit welchen Befehl wechsle ich in ein bekanntes W-Lan?
« Antwort #5 am: 02 September 2021, 12:58:24 »
Zitat
Würde der Pi wieder zum Netz mit Prio1 wechseln wenn es wieder erreichbar ist?
Soweit ich weiß erst wenn ssid mit prio2 nicht mehr verfügbar! - oder nach reboot... oder mit shell command: sudo systemctl stop networking && sudo systemctl start networking (ungetestet!)
l.g. erwin

edit: getestet:
1) Der ssid mit der niedrigsten prio wird verwendet - war in meinem ersten post falsch!
2) shell-cmd zum ändern - der ssid:sudo ifconfig wlan0 down && sudo ifconfig wlan0 updas forciert ein neuerliches durchlaufen der wpa_supplicant.conf...

« Letzte Änderung: 02 September 2021, 13:27:22 von erwin »
FHEM aktuell auf RaspberryPI mit Busware ROT / Weinzirl IP731
Maintainer 10_KNX.pm
CUNO2 (868 SLOWRF) - HMS100xx, FS20, FHT
1-Wire  - 2401(iButton), 18x20, 2406, 2413 (AVR), 2450,...
MQTT2, KNX, SONOFF, mySENSORS,...

Offline SKg

  • Full Member
  • ***
  • Beiträge: 114
Antw:Mit welchen Befehl wechsle ich in ein bekanntes W-Lan?
« Antwort #6 am: 02 September 2021, 14:33:17 »
Hallo @erwin

2) shell-cmd zum ändern - der ssid:sudo ifconfig wlan0 down && sudo ifconfig wlan0 updas forciert ein neuerliches durchlaufen der wpa_supplicant.conf...
ich benutze dafür
sudo wpa_cli -i wlan0 reconfigure
MFG
Stephan

Offline Otto123

  • Tester
  • Hero Member
  • ****
  • Beiträge: 19699
  • schon mal restore trainiert?
    • Otto's Technik Blog
Antw:Mit welchen Befehl wechsle ich in ein bekanntes W-Lan?
« Antwort #7 am: 02 September 2021, 14:45:06 »
Hallo Stephan,

ich habe zum flashen von meinem Sauegr mal sowas gebastelt:
die wpa_supplicant enthält mein Haus Wlan und das (offene) Konfigurations-Wlan vom Sauger.
Dann kann man einfach "umschalten"
wpa_cli -i wlan0 select_network ID
Gruß Otto
Viele Grüße aus Leipzig
RaspberryPi B B+ B2 B3 B3+ ZeroW,HMLAN,HMUART,Homematic,Fritz!Box 7490+7412,WRT1900ACS-OpenWrt,Sonos,VU+,Arduino nano,ESP8266

Offline SKg

  • Full Member
  • ***
  • Beiträge: 114
Antw:Mit welchen Befehl wechsle ich in ein bekanntes W-Lan?
« Antwort #8 am: 02 September 2021, 15:02:05 »
Hallo, @OTTO123

ich hatte in deinem Block schon geschaut aber irgend wie nicht das richtige gefunden.


wpa_cli -i wlan0 select_network ID

Kann ich dann anstelle von ID meine gewünschte ESSID eintragen oder wie habe ich den Befehl zu verstehen?

MFG
Stephan

Offline Otto123

  • Tester
  • Hero Member
  • ****
  • Beiträge: 19699
  • schon mal restore trainiert?
    • Otto's Technik Blog
Antw:Mit welchen Befehl wechsle ich in ein bekanntes W-Lan?
« Antwort #9 am: 02 September 2021, 15:19:37 »
mit list_networks zeigt er Dir seine interpretierte wpa_... config an.
Dort stehen nummern, die nimmst Du für select_networks.
oder Du nimmst Deine SSID

Gruß Otto
« Letzte Änderung: 03 September 2021, 10:06:34 von Otto123 »
Viele Grüße aus Leipzig
RaspberryPi B B+ B2 B3 B3+ ZeroW,HMLAN,HMUART,Homematic,Fritz!Box 7490+7412,WRT1900ACS-OpenWrt,Sonos,VU+,Arduino nano,ESP8266

Offline SKg

  • Full Member
  • ***
  • Beiträge: 114
Antw:Mit welchen Befehl wechsle ich in ein bekanntes W-Lan?
« Antwort #10 am: 02 September 2021, 15:20:24 »
Hallo,

danke nochmal an Otto123

mit dem Befehl:
sudo wpa_cli -i wlan0 list_networkskommt man an die entsprechenden ID Nummern für die Auswahl.

Folgender Ablauf:
sudo wpa_cli -i wlan0 list_networks
ergibt folgendes Ergebnis:

network id / ssid / bssid / flags
0       backnet any
1       Test_W_Lan      any     [CURRENT]

und dann folgender Befehl:
sudo wpa_cli -i wlan0 select_network 0
sorgt dafür das sich mein pi in das WLan Netz mit der ID 0 einloggt, in meinem fall "backnet"
Bis dato aktive Wlan Verbindungen werden automatisch getrennt.

Dann scheint ja wpa_cli das Pendant zu nmcli des NetworkManagers zu sein.

MFG
Stephan
Zustimmung Zustimmung x 1 Liste anzeigen

Offline SKg

  • Full Member
  • ***
  • Beiträge: 114
Antw:Mit welchen Befehl wechsle ich in ein bekanntes W-Lan?
« Antwort #11 am: 02 September 2021, 15:27:56 »
Hallo;

Otto123 war ein tick schneller ;)


oder Du nimmst Deine SSID


Die direkte Übergabe der ESSID wird zwar positiv quittiert, führt aber nicht zum Wechsel in das gewünschte Netz.

Danke nochmal an Otto123

MFG
Stephan

Offline Otto123

  • Tester
  • Hero Member
  • ****
  • Beiträge: 19699
  • schon mal restore trainiert?
    • Otto's Technik Blog
Antw:[gelöst] Mit welchen Befehl wechsle ich in ein bekanntes W-Lan?
« Antwort #12 am: 03 September 2021, 10:13:52 »
Moin Stephan,

ich war gestern etwas verblüfft über Deine Aussage, ich hatte das mit SSID nämlich probiert.
Allerdings hat mich das Programm ausgetrickst:
Hat man einen anderes Wlan aktiv als die 0 (also das erste in der Liste)
und versucht dann select_network mitIrgendEinerSSID wertet das Programm diesen String als 0 und aktiviert das Erste.
War das (wie bei mir) zufällig das gewünschte, glaubt man an den Erfolg :-[

Das Programm wertet als ID Argument nur Ziffern richtig aus, Strings werden akzeptiert (keine Fehlermeldung) aber ergeben numerisch eine 0.

Das wpa_cli Programm erfordert bei mir keine erhöhten Rechte (sudo).

Gruß Otto
« Letzte Änderung: 03 September 2021, 10:20:34 von Otto123 »
Viele Grüße aus Leipzig
RaspberryPi B B+ B2 B3 B3+ ZeroW,HMLAN,HMUART,Homematic,Fritz!Box 7490+7412,WRT1900ACS-OpenWrt,Sonos,VU+,Arduino nano,ESP8266
Gefällt mir Gefällt mir x 1 Liste anzeigen

Offline SKg

  • Full Member
  • ***
  • Beiträge: 114
Antw:[gelöst] Mit welchen Befehl wechsle ich in ein bekanntes W-Lan?
« Antwort #13 am: 03 September 2021, 14:58:40 »
Hallo Otto,


Das wpa_cli Programm erfordert bei mir keine erhöhten Rechte (sudo).


Das war mir auch durch Zufall aufgefallen weil ich mal das (sudo) vergessen habe. :)

Gruß
Stephan

 

decade-submarginal