Compartilhando Banda Larga via Bluetooth com Ubuntu

Iniciado por eggx.geo, 07 de Novembro de 2006, 17:49

tópico anterior - próximo tópico

eggx.geo

Estava querendo compartilhar a minha internet banda larga de casa com meu laptop mas como não tinha um hub disponível e nem um access point ou placa wifi (tinha apenas um pcmcia wifi para laptop), tive que me virar com a única coisa que tinha em mãos. Dois Dongle usb bluetooth.

Dongle usb bluetooth são aqueles chaveirinhos (que parece um pendrive) que você liga na porta usb do seu micro pra enviar e receber arquivos de seu celular, também é conhecido como adaptador usb bluetooth.

Montar uma rede uma rede bluetooth para a finalidade de compartilhar banda larga não é a melhor alternativa porque este protocolo não foi concebido para este fim e sim para interligar dispositivos. Para montar uma rede dessas o ideal seria usar um hub e cabeamento normal de rede ou wifi. Mas como tudo, sempre há vantagens e desvantagens.

Como vantagens temos:
- Custo - No mercado livre já é possível encontrar adaptadores bluetooh por cerca de R$ 30,00 enquanto um adaptador pci wifi por sai por cerca de R$ 80,00 e um usb wifi fica em torno de R$ 110,00.
- Uso - Além do uso para rede de compartilhamento de internet, é possível usar os Dongles Bluetooth para trocar dados com Celulare, Palmtops e outros dispositivos que utilizem bluetooth.

Como desvantagem temos:
- Velocidade de conexão (Banda) - O padrão bluetooth troca dados a velocidade 1Mb/s, mas isso ocorreria apenas em condições ideais, no mundo real, difícilmente passa de 700 Kb/s. Se a banda larga for maior que isso, a rede bluetooth não conseguirá utilizar toda banda disponível.
- Alcance - Uma rede wifi padrão 801.b ou 801.g tem alcance de cerca de 100 metros, podendo ser ampliado utilizando antenas especiais. No padrão bluetooth existem duas classes, uma que atinge 100 metros nominais e outra que atinge 10 metros nominais. No mundo real, por questões de consumo de energia, existência de obstáculos, etc, o alcance real é muito inferior aos valores nominais, por exemplo, um adaptador para 10 metros difícilmente ultrapassa o alcance de 3 metros.
- Limite - Uma rede piconet (nome dado a redes bluetooth) suporta apenas 8 dispositivos simultâneos, o que limita o seu uso como se fosse uma rede wifi ou cabeada.

Existem mais de uma maneira de se montar uma rede bluetooth host to host (como é chamado em alguns sites), eu optei pela que me pareceu mais simples.

Para montar a rede foi preciso o seguinte:
- 2 Adaptadores USB Bluetooth;
- 1 computador (usando Ubuntu) ligado a internet configurado e funcionando utilizando um ip fixo (vide Obs.3 no final desta dica), que chamarei de Servidor;
- 1 laptop ou computador com Ubuntu instalado, que chamarei de Cliente;

Para o funcionamento do Adaptador USB instalei nas 2 máquinas, pelo Synaptic, os pacotes bluez-utils e gnome-bluetooth (esse último serve para troca de dados com celulares e palmtops).

Instalando esses pacotes, plugue o Adaptador na porta USB e veja se está funcionando digitando no terminal:

hcitool inq

Se o adaptador for reconhecido e estiver funcionando, deverá aparecer algo semelhante abaixo:
00:0F:DE:7E:46:A5 clock offset: 0x4ff3 class: 0x520204

O -> 00:0F:DE:7E:46:A5 da linha acima é o endereço MAC do adaptador Usb da maquina em questão.

Após testado e funcionando, vamos partir para a configuração da rede em si, rodando os comandos no terminal.

1) Na máquina cliente (no meu caso o laptop que vai receber acesso a internet) rodar:

hcitool scan


Vai aparecer algo parecido com:
Scanning ...
00:07:E0:0C:A1:5A My Palm
00:0F:DE:7E:46:A5 eggxgeo-desktop

Anote essas informações, elas indicam se os computadores estão se enxergando.

2) Na máquina servidora (que tem a conexão com a internet banda larga) vamos criar o script para que ela fique esperando por conexões ppp:

Crie um novo arquivo digitando o seguinte no terminal

sudo gedit /etc/ppp/peers/dun

Copie e cole o script abaixo no novo arquivo.

debug
57600
noipdefault
proxyarp
# IP endereço do PC Servidor : IP endereço para a máquina cliente
192.168.1.30:192.168.1.50
# Servidor DNS
ms-dns 192.168.1.1
ktune
noauth
local
nodefaultroute
noipx


Preste atenção nos comentários e faça as alterações conforme as configurações de IP da máquina servidor e do servidor DNS.
Obs. O endereço IP para máquina cliente deve estar na mesma subrede (no caso 192.168.1.xxx) da maquina servidora senão não irá funcionar.
O servidor DNS é o mesmo endereço do modem ou use um DNS que você saiba que esteja funcionando (pode pesquisar no site www.abusar.org).


3) Na máquina servidora vamos rodar o programa que fica escutando e esperando as conexões PPP bluetooth:
dund --listen --persist --msdun call dun


