Primeiro, você pode verificar novamente o seu arquivo /etc/network/interfaces
contra o meu:
auto lo
iface lo inet loopback
auto wlan2
iface wlan2 inet dhcp
wpa-ssid <my essid>
wpa-psk <my passphrase>
auto eth0
iface eth0 inet static
address <my static ip>
network <my local network>
netmask <my netmask>
(Meu ESSID e senha não têm espaços, por isso não sei se você precisa de cotações para tais entradas ou não)
Acho que a ordem das interfaces é importante. Se você quiser usar principalmente wifi, eu acho que você precisa disso primeiro. Leia mais em man interfaces
.
Se isso parece bom, você pode executar alguns problemas em profundidade:
Você precisa de três coisas básicas para a rede Wi-Fi: uma conexão, um endereço IP e o roteamento apropriado.
Você pode solucionar problemas executando algumas operações de linha de comando para ver se consegue se conectar (independente do /etc/network/interfaces
).
Primeiro redefina tudo
sudo killall wpa_supplicant
sudo ip link set <interface> down
sudo dhclient -r <interface>
Em seguida, inicie o processo de fazer uma conexão:
# turn on the interface without auto-configuring:
sudo ip link set <interface> up
Verifique se você consegue ver a rede em questão:
# display wifi beacons being broadcast by nearby access points
sudo iwconfig <interface> scan
Configure e execute o wpa_supplicant:
# create a config file for wpa, use quotes if there's a space:
wpa_passphrase "<your ESSID>" "<your passphrase>" > ~/wpa.conf
# run wpa_supplicant on that config file, in the foreground
sudo wpa_supplicant -D wext -i <interface> -c ~/wpa.conf
A saída do wpa_supplicant ajudará você a solucionar problemas da conexão wifi. Se ele diz que se conecta, você pode executar os seguintes comandos em um novo prompt de comando ou enviar wpa_supplicant para o segundo plano pressionando ctrl-z e executando
# after pressing ctrl-z to pause the wpa_supplicant, run it in background
bg "%sudo"
Agora execute sudo iwconfig
para verificar sua conexão, as partes como "ESSID:" e "Access Point:" devem ter valores.
Seu próximo passo é obter um endereço IP do servidor DHCP do seu roteador:
sudo dhclient <interface>
Se você estiver conectado à rede, isso não deve falhar. Se isso acontecer ... talvez redefinir seu roteador? Teste se funcionou corretamente executando sudo ifconfig
. Supondo que você esteja usando endereços IPv4, deverá ver um "inet addr:" do IPv4 que corresponde ao seu roteador, provavelmente um 10. . . * Ou um endereço 192.168.1. *.
dhclient
também deve definir seu roteamento adequadamente, portanto (na ausência de outras conexões de rede à Internet) sudo ip route
ou sudo route
deve ter uma opção "padrão" que aponte para seu roteador wifi no <interface>
.
Depois disso, você pode testar a conexão com seu roteador local:
ping <router's ip address>
Teste se pode se conectar a um endereço IP remoto
ping 8.8.8.8 # google's dns server
Teste se suas configurações de DNS funcionam:
ping google.com
Se isso funcionar, você deve ser sólido. Se não, então você pode alterar o seu arquivo /etc/resov.conf
para ler
nameserver 8.8.8.8
nameserver 8.8.4.4
Agora, se você tiver verificado que pode se conectar à rede com essas etapas, poderá usar algumas das mesmas ferramentas para solucionar a abordagem /etc/network/interfaces
.
Posso ajudar mais se você compartilhar a saída de sudo ifconfig
, sudo iwconfig
, sudo route
ou sudo ip route
(às vezes, quando sua conexão está desarrumada, um ou o outro travará), a seção relevante de sudo iwlist <interface> scan
, o arquivo /etc/network/interfaces
e quaisquer detalhes relevantes de sudo dmesg
.