
Quero alternar entre Wifi e Ethernet no Linux (Ubuntu 10.04). Pesquisei de várias maneiras e descobri que isso pode ser feito usando firestarter — troca automática entre redes com e sem fio.
Para isso preciso instalar o pacote firestarter no Ubuntu.
Esta é a maneira correta de alternar entre eth0 e wifi? Eu queria implementá-lo usando linha de comando sem instalar nenhum pacote novo.
Por favor ajude. desde já, obrigado
Responder1
Connman(1)
pode ser usado para priorizar suas conexões para preferir redes com fio e conectar-se automaticamente a redes sem fio quando a conexão com fio estiver indisponível. Ele é suportado pela Intel, portanto pode ser hostil a hardware de rede que não seja da Intel: não posso usá-lo, Connman(1)
pois meu driver wifi não define sinalizadores que a Intel espera ativar o adaptador. Recebo o erro "sem operadora" e sem conexão wifi. No entanto, parece conectar-se rapidamente quando conecto a conexão com fio.
Você precisa configurar /etc/connman/main.conf/main.conf
com algo como:
BackgroundScanning = false
DefaultAutoConnectTechnologies = ethernet,wifi
PreferredTechnologies = ethernet,wifi
SingleConnectedTechnology = true
para garantir que apenas wifi ou ethernet estejam conectados. Em seguida, use uma connmanctl(1)
sessão interativa conforme indicado na página de manual para conectar-se ao wifi pela primeira vez ou edite o arquivo de configurações da sua interface encontrado em /var/lib/connman
(isso parece mais fácil para mim, mas é necessário reiniciar).connman-service.config(5)
Se você tiver ifupdown
ou suas variantes instaladas, poderá removê-las para evitar colisões antes de instalarconnman(1)
Responder2
Criei o script para conexão e desconexão de wifi e ethernet
Desconecte o wi-fi
killall wpa_supplicant
wirelessname=`ls /sys/class/net | grep wlan* | head -1`
ifconfig $wirelessname down
Conecte o wi-fi
wirelessname=`ls /sys/class/net | grep wlan* | head -1`
ifconfig $wirelessname up > /dev/null 2>&1 &
killall wpa_supplicant > /dev/null 2>&1 &
iwconfig $wirelessname power off > /dev/null 2>&1 &
wpa_passphrase $1 $2 > /root/wps.conf
wpa_supplicant -Dwext -i$wirelessname -c/root/wps.conf > /dev/null 2>&1 &
sleep 5
dhclient -r > /dev/null 2>&1 &
dhclient $wirelessname > /dev/null 2>&1 &
Conectar Ethernet
ifconfig $(ip link show | grep eth | grep state | awk '{printf $2}'| sed -e 's/:$//') up
ifconfig $(ifconfig | grep eth | awk '{print $1}'| head -1 ) $(ifconfig | grep Bcast | awk '{printf $2}' | cut -c6-) up
Desconectar Ethernet
ifconfig $(ifconfig | grep eth | awk '{print $1}' | head -1 ) down