Configure o guessnet para alternar automaticamente entre LAN e WLAN

3

Eu quero configurar guessnet e wpa_supplicant de forma que, se eu conectar meu cabo LAN, ele se conecte à rede pelo cabo e, se eu desconectá-lo, ele alterne automaticamente para WLAN e vice-versa. Eu consegui fazer funcionar, no entanto, se eu desligar o cabo, leva 10 a 20 segundos para se conectar à rede WLAN, o que é bastante lento. Por outro lado, se eu conectar o cabo, levará apenas um segundo para desconectar da WLAN e conectar à LAN.

Existe alguma maneira de obter uma configuração melhor para tornar a comutação para WLAN muito mais rápida?

A propósito, quando eu tentei novas configurações eu tive que reiniciar frequentemente, o que foi muito chato, um simples service networking restart não foi suficiente - talvez isso tenha que fazer alguma coisa com a minha configuração.

Meu sistema é o Ubuntu 13.10. Aqui estão meus arquivos de configuração:

/etc/network/interfaces

auto lo
iface lo inet loopback

#use guessnett
mapping eth0
        script /usr/sbin/guessnet-ifupdown
        #map timeout: 3
        map default: unknown


iface home inet static
      address 192.168.1.80
      netmask 255.255.255.0
      gateway 192.168.1.1
      dns-nameservers 192.168.1.1
      test1 peer address 192.168.1.1


iface no-net inet manual
      test2  missing-cable

iface unknown inet dhcp

iface wlanWork inet dhcp

auto wlan0
iface wlan0 inet manual
       wpa-roam  /etc/wpa_supplicant/wpa_supplicant.conf

E este é meu /etc/wpa/supplicant.conf

ctrl_interface=/var/run/wpa_supplicant

eapol_version=1

ap_scan=1

network={
    ssid="mywlan"
    scan_ssid=1
    psk="1234"
    proto=RSN
    key_mgmt=WPA-PSK
    pairwise=CCMP
    group=CCMP
    id_str="home" ## specified in /etc/network/interfaces
}


network={
    ssid="wlanWork"
    scan_ssid=1
    psk="1234"
    proto=RSN
    key_mgmt=WPA-PSK
    pairwise=CCMP
    group=CCMP
    id_str="wlanWork" ## specified in /etc/network/interfaces
}

Finalmente, isso é /etc/default/ifplugd , conforme gerado por dpkg-reconfigure ifplugd

INTERFACES="eth0"
HOTPLUG_INTERFACES=""
ARGS="-q -f -u0 -d10 -w -I"
SUSPEND_ACTION="stop"

Editar Eu notei alguns problemas com esta configuração que não posso reproduzir. Uma vez a WLAN funcionou, mas a LAN não tinha a rota / gateway adequada. Depois de configurar o gateway manualmente via route add default gw 192.168.1.1 e reinicializar, funcionou novamente. Depois de uma segunda reinicialização, nada funcionou, apesar do fato de eu ter obtido o IP correto (mesmo ping 192.168.1.1 não funcionou). Então eu tive que fazer sudo dhclient para obter uma conexão com a Internet funcionando novamente ...

    
por student 22.02.2014 / 13:19

1 resposta

1

Tente pesquisar as métricas de rota. Você deve poder classificar isso inserindo duas rotas padrão com métricas diferentes na tabela de roteamento. As métricas são usadas para determinar o custo de uma rota, uma rota com um custo menor é considerada melhor e será escolhida em detrimento de outro caminho de custo mais alto.

Se você quiser que sua interface LAN seja sua rota principal, atribua a ela uma métrica menor que a da WLAN. Dessa forma, você sempre terá a WLAN em execução, mas não será usada, a menos que a interface da LAN esteja indisponível.

Você pode usar o iproute2 para conseguir isso. iproute2

Seus comandos serão parecidos com:

ip ro add 0.0.0.0 0.0.0.0 via 192.168.1.1 dev eth0 metric 1
ip ro add 0.0.0.0 0.0.0.0 via 192.168.2.1 dev wlan metric 50

Não se esqueça de remover sua rota padrão pré-instalada.

Espero que isso ajude!

    
por 27.02.2014 / 16:13