4) Na máquina cliente vamos fazer o pareamento, certificar que a senha no arquivo /etc/bluetooth/pin seja igual nas duas máquinas (geralmente vem por padrão a senha 1234): Se não for, use sudo gedit /etc/bluetooth/pin para alterar a senha.

No terminal digite

sudo hcitool cc 00:0F:DE:7E:46:A5

se hover erro, editar /etc/bluetooth/hci.conf e substituir o programa do
pin_helper por /usr/bin/bluepin e reiniciar o bluez (sudo /etc/init.d/bluez-utils restart)

Obs.: o endereço MAC digitado é o encontrado no passo 1, no caso, o endeço MAC da máquina servidora


5) Agora vamos conectar uma máquina na outra, na máquina cliente vamos digitar:

sudo dund --connect 00:0F:DE:7E:46:A5 (endereço MAC encontrado em hcitool scan)


6) Se tudo corre bem as máquinas já estarão conectadas, para varificar vamos digitar na máquina cliente:

ifconfig


se aparecer a interface ppp0 como algo abaixo:

ppp0 Encapsulamento do Link: Protocolo Ponto-a-Ponto
inet end.: 192.168.1.50 P-a-P:192.168.1.40 Masc:255.255.255.255
UP POINTOPOINT RUNNING NOARP MULTICAST MTU:1500 Métrica:1
pacotes RX:123183 erros:0 descartados:0 excesso:0 quadro:0
Pacotes TX:88062 erros:0 descartados:0 excesso:0 portadora:0
colisões:0 txqueuelen:3
RX bytes:178060120 (169.8 MiB) TX bytes:5717577 (5.4 MiB)

Quer dizer que a conexão foi efetuada com sucesso.


7) Agora vamos alterar a tabela de roteamento da máquina cliente para utilizar a interface ppp0 como gateway padrão:

sudo route del default
sudo route add default ppp0


Agora é só abrir o navegador na máquina cliente e navegar na internet.

Deve funcionar.

Obs.1 - Com essa dica também é possível conectar PDAs com Palm OS simplesmente fazendo o pareamento com o PC Servidor e configurando (em Bluetooth) para conectar a um PC.

Obs.2 - Se quiser que o servidor esteja sempre pronto para receber a conexão da máquina cliente, pode se incluir em Sistema/Preferencia/Sessões/ Aba Programas Iniciais, a linha abaixo:
dund --listen --persist --msdun call dun

Obs.3 - Essa dica foi testada utilizando Modem ADSL Roteador. Com outras formas de acesso a internet, ex. Pppoe (modem não roteador), Cabo, etc, pode ser que funcione mas como o IP da Máquina Servidora torna-se dinâmico provavelmente seja necessários outros passos não descritos aqui.

Obs.4 - É possível utilizar Windows na máquina cliente, mas como não tentei, desconheço os passos necessários.

Referências:
http://aquariusoft.org/page/palm/bluetooth_linux/
http://www.devx.com/assets/download/10183.pdf
http://www.guiadohardware.net/artigos/285/
Egg

arlei

Cara, ótima dica.
Eu ja tinha feito isso com uma maquina Windows XP para navegar pelo meu Palm e funcionava muito bem, apesar de que para navegar na web pela telinha do Palm não é la grande coisa, mais para pegar e enviar uns e-mails, um bate-papo e até conectar SSH (TuSSH) em uma maquina Linux vae que uma blz.

Ta registrado a dica.
T+
Arlei

Alysson Neto

Funciona para acessar a net de um cel (modelo lg zafira)
"Eu rejeito sua realidade e substituo pela minha" Adam Savage,

arlei

n3t0,

me corrija se estiver enganado, mais entendi que vc deseja usar seu celular para acessar a internet pela rede bluetooth.
Bem, se for isso um celular conectar a internet por uma rede bluetooth compartilhada eu desconheço, e até arrisco a palpitar que não acredito que ira funcionar, até porque estes aparelhos terem sido desenvolvidos para que o inverso seja verdadeiro. Ou seja, conectar teu desktop, notebook ou mesmo teu PDA pelo celular (modem interno) seja por bluetooth, wi-fi ou mesmo cabo.

T+
Arlei


ics

 Srs membros,

Há a possibilidade de compartilhar internet apartir de um pc com o Ruindows 7 (desculpem, quis dizer Windows) para um Netbook Ubuntu 10.10? Como fazer?

.::juan::.

Corrigindo,aqui na minha cidade ja vi adptadores bluetooht por 10 reais e em uma site vende por 1,99 dolar mais ou menos,se se intereçarem eu posto link,voltando o assunto outro dia vi que o wi-fi faz mal pras plantas em uma materia "http://www.baixaki.com.br/tecnologia/6613-estudo-indica-que-sinal-wi-fi-pode-deixar-arvores-doentes.htm", se foi voce que inventou isso,deve ter acabado de fazer uma grande descoberta...
agora uma duvida,meu pc ja vem bluetooth e o segundo tambem serve esse ou tem que ter o receptor

Kamei Hyoga

Pela lógica, deve funcionar sim. Foram usados dongles, porque, na época, não lembro de nenhum pc sendo lançado com bluetooth embutido.

amaida

#7
O meu ubuntu 10.10 já navega na internet via bluetooth. Veja o screenshot em
http://www.vivaolinux.com.br/screenshot/Gnome-Ubuntu-10.10-acessando-internet-via-bluetooth/