Random header image at homo cybersapiens

Aumentando la movilidad

26 Diciembre, 2007 | rafacas |  Publicado en internet, linux  |  2 Comentarios

Aumentando la movilidad

Como he comentado en una entrada anterior, uso Yoigo para acceder a Internet cuando viajo, y después de las nuevas tarifas también lo estoy usando para realizar llamadas. Me parece muy interesante aumentar la movilidad de una persona, en lo que a conexión de Internet se refiere. No estar preocupados de si vamos a poder conectarnos o no al sitio al que vayamos, el siempre conectados que comenta Error500.

Por eso, detallo a continuación la forma de usar un móvil como módem desde un portátil. Lo que he usado como ejemplo son un portátil con GNU/Linux como sistema operativo, concretamente Archlinux, un móvil Nokia N70 con una tarjeta de Yoigo. Explicaré cómo conectarlos mediante bluetooth.

Lo primero que tenemos que hacer es instalar los paquetes necesarios: bluez-utils, bluez-libs y dbus (ppp también es necesario, pero suele venir instalado por defecto).

pacman -S bluez-utils bluez-libs dbus

Arrancamos los demonios dbus y bluetooth:

/etc/rc.d/dbus start
/etc/rc.d/bluetooth start

Escaneamos en busca de dispositivos bluetooth:

hcitool scan
Scanning ...
      00:19:2D:14:55:5D       N70

Ahora tenemos la dirección MAC del bluetooth del móvil. Volvemos a hacer un escaneo, esta vez para comprobar qué canal hay que usar para usar el móvil como módem (Dial-Up Networking).

Inquiring ...
Searching for DUN on 00:19:2D:14:55:5D ...
Service Name: Dial-Up Networking
Service RecHandle: 0x10007
Service Class ID List:
 "Dialup Networking" (0x1103)
Protocol Descriptor List:
 "L2CAP" (0x0100)
 "RFCOMM" (0x0003)
   Channel: 3
Language Base Attr List:
 code_ISO639: 0x454e
 encoding:    0x6a
 base_offset: 0x100
Profile Descriptor List:
 "Dialup Networking" (0x1103)
   Version: 0x0100

La línea que nos interesa es la que contiene Channel, y en ella obtendremos el canal que usa como módem. En el caso del N70 es el canal 3.

Editamos el fichero del demonio HCI (/etc/bluetooth/hcid.conf) y establecemos las siguientes opciones:

autoinit yes;
security auto;

Mi fichero de configuración queda como sigue:

# HCId options
options {
   # Automatically initialize new devices
   autoinit yes;

   # Security Manager mode
   #   none - Security manager disabled
   #   auto - Use local PIN for incoming connections
   #   user - Always ask user for a PIN
   #
   security auto;

   # Pairing mode
   #   none  - Pairing disabled
   #   multi - Allow pairing with already paired devices
   #   once  - Pair once and deny successive attempts
   pairing multi;

   # Default PIN code for incoming connections
   #passkey "BlueZ";
   passkey "1234";
}

# Default settings for HCI devices
device {
   # Local device name
   #   %d - device id
   #   %h - host name
   name "BlueZ (%h)";

   # Local device class
   class 0x3e0100;

   # Default packet type
   #pkt_type DH1,DM1,HV1;

   # Inquiry and Page scan
   iscan enable; pscan enable;

   # Default link mode
   #   none   - no specific policy
   #   accept - always accept incoming connections
   #   master - become master on incoming connections,
   #            deny role switch on outgoing connections
   lm accept;

   # Default link policy
   #   none    - no specific policy
   #   rswitch - allow role switch
   #   hold    - allow hold mode
   #   sniff   - allow sniff mode
   #   park    - allow park mode
   lp rswitch,hold,sniff,park;
}

Después de terminar con la configuración de HCI, tenemos que editar el fichero de RFCOMM, añadiendo una sección para el dispositivo rfcomm0. El fichero quedaría como sigue:

rfcomm0 {
       # Automatically bind the device at startup
       bind yes;

       # Bluetooth address of the device
       device 00:19:2D:14:55:5D;

       # RFCOMM channel for the connection
       channel 3;

       # Description of the connection
       comment "GPRS dialup N70";
}

Evidentemente, habrá que cambiar las opciones device y channel dependiendo del móvil.

Ahora, editamos el fichero /etc/rc.d/bluetooth y hacemos que rfcomm se inicie cuando arranque el bluetooth:

RFCOMM_ENABLE="true"

Reiniciamos el servicio bluetooth:

/etc/rc.d/bluetooth restart

Lo último que tenemos que hacer es configurar wvdial (/etc/wvdial.conf, o si queremos que sea accesible únicamente por nuestro usuario $HOME/.wvdialrc)

[Dialer YoigoBT]
Init1 = ATZ
Init2 = ATQ0 V1 E1 S0=0 &C1 &D2 +FCLASS=0
Init3 = AT+CGDCONT=1,"IP","internet"
Modem Type = USB Modem
Baud = 460800
New PPPD = yes
Modem = /dev/rfcomm0
ISDN = 0
Phone = *99***1#
Username = "internet"
Password = "internet"
Stupid Mode = 1
Ask Password = 0
Dial Command = ATDT
Compuserve = 0
Force Address =
Idle Seconds = 3000
DialMessage1 =
DialMessage2 =
Auto DNS = 1

A partir de este momento, lo único que tendríamos que ejecutar cada vez que quisiésemos acceder a internet usando como módem un móvil Yoigo es:

wvdial YoigoBT

En caso de que estemos con un portátil y queramos ahorrar algo de batería, es recomendable hacerlo con el cable USB del móvil conectado al portátil, así que deberíamos añadir lo siguiente a wvdialrc:

[Dialer YoigoUSB]
Init1 = ATZ
Init2 = ATQ0 V1 E1 S0=0 &C1 &D2 +FCLASS=0
Init3 = AT+CGDCONT=1,"IP","internet"
Modem Type = USB Modem
Baud = 460800
New PPPD = yes
Modem = /dev/ttyACM0
ISDN = 0
Phone = *99***1#
Username = "internet"
Password = "internet"
Stupid Mode = 1
Ask Password = 0
Dial Command = ATDT
Compuserve = 0
Force Address =
Idle Seconds = 3000
DialMessage1 =
DialMessage2 =
Auto DNS = 1

Y ejecutar

wvdial YoigoUSB

Para el intercambio de ficheros entre el móvil y el portátil mediante bluetooth yo uso Kbluetooth (para KDE).

Comentarios

  1. Fernando Nájera says:

    Diciembre 31st, 2007at 12:36(#)

    En Windows es bastante más fácil :-P

    (Lo siento, tenía que decirlo jajajaja)

    ¡Y Feliz Año 2008!

  2. rafacas says:

    Diciembre 31st, 2007at 19:25(#)

    Esta vez no te voy a llevar la contraria :D

    ¡Feliz año!

Deja tu comentario

El autor

Homo cybersapiens es el blog personal de Rafa Casado (rafacas AT homocybersapiens.com)

Últimos comentarios

  • Nypher: El engaño del 3G en España
  • rafacas: Medida de calidad del software: WTFs/m
  • Alfonso Muñoz: Medida de calidad del software: WTFs/m
  • rafacas: BrowserShots: Probar el diseño web en varios navegadores
  • bydiox: BrowserShots: Probar el diseño web en varios navegadores
  • rafacas: Pandora

Archivo