Qual è la differenza tra `wpa-roam` e` wpa-conf` nel file / etc / network / interfaces?


46

Ho postato una domanda in precedenza su come impostare un indirizzo IP statico sul RPI e finalmente capito , insieme ad alcuni altri , che la risposta era al cambiamento wpa-roama wpa-confquando si punta a /etc/wpa_supplicant/wpa_supplicant.conf, ma perché funziona?

cioè quando ho questo nel mio /etc/network/interfacesfile:

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

Supponendo che /etc/wpa_supplicant/wpa_supplicant.confsia stato correttamente configurato, questo metodo non funziona.

Questo è l'output rilevante di 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

Oltre che da 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)

Ma tutto magicamente inizia a lavorare una volta che si cambia wpa-roamper wpa-confe correre sudo /etc/init.d/networking restart. Quando useresti wpa-roame quando useresti wpa-conf?

Risposte:


30

wpa-roaming è un metodo con il quale è possibile navigare e connettersi alle reti wireless.

Il risultato della seguente configurazione è che se non è collegato un cavo Ethernet, wlan0 ha la precedenza e si collega alla rete wireless desiderata o a una rete wireless aperta disponibile o una rete wireless predeterminata. Se si collega un cavo Ethernet, la connessione di rete cablata interrompe immediatamente l'accesso WiFi e eth0 quindi si collega alla rete cablata. Scollegando il cavo di rete, la connessione wireless sarà di nuovo immediatamente disponibile.

Fonte: http://manual.aptosid.com/en/inet-setup-en.htm

Presumo che wpa-confsia la configurazione statica che non è necessaria per il roaming attraverso le interfacce di rete. Non sono riuscito a trovare alcun documento pertinente e dettagliato per questo.

A proposito, ho lo stesso problema con la mia configurazione WiFi. Il mio WiFi non funziona quando Ethernet cablata è scollegata. Quindi ho cambiato wpa-roam in wpa-conf come te, ha funzionato.


1
Sospetto che se si desidera utilizzare wpa-roam, è necessario impostare wlan0 su manuale anziché su dhcp o statico. Questa è solo una teoria però.
Lawrence,

5
Si, è corretto. Il roaming significa che si consente all'interfaccia wireless di provare a connettersi ad altri punti di accesso "roaming" - ma se si ha solo 1 set significa che proverà a "riconnettersi" ad esso se qualcosa va storto. Con wpa-conf non si riconnetterà al momento della caduta.
Piotr Kula,

@Lawrence, in effetti. Più che una teoria però: viene riportato quando corrisudo /etc/init.d/networking restart
Jochem Schulenklopper

@jschulenklopper Ah. non me ne ero nemmeno reso conto. Non uso /etc/init.d/networking restartaffatto haha.
Lawrence,

3
Un'altra differenza da notare è che per le wpa-roam ifplugddisconnessioni wlan0quando eth0è collegato. È un comportamento configurabile e potrebbe essere specifico di RaspberryPI.
domen,

4

Si può anche trovare una spiegazione completa delle due modalità operative (Managed e Roaming) per wpa_supplicant nel suo file di documentazione installato localmente - che può essere visualizzato (una versione online [più vecchia?] È qui ):

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

Spiega che mentre la modalità gestita consente solo la connessione a una singola rete WiFi configurata, la modalità roaming consente la connessione a più reti WiFi con configurazioni di rete potenzialmente diverse che possono essere controllate aggiungendo l'opzione speciale id_strche viene quindi confrontata con le voci corrispondenti nella file di configurazione di rete - specificato nel /etc/network/interfacesfile. per esempio:

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

Dove sono specificate le reti WiFi corrispondenti nel wpa-roamfile. es /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"
}

Quindi la rete "uni" utilizzerà DHCP mentre la rete "home_static" utilizzerà l'indirizzo IP statico 192.168.0.20. Sebbene non sia necessario utilizzare l' id_stropzione e il dispositivo utilizzerà solo le impostazioni predefinite (consultare il file doc).

Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.