¿Cuál es la diferencia entre `wpa-roam` y` wpa-conf` en el archivo / etc / network / interfaces?

46

Yo publicado una pregunta previamente sobre cómo configurar una dirección IP estática en el RPI y finalmente descubierto , junto con algunos otros , que la respuesta era a cambio wpa-roamde wpa-confcuando se apunta a /etc/wpa_supplicant/wpa_supplicant.conf, pero qué hace este trabajo?

es decir, cuando tengo esto en mi /etc/network/interfacesarchivo:

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

Suponiendo que /etc/wpa_supplicant/wpa_supplicant.confse haya configurado correctamente, este método no funciona.

Este es el resultado relevante de 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

Así como de 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)

Pero todo mágicamente comienza a trabajar una vez que cambie wpa-roama wpa-confy correr sudo /etc/init.d/networking restart. ¿Cuándo usarías wpa-roamy cuándo usarías wpa-conf?

3cheesewheel
fuente

Respuestas:

30

wpa-roaming es un método con el que puede navegar y conectarse a redes inalámbricas.

El resultado de la siguiente configuración es que si no se conecta un cable de ethernet, wlan0 tiene prioridad y lo conecta a su red inalámbrica deseada o a una red inalámbrica abierta disponible o una red inalámbrica predeterminada. Si conecta un cable de Ethernet, la conexión de red cableada inmediatamente cierra el acceso WiFi y eth0 luego lo conecta a la red cableada. Al desconectar el cable de red, la conexión inalámbrica volverá a estar disponible al instante.

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

Supongo que esa wpa-confes la configuración estática que no es necesaria para roaming a través de interfaces de red. No pude encontrar ningún documento relevante y detallado para esto.

Por cierto, tengo el mismo problema con mi configuración WiFi. Mi WiFi no funciona cuando Ethernet cableada está desconectada. Así que cambié wpa-roam a wpa-conf como tú, funcionó.

gurcanozturk
fuente
1
Sospecho que si desea usar wpa-roam, debe configurar wlan0 en manual en lugar de dhcp o estático. Sin embargo, eso es solo una teoría.
Lawrence
55
Si, eso es correcto. Roaming significa que permite que la interfaz inalámbrica intente conectarse a otros puntos de acceso "roaming", pero si solo tiene 1 juego, significa que intentará "reconectarse" si algo sale mal. Con wpa-conf no se volverá a conectar al soltar.
Piotr Kula
@Lawrence, de hecho. Sin embargo, más que una teoría: se informa cuando corressudo /etc/init.d/networking restart
Jochem Schulenklopper
@jschulenklopper Ah. Ni siquiera me di cuenta de eso. Yo no uso /etc/init.d/networking restarten absoluto jaja.
Lawrence
3
Otra diferencia a tener en cuenta es que se wpa-roam ifplugddesconecta wlan0cuando eth0está enchufado. Es un comportamiento configurable y puede ser específico de RaspberryPI.
domen
4

También se puede encontrar una explicación completa de los dos modos de operación (Managed y Roaming) para wpa_supplicant en su archivo de documentación instalado localmente, que se puede ver (una versión en línea [¿anterior?) Está aquí ):

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

Explica que si bien el modo Administrado solo permite la conexión a una red WiFi configurada individualmente, el modo Roaming permite la conexión a múltiples redes WiFi con configuraciones de red potencialmente diferentes que pueden controlarse agregando la opción especial id_strque luego se compara con las entradas correspondientes en el archivo de configuración de red: especificado en el /etc/network/interfacesarchivo. p.ej:

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

Donde se especifican las redes WiFi correspondientes en el wpa-roamarchivo. por ejemplo /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"
}

Entonces la red "uni" usará DHCP mientras que la red "home_static" usará la dirección IP estática 192.168.0.20. Aunque uno no tiene que usar la id_stropción y el dispositivo solo usará los valores predeterminados (vea el archivo doc).

Pierz
fuente