Journal GNUbox et votre mobile surf sur la vague !

Posté par  .
Étiquettes :
0
15
avr.
2006
Attention ce journal est très long !


Salut, ce journal à pour but de vous présenter un logiciel libre (sûrement) pour votre mobile qui vous permettra d'aller sur le web depuis votre mobile et ceci grâce à la connexion Internet de votre PC...
Il s'agit de GNUbox [1] principalement développé pour les SonyEricsson P80x/P90x/P910 et les Nokia S60 [2] mais on trouve aussi des versions pour les Motorola A990, A925, A1000...

Pour plus de détails, vous pouvez vous rendre sur mon blog...

Je vais donc vous faire (retranscrire) un tuto afin de vous connecter sur votre PC depuis votre mobile...

PS: je vais vous faire la description pour un Nokia 6600 avec une connexion Internet par l'interface ppp0 sous Ubuntu Dapper...


Configuration du Bluetooth :
Tout d'abord, il faut s'assurer que le noyau est compilé avec le support ppp et bluez...
[M] PPP (point-to-point protocol) support
[ ] PPP multilink support (EXPERIMENTAL)
[*] PPP filtering
[M] PPP support for async serial ports
[M] PPP support for sync tty ports
[M] PPP Deflate compression
[M] PPP BSD-Compress compression
[M] PPP over Ethernet (EXPERIMENTAL)

[M]  L2CAP protocol support
[M] SCO links support
[M] RFCOMM protocol support
[*] RFCOMM TTY support
[M] BNEP protocol support
[*] Multicast filter support
[*] Protocol filter support

Assurez vous aussi que les modules ppp sont chargés...

Dans le fichier /etc/bluetooth/hcid.conf, repérez les lignes suivantes et modifiez les en conséquence...

autoinit yes;
security user;
pairing multi;
pin_helper /etc/bluetooth/pin;

iscan enable; pscan enable;
lm accept;
lp rswitch,hold,sniff,park;

Editez ensuite ou créez le fichier /etc/bluetooth/pin et modifier le ainsi:
#!/bin/sh
echo "PIN:1234"

1234 est le code que vous devrez entrer lors du couplage avec votre téléphone... Vous pouvez donc mettre le code que vous voulez...

Maintenant, vérifiez que votre borne bluetooth est branché...
La commande hciconfig doit sortir quelque chose qui ressemble à ça:

hci0: Type: USB
BD Address: 00:0A:9A:00:DB:6F ACL MTU: 339:4 SCO MTU: 64:0
UP RUNNING PSCAN ISCAN
RX bytes:30386 acl:367 sco:0 events:445 errors:0
TX bytes:31351 acl:343 sco:0 commands:35 errors:0



Configuration du Téléphone :
Il est temps de mettre en place la connexion sur le téléphone... Pour cela, téléchargez la version de GNUbox faite pour votre téléphone [2] puis installez le...
Allez ensuite dans Outils - Paramètres - Connexion - Points d'accès
Puis Option - Nouveau point d'accès - Utiliser paramètres par défaut
Entrez les paramètres suivants :

Nom de connexion: Bt (très important)
Porteuse de données: Haut débit (GSM)
N° d'appel serveur: Ce que vous voulez 2222 par exemple
Nom d'utilisateur: Aucun
Mot de passe: Ne pas demander
Mot de passe: Laissez vide
Authentification: Normale
Page de démarrage: Ce que vous voulez http://www.google.com/wml
Type appel données: Analogique
Débit données max.: Automatique


Puis allez dans Options - Paramètres avancés et entrez ces paramètres :
Adresse IP téléphone: Automatique
Serveur nom primaire et secondaire: Vous entrez les addresses IP contenues dans le fichier /etc/resolv.conf
Adresse proxy: Aucun
N° de port proxy: 0
Utiliser rappel: Non
Type de rappel: Utiliser N° serveur
Numéro de rapel: Aucun
Utiliser compression PPP: Non (avec Oui ça ne semble pas marcher pour moi)
Utiliser script de connexion: Non
Script de connexion: Aucun
Initialisation modem: Aucun


