Si toi aussi, tu es oblige de passer ton week end chez ta belle mere qui ne possede meme pas l'internet convivial, voici une solution qui pourra *peut etre* t'epargner des pulsions suicidaires… (enfin moi ca marche) : La connection au net via un GSM.

Materiel utilise :

Etape Numero 1 :

section IRDA (INFRARED) SUPPORT:

*IrDA subsystem support*
 Dites <M> pour activer le support de l'irda par votre kernel

*IrLAN protocol*
 Dites <M> pour pouvoir vous connecter a d'autres peripheriques infrarouges. IrLAN emule une connection ethernet.

*IrNET protocol*
 Dites <M> pour pouvoir transferer des paquets TCP/IP via irda. Cela necessite une installation correcte de PPP.

*IrCOMM protocol*
 Dites <M> pour emuler un port serie. Cela permet ensuite de pouvoir utiliser des outils comme PPP.

*Cache last LSAP*
 Dites <Y> pour pouvoir envoyer et recevoir les trames via la meme connection.

*Debug information*
 Dites <Y> pour l'etat de votre port infrarouge dans votre syslog.

sous section INFRARED-PORT DEVICE DRIVERS:

*IrTTY (uses Linux serial driver)*
 Dites <M> pour utiliser le pilote serie pour votre port IRDA.

Recompilation du noyau et reboot.

Etape Numero 2 :

marine:~# lsmod 
Module                  Size  Used by    Tainted: P  
irtty                   7424   2 
irda                  138448   0  [irtty]
maestro3               24624   1 
ac97_codec              9800   0  [maestro3]
i810                   68064   0  (unused)
agpgart                15744   1 
e100                   59988   1 
bsd_comp                3928   0  (unused)
ppp_generic            18688   0  [bsd_comp]
slhc                    4320   0  [ppp_generic]

Etape Numero 3 :

mknod /dev/ircomm0 c 161 0
mknod /dev/ircomm1 c 161 1
mknod /dev/irlpt0 c 161 16
mknod /dev/irlpt1 c 161 17
mknod /dev/irnet c 10 187

Attribuer ensuite les bons droits.

Autres methode de creation:

/dev/MAKEDEV irda
mknod /dev/irnet c 10 187

- Liste des devices :

marine:/dev# ls -l ir*
crw-rw----    1 root     dialout  161,   0 Nov  2 01:22 ircomm0
crw-rw----    1 root     dialout  161,   1 Nov  2 01:22 ircomm1
crw-rw----    1 root     lp       161,  16 Nov  2 01:22 irlpt0
crw-rw----    1 root     lp       161,  17 Nov  2 01:22 irlpt1
crw-rw----    1 root     root      10, 187 Oct 24 23:19 irnet

Etape Numero 4 :

Sous Debian, cela s'effectuera de maniere aisee :-)

apt-get install irda-common
apt-get install irda-tools

irda-common installera les utilitaires comme irattach, dongle_attach et findchip. irda-tools installera irdadump, irdaping, irpsion5.

Pour les autres Linuxiens, les liens vers les outils pourront etre trouves ici : http://irda.sourceforge.net/download.html

Etape Numero 5 :

Pour ma part, je dispose d'un abonnement telephonique chez Bouygues. Il m'a ete necessaire d'appeler le service clientele pour activer un service (gratuit) me permettant de faire transiter des donnees via mon telephone portable.

J'ai ensuite ouvert un acces gratuit internet chez free.fr Login : remy Password : HAHAHA DNS primaire : 212.27.32.5 DNS secondaire : 213.228.0.168 Numero de telephone du serveur : 0860922000

Modification du /etc/resolv.conf :

search free.fr
nameserver 212.27.32.5
nameserver 213.228.0.168

Creation des scripts de connexion :

#################################################################
#/etc/chap-secrets
remy        proxad  HAHAHA
#################################################################

ou

#################################################################
#/etc/pap-secrets
remy proxad HAHAHA
#################################################################

#################################################################
# /etc/ppp/options
receive-all
nopcomp
noaccomp
nomagic
debug
57600
/dev/ircomm0
connect '/usr/sbin/chat -e -f /etc/ppp/chat -v'
disconnect '/usr/sbin/chat -e -f /etc/ppp/chat-disconnect -v'
modem
noauth
noccp
novj
novjccomp
defaultroute
noipdefault
user remy
lock
#################################################################

#################################################################
#/etc/ppp/chat
ABORT "BUSY"
ABORT "ERROR"
ABORT "NO CARRIER"
ABORT "NO DIALTONE"
ABORT "NO ANSWER"
SAY "initializing modem..."
"" "AT"
"OK" "ATZ"
SAY "dialing..."
"OK" "ATDT0860922000"
SAY "waiting for CONNECT..."
"CONNECT" ""
SAY "connected!"
SAY ""
#################################################################

