Was ist der Unterschied zwischen "wpa-roam" und "wpa-conf" in der Datei / etc / network / interfaces?

46

Ich schrieb eine Frage zuvor , wie eine statische IP - Adresse auf dem RPI einzurichten und schließlich herausgefunden , zusammen mit einigen anderen , dass die Antwort auf Änderung war wpa-roamzu , wpa-confwenn zeigen auf /etc/wpa_supplicant/wpa_supplicant.conf, aber warum funktioniert das?

dh wenn ich das in meiner /etc/network/interfacesAkte habe:

auto lo
iface lo inet loopback

auto wlan0
iface wlan0 inet static
    address 192.168.0.3
    netmask 255.255.255.0
    gateway 192.168.0.1
    broadcast 192.168.0.255
    network 192.168.0.0
wpa-roam /etc/wpa_supplicant/wpa_supplicant.conf

Vorausgesetzt /etc/wpa_supplicant/wpa_supplicant.conf, diese Methode wurde ordnungsgemäß konfiguriert, funktioniert sie nicht.

Dies ist die relevante Ausgabe von iwconfig:

wlan0     unassociated  Nickname:"<WIFI@REALTEK>"
          Mode:Managed  Frequency=2.437 GHz  Access Point: Not-Associated   
          Sensitivity:0/0  
          Retry:off   RTS thr:off   Fragment thr:off
          Power Management:off
          Link Quality:0  Signal level:0  Noise level:0
          Rx invalid nwid:0  Rx invalid crypt:0  Rx invalid frag:0
          Tx excessive retries:0  Invalid misc:0   Missed beacon:0

Sowie von ifconfig:

wlan0     Link encap:Ethernet  HWaddr ec:1a:59:64:3a:36  
          UP BROADCAST MULTICAST  MTU:1500  Metric:1
          RX packets:847 errors:0 dropped:1029 overruns:0 frame:0
          TX packets:759 errors:0 dropped:0 overruns:0 carrier:0
          collisions:0 txqueuelen:1000 
          RX bytes:677394 (661.5 KiB)  TX bytes:133345 (130.2 KiB)

Aber alles auf magische Weise zu arbeiten beginnt , sobald Sie wechseln wpa-roamzu wpa-confund laufen sudo /etc/init.d/networking restart. Wann würden Sie verwenden wpa-roamund wann würden Sie verwenden wpa-conf?

3cheesewheel
quelle

Antworten:

30

wpa-roaming ist eine Methode, mit der Sie drahtlose Netzwerke durchsuchen und eine Verbindung herstellen können.

Das Ergebnis der folgenden Einrichtung ist, dass wlan0 Vorrang hat und Sie mit Ihrem gewünschten drahtlosen Netzwerk oder einem verfügbaren offenen drahtlosen Netzwerk oder einem vorgegebenen drahtlosen Netzwerk verbindet, wenn kein Ethernet-Kabel angeschlossen ist. Wenn Sie ein Ethernet-Kabel anschließen, wird der WLAN-Zugang über die kabelgebundene Netzwerkverbindung sofort beendet und eth0 verbindet Sie mit dem kabelgebundenen Netzwerk. Durch Abziehen des Netzwerkkabels ist die drahtlose Verbindung sofort wieder verfügbar.

Quelle: http://manual.aptosid.com/de/inet-setup-de.htm

Ich gehe davon aus, dass dies wpa-confdie statische Konfiguration ist, die für das Roaming über Netzwerkschnittstellen nicht benötigt wird. Ich konnte kein relevantes und detailliertes Dokument dafür finden.

Übrigens habe ich das gleiche Problem mit meiner WLAN-Konfiguration. Mein WiFi funktioniert nicht, wenn das kabelgebundene Ethernet nicht angeschlossen ist. Also habe ich wpa-roam in wpa-conf geändert, so wie Sie es getan haben.

gurcanozturk
quelle
1
Ich vermute, wenn Sie WPA-Roam verwenden möchten, müssen Sie WLAN0 auf manuell anstatt DHCP oder statisch festlegen. Das ist aber nur eine Theorie.
Lawrence
5
Ja, das ist richtig. Roam bedeutet, dass Sie der drahtlosen Schnittstelle erlauben, eine Verbindung zu anderen Access Points herzustellen ("Roaming"). Wenn Sie jedoch nur einen Satz haben, wird versucht, die Verbindung wiederherzustellen, wenn ein Fehler auftritt. Mit wpa-conf wird die Verbindung nicht erneut hergestellt.
Piotr Kula
@ Lawrence, in der Tat. Mehr als eine Theorie: Es wird berichtet, wenn Sie laufensudo /etc/init.d/networking restart
Jochem Schulenklopper
@jschulenklopper Ah. Ich habe das nicht einmal bemerkt. Ich benutze /etc/init.d/networking restartüberhaupt nicht haha.
Lawrence
3
Ein weiterer Unterschied besteht darin, dass die Verbindung wpa-roam ifplugdgetrennt wird, wlan0wenn sie eth0eingesteckt ist. Das Verhalten ist konfigurierbar und kann RaspberryPI-spezifisch sein.
Domen
4

Eine vollständige Erläuterung der beiden Betriebsmodi (Managed und Roaming) für wpa_supplicant finden Sie in der lokal installierten Dokumentationsdatei, die Sie einsehen können (eine [ältere?] Online-Version finden Sie hier ):

zless /usr/share/doc/wpa_supplicant/README.modes.gz

Es wird erklärt, dass der verwaltete Modus nur die Verbindung zu einem einzigen konfigurierten WLAN-Netzwerk ermöglicht, während der Roaming-Modus die Verbindung zu mehreren WLAN-Netzwerken mit möglicherweise unterschiedlichen Netzwerkkonfigurationen ermöglicht, die durch Hinzufügen der speziellen Option gesteuert werden können, die id_strdann mit den entsprechenden Einträgen im abgeglichen wird Netzwerkkonfigurationsdatei - in der /etc/network/interfacesDatei angegeben. z.B:

allow-hotplug eth1
iface eth1 inet manual
    wpa-driver wext
    wpa-roam /etc/wpa_supplicant/wpa_roam.conf

# id_str="uni"
iface uni inet dhcp

# id_str="home_static"
iface home_static inet static
        address 192.168.0.20
        netmask 255.255.255.0
        network 192.168.0.0
        broadcast 192.168.0.255
        gateway 192.168.0.1

Wo die entsprechenden WiFi-Netzwerke in der wpa-roamDatei angegeben sind. zB /etc/wpa_supplicant/wpa_roam.conf:

network={
        ssid="foo"
        key_mgmt=NONE
        # this id_str will notify /sbin/wpa_action to 'ifup uni'
        id_str="uni"
}

network={
        ssid="bar"
        psk=123456789...
        # this id_str will notify /sbin/wpa_action to 'ifup home_static'
        id_str="home_static"
}

Das "uni" -Netzwerk verwendet DHCP, während das "home_static" -Netzwerk die statische IP-Adresse 192.168.0.20 verwendet. Die id_strOption muss jedoch nicht verwendet werden, und das Gerät verwendet nur die Standardeinstellungen (siehe Dokumentdatei).

Pierz
quelle