Checklist para problemas com WiFi

Publicado por Luiz Santos em 04/05/2016

[ Hits: 5.638 ]

 


Checklist para problemas com WiFi



Deixo aqui um checklist genérico, que considero útil para usuários iniciantes que tenham problemas com WiFi, após ter visto muitos posts com os mesmos problemas e soluções bem parecidas.

Alguns dos problemas comuns podem ser: o sistema não reconhece a placa de rede WiFi, WiFi não gerenciável ou WiFi caindo a todo momento. Bom, chega de conversa e vamos ao que interessa.

Reconhecer a placa WiFi

1º passo: verificar placa de rede e módulo do kernel com os comandos abaixo:

# lspci -v
# lspci -v | grep -i "network"

O último comando acima produzirá uma saída parecida com esta:

0c:00.0 Network controller: Intel Corporation PRO/Wireless 5300 AGN [Shiloh] Network Connection
   Subsystem: Intel Corporation Device 1121
   Control: I/O- Mem+ BusMaster+ SpecCycle- MemWINV- VGASnoop- ParErr- Stepping- SERR+ FastB2B- DisINTx-
   Status: Cap+ 66MHz- UDF- FastB2B- ParErr- DEVSEL=fast >TAbort- SERR-
   [b]Kernel driver in use: iwlwifi
   Kernel modules: iwlwifi


# lshw
# lshw -C network

O comando acima produzirá uma saída parecida com esta:

*-network DISABLED
       description: Wireless interface
       product: Ultimate N WiFi Link 5300
       vendor: Intel Corporation
       physical id: 0
       bus info: pci@0000:0c:00.0
       logical name: wlan0
       version: 00
       serial: 00:21:6a:ca:9b:10
       width: 64 bits
       clock: 33MHz
       capabilities: pm msi pciexpress bus_master cap_list ethernet physical wireless
       configuration: broadcast=yes [b]driver=iwlwifi[/b] driverversion=3.2.0-0.bpo.1-amd64 firmware=8.83.5.1 build 33692 latency=0

link=no multicast=yes wireless=IEEE 802.11abgn
       resources: irq:46 memory:f1ffe000-f1ffffff


Se na saída do seu comando não aparecer as linhas "Kernel (lspci)" ou "driver (lshw)", o problema é que o Kernel não conseguiu alocar um módulo/driver para tua placa de rede. Sendo assim, uma intervenção manual é requerida.

Veja o link abaixo e procure conforme tua placa. Vamos pegar como exemplo a placa Intel:
Para iniciantes, acredito que o interessante neste link é apenas para conhecimento e para verificar o driver apropriado para tua placa. Com a informação em mãos, siga para a documentação da tua distro.

Por exemplo, o Debian:
Após instalar o essencial para sua distro, rode os comandos abaixo:

# modprobe -rv módulo
# modprobe -v módulo

Substitua "módulo" pelo módulo/driver apropriado para tua placa de rede. Após estes procedimentos, o WiFi provavelmente estará funcionando. Se ainda não funcionar, pode ser que precise "subir" a interface de rede, geralmente a wlan0, com um dos comandos a seguir:

# ifconfig wlan0 up
Ou:
# ip link set wlan0 up

Caso retorne a seguinte mensagem: SIOCSIFFLAGS: Operation not possible due to RF-kill

É necessário desbloquear o driver. Isto geralmente ocorre com drivers USB. Em todo caso, você deverá rodar o seguinte comando:

# rfkill list all

O comando acima retornará uma saída parecida com esta:

0: phy0: Wireless LAN
     Soft blocked: yes
     Hard blocked: no


Se a saída for algo como "Soft blocked: yes", rode o comando abaixo:

# rfkill unblock all

Caso a saída do comando acima seja parecida com esta:

0: phy0: Wireless LAN
     Soft blocked: no
     Hard blocked: yes


Quer dizer que o driver está bloqueado por hardware. Geralmente, a tecla de liga/desliga o WiFi está desligada, pressione-a e rode o rfkill list all. Caso ainda não resolva, pode ser que precise habilitar (enable) o WiFi na BIOS.

WiFi não gerenciável (ícone em cinza, não clicável)

Geralmente, este problema ocorre por conta do arquivo "/etc/network/interfaces". O conteúdo correto deste arquivo, é:

# This file describes the network interfaces available on your system
# and how to activate them. For more information, see interfaces(5).

# The loopback network interface
auto lo
iface lo inet loopback

Caso o arquivo esteja ok e mesmo assim o ícone permaneça cinza, abra o arquivo (com sudo) "/etc/NetworkManager/NetworkManager.conf".

Identifique a linha: "managed=false"
E mude para: managed=true

Salve e saia do arquivo. Rode o comando abaixo:

# service network-manager restart

Após isto, provavelmente o WiFi estará gerenciável novamente. É importante notar que, em caso de alteração em qualquer dos arquivos supracitados, o seguinte comando deverá ser rodado para que a alteração tenha efeito:

# service network-manager restart

Há casos em que os procedimentos acima não bastam, então, deixo mais uma opção: no mesmo arquivo (NetworkManager.conf), terá o seguinte conteúdo:

[main]
plugins=ifupdown,keyfile
dns=dnsmasq

[ifupdown]
managed=false

[keyfile]
unmanaged-devices=mac:mac_address

Tudo o que você terá que fazer é comentar a linha: unmanaged-devices
Ficando assim:

[main]
plugins=ifupdown,keyfile
dns=dnsmasq

[ifupdown]
managed=false

#[keyfile]
#unmanaged-devices=mac:mac_address

WiFi desconecta a todo momento

Opção que geralmente funciona:

echo "options iwlwifi 11n_disable=1" | sudo tee /etc/modprobe.d/iwlwifi.conf
sudo modprobe -rfv iwlwifi
sudo modprobe -v iwlwifi

Novamente, como exemplo, o driver iwlwifi, substitua o módulo/driver conforme tua realidade. O primeiro comando está adicionando a seguinte informação ao arquivo do driver:

iwlwifi:
options iwlwifi 11n_disable=1

Com isto, estamos desabilitando algumas características do driver iwlwifi referente ao padrão 802.11n. O restante do comando:

sudo tee /etc/modprobe.d/iwlwifi.conf

... está adicionando aquela informação ao arquivo de configuração do driver: iwlwifi.conf. Com isto, esta modificação torna-se persistente.


Bom, é isto.

Fiz um apanhado de tópicos resolvidos com este problema e, na maioria dos casos, a solução foi uma destas. Espero que seja útil.

Abraços.

Outras dicas deste autor

Removendo mensagem do openrc-run no Gentoo

Leitura recomendada

Instalação do Packet Tracer 8 no openSUSE Tumbleweed

Acesso remoto gráfico (servidor e cliente) pelo Gnome

Compartilhando arquivos entre computadores com Woof

Ativando SSH no Raspberrypi no Sistema Operacional Raspbian (sem trocas de cabos)

Adicionar/Excluir Usuários no Roteador Technicolor (TD5136v2) via SSH

  

Comentários

Nenhum comentário foi encontrado.



Contribuir com comentário




Patrocínio

Site hospedado pelo provedor RedeHost.
Linux banner

Destaques

Artigos

Dicas

Tópicos

Top 10 do mês

Scripts