#################################################################
#/etc/ppp/chat-disconnect
""      "\K"
""      "+++ATH"
#################################################################

Etape Numero 6 :

Active le port infrarouge de votre telephone.

Ensuite, sous debian, vous pouvez modifier le fichier /etc/irda.conf de la maniere suivante :

marine:/etc# cat irda.conf 
#irda.conf Version: 1.0
IRDADEV=/dev/ttyS1
#DONGLE= # specify dongle type
DISCOVERY=-s
ENABLE=yes # if you do not need to start irattach, set "no"

et activer l'irda en lancant la commande suivante :

/etc/init.d/irda start

Ou alors, il vous suffit de taper :

/usr/sbin/irattach /dev/ttyS1 -s

L'utilitaire irattach permet d'activer le driver irda de votre machine et de configurer votre materiel.

pppd

Et voila vous etes connecte…

Etape Numero 7 :

marine:~# lsmod 
Module                  Size  Used by    Tainted: P  
ppp_async               6368   1  (autoclean)
ircomm-tty             30240   1  (autoclean)
ircomm                 13164   0  (autoclean) [ircomm-tty]
irtty                   7424   2 
irda                  138448   0  [ircomm-tty ircomm irtty]
maestro3               24624   1 
ac97_codec              9800   0  [maestro3]
i810                   68064   0  (unused)
agpgart                15744   1 
e100                   59988   0 
bsd_comp                3928   0  (unused)
ppp_generic            18688   3  [ppp_async bsd_comp]
slhc                    4320   0  [ppp_generic]

Voici ce que vous devez obtenir en faisant un ifconfig :

marine:~# ifconfig 
irda0     Link encap:IrLAP  HWaddr ca:65:fc:35  
          UP RUNNING NOARP  MTU:2048  Metric:1
          RX packets:282 errors:0 dropped:0 overruns:0 frame:0
          TX packets:0 errors:0 dropped:0 overruns:0 carrier:0
          collisions:0 txqueuelen:8 
          RX bytes:1720 (1.6 KiB)  TX bytes:3295 (3.2 KiB)

ppp0      Link encap:Point-to-Point Protocol  
          inet addr:62.147.155.218  P-t-P:192.168.254.254  Mask:255.255.255.255
          UP POINTOPOINT RUNNING NOARP MULTICAST  MTU:1500  Metric:1
          RX packets:3 errors:0 dropped:0 overruns:0 frame:0
          TX packets:3 errors:0 dropped:0 overruns:0 carrier:0
          collisions:0 txqueuelen:3 
          RX bytes:30 (30.0 b)  TX bytes:30 (30.0 b)

Et en regardant vos routes :

marine:~# netstat -nr
Kernel IP routing table
Destination     Gateway         Genmask         Flags   MSS Window  irtt Iface
192.168.254.254 0.0.0.0         255.255.255.255 UH       40 0          0 ppp0
0.0.0.0         192.168.254.254 0.0.0.0         UG       40 0          0 ppp0

Vous devez egalement voir votre telephone grace au fichier /proc/net/irda/discovery.

marine:~# cat /proc/net/irda/discovery 
IrLMP: Discovery log:

nickname: SAMSUNG SGH-A300, hint: 0x9004, saddr: 0xca65fc35, daddr: 0x112c4371

De plus, l'utilitaire irdadump vous permet de visualiser l'etat de votre connection en temps reel a la maniere de tcpdump.

Voici un exemple de log genere par irdadump :

00:52:37.613277 xid:rsp ca65fc35 < 5d5909b4 S=6 s=0 SAMSUNG SGH-A300 hint=9004 [ Modem IrCOMM ] (33)
00:52:37.703279 xid:cmd ca65fc35 > ffffffff S=6 s=2 (14)  
00:52:37.793282 xid:cmd ca65fc35 > ffffffff S=6 s=3 (14)  
00:52:37.883276 xid:cmd ca65fc35 > ffffffff S=6 s=4 (14)  
00:52:37.973281 xid:cmd ca65fc35 > ffffffff S=6 s=5 (14)
00:52:38.063285 xid:cmd ca65fc35 > ffffffff S=6 s=* marine hint=0400 [ Computer ] (22) 
00:52:38.063416 snrm:cmd ca=fe pf=1 ca65fc35 > 5d5909b4 new-ca=58  
        LAP QoS: Baud Rate=115200bps Max Turn Time=500ms Data Size=2048B Window Size=7 Add BOFS=0 Min Turn Time=5000us Link Disc=12s (32)
00:52:38.213276 ua:rsp ca=58 pf=1 ca65fc35 < 5d5909b4 
        LAP QoS: Baud Rate=115200bps Max Turn Time=100ms Data Size=128B Window Size=1 Add BOFS=0 Min Turn Time=0us Link Disc=40s (31)

Voili voilou :)

r0m0r

linux/connexion_infrarouge.txt · Last modified: 2010/01/12 13:29 (external edit)