Continuando minha insana busca pelo acesso à internet via Bluetooth no meu Palm eu descobri milhares de links. Cada link que achei mostrava uma maneira um pouco diferente e algumas vezes totalmente controversa.
No meu post
Bluetooth no Slackware eu mostrei como configurar o Bluetooth para ficar funcional. Agora eu consegui acessar a internet pelo Palm usando o Bluetooth. Eu uso um Tungsten E2 (que vem com Bluetooth embutido).
Faça seu Bluetooth funcionar tanto no Palm quanto no teu PC (dê uma olhada no meu post
Bluetooth no Slackware, se não souber como).
O BlueZ traz um daemon chamado
dund, que implementa a capacidade do Palm "discar" para o PC via Bluetooth. Ele usa o PPP (que você deve configurar também) para levar teu Palm até a internet. Também é necessário o daemon sdpd que capacita o teu Linux a servir o protocolo SDP. Ative-o com o comando
sdpd.
Após ativar o
sdpd, você deve executar o comando
sdptool add SP. Isso faz teu Linux habilitar o serviço SP, que faz ele usar uma serial virtual para se conectar ao PC. Para a serial é necessário um arquivo em /dev chamado rfcommX, onde X é a variação. Verifique se esse(s) arquivo(s) existe(m). Caso não exista, crie com
mknod -m 666 /dev/rfcomm0 c 216 X. Eu nem preciso repetir que X é a variação, em geral execute este comando apenas uma vez , com o valor de X igual a 0 (zero).
Agora a configuração do rfcomm. Abra o arquivo /etc/bluetooth/rfcomm.conf e atente para duas seções da configuração do arquivo:
device, coloque aqui o endereço físico do teu Palm (execute
hcitool scan, para ver uma lista de todos os dispositivos nas proximidades - com seus endereços físicos). Veja também a seção
comment, nela você coloca algum nome qualquer, eu coloquei o nome do meu Palm. Note que o nome da configuração é
rfcomm0, o mesmo nome do arquivo que representa a linha serial virtual entre teu Palm e teu PC, caso consiga conectar mais de um dispositivo à internet usando este tutorial, este poderia ter sido o seu ponto de partida: incluir mais configurações.
Você quase pode acessar a internet agora... Só não pode acessar por que não iniciou o dund, que vamos fazer após configurá-lo. Procure o diretório
/etc/ppp/peers, se não existir o diretório
peers, não tenha medo de criá-lo... Dentro dele, tu vai definir um arquivo com as opções para usar no pppd, o daemon que serve o PPP no teu Linux.
O meu está configurado assim:
115200
AAA.AAA.AAA.AAA:BBB.BBB.BBB.BBB
local
ms-dns XXX.XXX.XXX.XXX
noauth
debug
Observe que o A e o B são dois endereços de IP, o primeiro é o endereço do teu Linux, o segundo será o endereço atribuido ao Palm. O X é endereço de algum servidor DNS, use o do teu ISP...
Salve esse arquivo em
/etc/ppp/peers/dun. Quase lá... Agora vamos ligar o dund. Rode o daemon dund desta forma:
dund --listen --persist --msdun call dun. Ela irá executar e se soltar do terminal, indo para o plano de fundo.
Vamos ao Palm... Detecte e faça
pairing entre teu Palm e o Linux. Agora configure o Palm para se concetar ao PC para uso da internet, da forma mais convenitente... No meu Palm existe um assistente, nas opções de Bluetooth tem uma opção chamada "Configurar dispositivos" ou alguma coisa assim, meu Palm tá em inglês. Esse assistente deixa teu Palm pronto para se conectar. Então faça isso logo! Se conecte.
Quando conectar verá um diálogo de progresso, alguns ícones bonitinhos e então...
Established. Agora tu está conectado ao PC, mas só isso, nem tente dar
Ping ou abrir o Blazer para ver e-mails, não funciona ainda...
O Linux não ia deixar qualquer coisa que chegue à ele usar a conexão de rede, sabe lá o que pode ser, então o iptables bloqueia. Alén disso tem a opção ip_forward, que aqui estava desativada...
Ative o ip_forward:
echo '1' > /proc/sys/net/ipv4/ip_forward
Converse com o iptables:
iptables -t nat -A POSTROUTING -o eth0 -j MASQUERADEiptables -A FORWARD -i ppp0 -j ACCEPTiptables -A FORWARD -m state --state ESTABLISHED,RELATED -j ACCEPTOlha que tem uma referência a tua placa de rede (eth0), mude caso seja diferente disto. Também observe uma referência à ppp0, não sei não, mas acho que pode ser diferente em cada configuração, aqui é apenas um velho Celeron me servindo por meio de SSH, então só existe ppp0 mesmo. Existindo ADLS ou Dial-up podem exister mais... Lembre-se disso.
Agora a coisa ta feita, se eu não esqueci de nada, acho que é tudo. Tenta
ping, tenta ler e-mail, tenta MSN etc. Acho que você deve ter ficado feliz da vida... Eu fiquei... Em meus defecos não levo mais revistas INFO Exame (eu sei, mas ganhei de presente), levo meu Palm e fico secando o W3Schools, Google e outras ricas fontes do saber.
Nem preciso dizer, mas vou: Coloque tudo que for comando repetitivo (Acho que tudo exceto o mknod que cria o rfcommX) em teu rc.local (
/etc/rc.d/rc.local). Assim num vai ficar escrevendo isso a cada vez que reiniciar o PC...
Seguem toneladas de links:
(Palm)
http://www.harbaum.org/till/palm/bluetooth/index.html(Syncing the Treo 650 with Bluetooth)
http://www.linuxjournal.com/article/8185(Configuração)
http://www.linuxquestions.org/.../Bluetooth_in_Slackware_HOWTO(Bluetooth HOWTO's)
http://www.holtmann.org/linux/bluetooth/(Bluetooth Adapter)
http://www.nslu2-linux.org/wiki/Peripherals/BluetoothAdapter(Internet Access via Bluetooth on Linux)
http://www.metacon.ca/bcs/view.php?page=bluetooth(Surf the Web with Bluetooth)
http://howto.pilot-link.org/bluesync/ga.html(Connecting your PalmOS® handheld device to the Internet via PPP)
http://howto.pilot-link.org/ppp/