Retour - Retour

Lancer GNUbox :
Rendez vous maintenant dans GNUBox et faites Options - 2box Direct - Bluetooth et choisissez votre PC...
Sur un fond bleu doit apparaître un truc du genre :
Bluetooth settings...
DialOutISP
Description: Direct 2box
DefaultTelNum:
ModemBearer
PortName: BTCOMM::0
CSVName: BTCOMM
TSVName: PHONETSY


Sortez, voilà la configuration du téléphone est terminée...


Connexion :
Il est temps de connecter le téléphone et le PC...
Assurez vous tout d'abord que votre connexion internet est établie puis dans un shell tappez:
# sdptool add --channel=3 SP
# dund --listen --channel 3 --msdun noauth IP_DE_VOTRE_PC:IP_DU_TELEPHONE 115200 ms-dns SERVEUR_DNS
lock --nodetach --persist

Remplacez IP_DE_VOTRE_PC, IP_DU_TELEPHONE et SERVEUR_DNS par ce qui convient cependant, n'importe quoi peut servir d'IP au téléphone par exemple, chez moi j'ai mis:
IP_DE_VOTRE_PC = 10.0.0.1
IP_DU_TELEPHONE = 10.0.0.2
SERVEUR_DNS = première IP trouvé dans /etc/resolv.conf.

Dans un autre shell, entrez:
$ hcitool scan
# rfcomm bind 3 ID_BLUETOOTH_DE_VOTRE_TELEPHONE 2
# echo x > /dev/rfcomm3

ID_BLUETOOTH_DE_VOTRE_TELEPHONE correspond aux code bizarre renvoyé par la commande hcitool scan du type 00:60:57:A7:51:9D...
Après la commande echo x > /dev/rfcomm3 votre téléphone vous demandera d'entrer le code pour effectuer la liaison entrez celui qui est dans le fichier /etc/bluetooth/pin...
Le premier shell doit maintenant avoir un message de ce type:
dund[5885]: New connection from 00:60:57:A7:51:9D
Using interface ppp1
Connect: ppp1 <--> /dev/rfcomm0
Cannot determine ethernet address for proxy ARP
local IP address 10.0.0.1
remote IP address 10.0.0.2


Voilà la connexion est établie mais on ne peut toujours pas aller sur le web à partir du téléphone... Il faut pour cela partager la connexion Internet avec le téléphone...
J'ai trouvé ce script dans un tuto qui à l'air de fonctionner...

#!/bin/sh
IPTABLES=/sbin/iptables
DEPMOD=/sbin/depmod
MODPROBE=/sbin/modprobe

# my pppoe ppp device
EXTIF="ppp0"
# my BT ppp device
INTIF="ppp1"
$DEPMOD -a
$MODPROBE ip_tables
$MODPROBE ip_conntrack
$MODPROBE ip_conntrack_ftp
$MODPROBE ip_conntrack_irc
$MODPROBE iptable_nat
$MODPROBE ip_nat_ftp
echo "1" > /proc/sys/net/ipv4/ip_forward
echo "1" > /proc/sys/net/ipv4/ip_dynaddr
$IPTABLES -P INPUT ACCEPT
$IPTABLES -F INPUT
$IPTABLES -P OUTPUT ACCEPT
$IPTABLES -F OUTPUT
$IPTABLES -P FORWARD DROP
$IPTABLES -F FORWARD
$IPTABLES -t nat -F
$IPTABLES -A FORWARD -i $EXTIF -o $INTIF -m state --state ESTABLISHED,RELATED -j ACCEPT
$IPTABLES -A FORWARD -i $INTIF -o $EXTIF -j ACCEPT
$IPTABLES -A FORWARD -j LOG
$IPTABLES -t nat -A POSTROUTING -o $EXTIF -j MASQUERADE

Mettez tout ça dans du fichier, rendez le exécutable et exécutez le...

avec:
ppp1 = connexion avec le mobile
ppp0 = connexion internet
eth0 = votre résaux

