edenis – matando o tempo, a canetadas

Abril 20, 2006

Instalando placas wireless com ndiswrapper

Arquivado em: Tutoriais — edenis @ 3:39 pm

Instalando uma placa de rede sem fio no Linux, usando o ndiswrapper

Elias Edenis
edenis [at] ufpr.br

Para instalar sua placa, sem ter o driver para Linux, vamos usar o ndiswrapper. O módulo ndiswrapper é carregado, usando o driver do Windows, e fornece uma interface de rede para o Linux, que não precisa saber que driver é, o que faz do ndiswrapper um emulador. Para maiores detalhes, verifique em http://www.guiadohardware.net/termos/ndiswrapper.

Veja se você tem o ndiswrapper instalado (é só digitar ndiswrapper na linha de comando, se não retornar mensagem do programa e sim uma mensagem de que o comando inexiste, você não o tem) e se não tiver procure a versão mais nova em http://ndiswrappper.sourceforge.org .

Mas vamos ao que interessa, pois não temos muito espaço:

Primeiro passo. Copie o arquivo de driver “.inf” da sua placa para um diretório em seu sistema.
Dentro do diretório onde se encontra o “.inf” digite:

:~# ndiswraper -i arquivo.inf

Verifique se o driver foi instalado:

:~# ndiswrapper -l

Se instalado irá aparecer uma linha do tipo:

Installed drivers
arquivo.inf driver installed, hardware present

Se não está dando certo, verifique se a placa está instalada corretamente e se o driver é o da placa mesmo. Se deu tdo certo, digite:

# ndiswrapper -m

Este comando irá inscrever o ndiswrapper no modprobe, que irá carregá-lo ao iniciar o sistema.
Para testarmos já, mandaremos carregar. Digite:

# modprobe ndiswrapper

Verifiquemos se a interface “Wlan” foi carregada:

:~# ifconfig

Deve retornar algo assim, além da outras interfaces instaladas:

wlan0 Link encap:Ethernet HWaddr 00:0E:8B:FF:37:2E
inet addr: 0.0.0.0 Bcast: 0.0.0.0 Mask:0.0.0.0
UP BROADCAST RUNNING 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 Kb) TX bytes:0 (0.0 b)
Interrupt:11 Memory:41100000-41104000

Definamos o endereço IP para a interface:

:~# ifconfig wlan0 192.168.0.4 (substitua pelo seu IP)

:~# ifconfig wlan0

wlan0 Link encap:Ethernet HWaddr 00:0E:8B:FF:37:2E
inet addr:192.168.0.4 Bcast:192.168.0.255 Mask:255.255.255.0
UP BROADCAST RUNNING 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 Kb) TX bytes:0 (0.0 b)
Interrupt:11 Memory:41100000-41104000

Você pode trocar seu broadcast caso precise:

:~# ifconfig wlan0 broadcast

Para maiores detalhes:

:~# man ifconfig

Se sua rede for fornecer seu endereço via dhcp, configure primeiro o essid e o modo.
Digite:

:~# iwconfig wlan0

Vai retornar algo assim:

wlan0 IEEE 802.11b ESSID:”off/any” Nickname:”nome_do_host”
Mode:Managed Frequency:2.437 GHz Access Point: 00:13:46:70:60:6C
Bit Rate=11 Mb/s
RTS thr=2428 B Fragment thr=2428 B
Encryption key:off
Link Quality:0/100 Signal level:0 dBm Noise level:0 dBm
Rx invalid nwid:0 Rx invalid crypt:0 Rx invalid frag:0
Tx excessive retries:0 Invalid misc:0 Missed beacon:0

Para configurar o essid:

:~# iwconfig wlan0 essid home (troque home pelo essid de sua rede)

Para configurar o modo:

:~# iwconfig wlan0 mode managed

Leia o manual do iwconfig para maiores detalhes (sobre modos e outras coisas).

:~# man iwconfig

Verifique se deu tudo certo:

:~# iwconfig wlan0

Deve retornar algo assim:

wlan0 IEEE 802.11b ESSID:”home” Nickname:”nome_do_host”
Mode:Managed Frequency:2.437 GHz Access Point: 00:13:46:70:60:6C
Bit Rate=11 Mb/s
RTS thr=2428 B Fragment thr=2428 B
Encryption key:off
Link Quality:0/100 Signal level:-78 dBm Noise level:-256 dBm
Rx invalid nwid:0 Rx invalid crypt:0 Rx invalid frag:0
Tx excessive retries:0 Invalid misc:0 Missed beacon:0

Beleza… Tá conectado (às vezes pode demorar um pouco para conectar, até pegar o sinal).

Para pegar o endereço IP via dhcp, digite:

:~# dhcpd wlan0

Agora, vamos adicionar uma rota de saída padrão (um default gateway).

:~# route add default gw 192.168.0.254 dev wlan0 (troque o IP pelo do seu gateway)

Confirme:

:~# route

Tem que retornar algo assim:

Kernel IP routing table
Destination Gateway Genmask Flags Metric Ref Use Iface

loopback ——- * —– 255.0.0.0 — U —– 0 — 0 — 0 — lo

default — 192.168.0.254 – 0.0.0.0 – UG —- 1 — 0 —- 0 – wlan0

(os ” — ” são chuncho, pois a tabela estava saindo deformada. Lamento :/ )

Agora, você vai editar o arquivo /etc/resolv.conf e botar lá o dns. Verifique com o provedor qual será.

Deve ficar assim:

domain seudominio
search seudominio
nameserver ip_do_dns_primario
nameserver ip_do_dns_secundario

Aí só navegar…

Outro comando:

;~# man iwlist

Boa sorte!

Blog no WordPress.com.