mai
11
2010

Resolvendo Problema de Conexão com Wireless.


Há alguns dias estava com um problema bem chato no Arch linux, a minha conexão wireless às vezes não conectava, e era preciso reiniciar a máquina alguns vezes para começar a funcionar. Com algumas ajudas do pessoal da comunidade do archlinux-br.org consegui verificar que minha placa wireless(BCM 4312) mudava de posição no UDEV, hora estava na eth0 e hora estava na eth1, mas só funcionava corretamente quando estava na eth1, sendo assim precisei fazer uma regra para o UDEV reconhecer a minha placa na posição certa. Se você tiver um problema parecido, basta fazer o que segue abaixo:

1 – Precisamos verificar primeiro qual o código MAC das placas. O código MAC é como se fosse o chassi da sua placa no sistema, é um código único para cada tipo de placa. Para saber faça o seguinte:

$ ifconfig

O resultado desse comando terá uma saída parecida com a saída abaixo, lembrando que o código MAC podemos identificar com o sublinhado que eu coloquei:

eth0 Link encap:Ethernet HWaddr 00:24:2B:33:F8:47
inet addr:192.168.1.101 Bcast:255.255.255.255 Mask:255.255.255.0
inet6 addr: fe80::224:2bff:fe33:f847/64 Scope:Link
UP BROADCAST RUNNING MULTICAST MTU:1500 Metric:1
RX packets:5006 errors:0 dropped:0 overruns:0 frame:3399
TX packets:5797 errors:7 dropped:0 overruns:0 carrier:0
collisions:0 txqueuelen:1000
RX bytes:3440252 (3.2 Mb) TX bytes:1243645 (1.1 Mb)
Interrupt:17 Base address:0xc000

eth1 Link encap:Ethernet HWaddr 00:1E:C9:FB:95:9E
UP BROADCAST MULTICAST MTU:1500 Metric:1
RX packets:0 errors:0 dropped:0 overruns:0 frame:0
TX packets:0 errors:0 dropped:0 overruns:0 carrier:0
collisions:0 txqueuelen:1000
RX bytes:0 (0.0 b) TX bytes:0 (0.0 b)
Interrupt:16

lo Link encap:Local Loopback
inet addr:127.0.0.1 Mask:255.0.0.0
inet6 addr: ::1/128 Scope:Host
UP LOOPBACK RUNNING MTU:16436 Metric:1
RX packets:47 errors:0 dropped:0 overruns:0 frame:0
TX packets:47 errors:0 dropped:0 overruns:0 carrier:0
collisions:0 txqueuelen:0
RX bytes:54337 (53.0 Kb) TX bytes:54337 (53.0 Kb)

Na saída acima podemos verificar a diferença das saídas de uma placa de rede a cabo e uma placa de rede wireless, sendo que no código acima a placa wireless esta na saída do eth1 e da placa de rede a cabo esta na saída da eth0.

2 – Agora iremos fazer a regra para que sempre possa ser essa posição a correta:

# nano /etc/udev/rules.d/10-network.rules

Estamos criando um arquivos de nome 10-network.rules, e devemos colocar o código abaixo nesse arquivos:

SUBSYSTEM=="net", ATTR{address}=="aa:bb:cc:dd:ee:ff", NAME="eth0"
SUBSYSTEM=="net", ATTR{address}=="ff:ee:dd:cc:bb:aa", NAME="eth"

Sendo que na parte do ATTR{address}==”aa:bb:cc:dd:ee:ff deve substituir o texto destacado em negrito pelo código MAC da sua placa.

Basta reiniciar o computador e pronto, não terá mais o problema que descrevi acima, aqui resolveu 100%.

Abraços à todos.

Fonte: http://wiki.archlinux.org/index.php/Udev#Mixed_Up_Devices.2C_Sound.2FNetwork_Cards_Changing_Order_Each_Boot

4 Comentários + Comentário

  • Brother surgiu uma pequena dúvida aqui mas que pode jogar tudo por água abaixo…

    SUBSYSTEM==”net”, ATTR{address}==”aqui deixo entre aspas mesmo?”, NAME=”eth0″
    SUBSYSTEM==”net”, ATTR{address}==”ff:ee:dd:cc:bb:aa”, NAME=”eth ou eth1?”

    Vlw brother, parabéns pelo blog!

    • Ola gio,

      SUBSYSTEM==”net”, ATTR{address}==”aqui deixo entre aspas mesmo?”, NAME=”eth0″

      Exato! Entre aspas!

      SUBSYSTEM==”net”, ATTR{address}==”ff:ee:dd:cc:bb:aa”, NAME=”eth ou eth1?”

      Aqui para mim é o seguinte, a minha placa de rede (cabo) esta na eth0, e minha wireless na eth1, sendo assim se o MAC for da placa wireless será eth1 mesmo.

      Abraços

  • Ola gio,

    Faça assim!

    Delete o arquivo .rules que você fez, e faça o seguinte:

    no terminal dê o comando lspci -k lá você vai ver todos os drivers que carregam para cada periférico do seu computador, procure a sua placa de rede. (no meu caso é o driver sky2)

    Depois coloque na parte MODULES do rc.conf a ordem que você quer que carregue os drivers, no meu caso o MODULES esta assim:

    MODULES = (sky2 lib80211 wl !ssb !b43)

    Assim sempre carregará na ordem que você colocar, sempre a placa de rede estará na eth0 e a wireless na eth1 como deve ser!

    Abraços

  • [...] wireless e estava montando no lugar errado de novo como podemos ver nesse artigo aqui no blog (http://www.tvieira.net/resolvendo-problema-de-conexao-com-wireless/) fiz o que esta no artigo, sendo que havia dado certo da outra vez, mas infelizmente não estava [...]

Faça um comentário

XHTML: Você pode usar estas tags: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <strike> <strong> <pre lang="" line="" escaped="" highlight="">

Parceiros

  • A Casa do Linux Escola que oferece excelentes cursos na área de software livre.
  • C# Brasil Blog com muitas dicas interessantes sobre C#, ASP.NET, WinForm, WebForm, AJAX e muito mais.
  • Epidemic GNU/Linux Website da distribuição linux baseada no Debian testing.
  • Projetos e TI Site com informações, dicas, tutorias sobre vários aspectos no ramo da TI.
  • Sempre Update Blog com diversas informações sobre o mundo do software livre.
  • SUD.tvieira.net Blog com conteúdo sobre A Igreja de Jesus Cristo dos Santos dos Últimos Dias.
  • techmall Loja virtual com suprimentos e acessórios para informática e produtos de tecnologia em geral.

Feedburner

Cadastre o seu e-mail abaixo e receba as atualização do blog:

Facebook

Lista de Links

  • Br-Linux Blog sobre o que rola no mundo do software livre.
  • Dicas-L Site com várias dicas sobre linux.
  • Distrowatch Site com informações de várias distribuições linux e com o rank de distribuições mais conhecido no mundo linux.
  • Notícias Linux Site com notícias sobre o mundo linux.
  • Viva o Linux Site com muitas informações como dicas e tutoriais sobre linux.