Normalement ça devrait marcher, il suffit d'aller dans le navigateur WML de votre mobile et d'établir la connexion Bt... Ca n'a pas l'air de passer avec Opera mini car il passe par un transcodeur afin d'adapter les pages au mobile et ça cause problème...

Une commande qui peut-être utile:
# tcpdump -i ppp0

afin d'afficher le trafic quand vous pouvez vous connecter mais que rien ne s'affiche (c'est grâce à elle que j'ai vu le problème avec Opera mini)...


Liens utiles :
http://www.javier-gonzalez.com/articulos/nokia6600-bluetooth(...)
http://www.rlachenal.com/bluetooth-6600-linux/
http://www.cs.helsinki.fi/u/mraento/symbian/bt-ap.html

[1] http://gnubox.dnsalias.org/gnubox/
[2] http://gnubox.dnsalias.org/gnubox/#download

PS2: Il y a un bug avec les < et > donc il faut le remplacer par ce qu'il faut lorsque vous copier...
  • # Le bug

    Posté par  . Évalué à 3.

    Tien le bug il est à l'édition mais après avoir posté tout est arrangé :( ça induit en erreur ça...
  • # Une version J2ME ?

    Posté par  . Évalué à 2.

    Salut, tout d'abord merci pour ce tuto très intéressant.
    Sais tu si il existe une version "java" de GNUBox ? Parce que j'ai un mobile Sagem MyX6-2 qui ne tourne pas sous Symbian, cependant je serais intéressé par ta bidouille.
    J'ai cherché sur le site de GNUbox mais je n'ai rien vu a ce sujet.
  • # Attention, ce commentaire est très court

    Posté par  (site web personnel) . Évalué à 0.

    \_o<
  • # Ha bin tiens

    Posté par  . Évalué à 3.

    J'ai essayé cela cette semaine sur un nokia 6680.

    Tout d'abord, le masquarade n'est pas nécessaire si vous être dans un réseau dont vous maitrissez les routes même si elle permet d'être utilisable dans toutes les configurations. Changez simplement vos pc en routeur (echo 1> /proc/sys/net/ipv4/ip_forward) et ajoutez les routes à vos autres routeurs.

    Ensuite, j'ai réussi à avoir la connection ppp entre mon portable et mon PC. Le PC arrivait à pinger le portable mais l'inverse était impossible (Utilitaire utiliser pour pinger depuis le portable IpView20.sis: http://gnubox.dnsalias.org/gnubox/testing/ ). De même, aucune connection depuis le portable ne fût possible (putty, opera mini ou un client irc). J'essayerai la prochaine fois p3nfs ( http://www.koeniglich.de/p3nfs.html ) qui est un serveur nfs pour portable symbian pour voir si je réussi à me connecter depuis un PC à un serveur sur le portable.

    En attendant, si vous avez des solutions ou idées pour régler mon problème, je suis preneur.

    Enfin, une bonne page avec d'autre liens pour utiliser votre connection: http://gagravarr.org/series-60/ et http://www.holtmann.org/linux/bluetooth/, une autre page bookmarks.
    • [^] # Ha bin tiens II ou le retour la ptite infos en plus qui n'est pas un ...

      Posté par  . Évalué à 3.

      ...vrai retour puisque qu'elle n'était pas là avant (comme les moulins).

      Ha, j'oubliais. Une fois la connection ppp établie. Je vois bien un traffic se faire sur bluetooth avec hcidump (outils comparable a tcpdump pour bluetooth) lorsque que je ping le portable depuis le PC, mais aucun traffic lorsque que j'essaye d'établir une connection ou de pinger depuis le portable.

      Pour la peine, une page supplémentaire, si vous (mais pas moi) n'arrivez pas à établir la connection ppp http://gnubox.dnsalias.org/gnubox/trouble.html .
  • # Et ma boulangère ?

    Posté par  . Évalué à 2.

    La question c'est si ce n'est pas un peu compliqué pour que ma boulangère installe ça dans sa boutique...

Suivre le flux des commentaires

Note : les commentaires appartiennent à celles et ceux qui les ont postés. Nous n’en sommes pas responsables.