miércoles, 24 de junio de 2009

Modem USB o tarjeta 3G en Ubuntu Linux

Explicaremos una configuración de la conexión a internet ( GPRS / 3G / UMTS/WCDMA ) a través de dispositivos móviles bien tarjeta tipo PCMCIA o Módem USB, usamos en éste ejemplo la conexión de Vodafone. No obstante, en lo único que tendría que cambiar sería el número de teléfono, por lo cual también sería válida para Telefónica, Orange, Claro o cualquier otro operador.
En este primer artículo, omitiremos la parte más compleja como la selección del tipo de conexión (explicada en posteriores capítulos), si queremos usar 3G o GPRS, y la activación o desactivación del PIN de acceso, lo dejaremos para un artículo posterior. Habremos elegido una conexión GPRS y el PIN está desactivado, al introducir la tarjeta en el portatil (o modem USB) tecleamos desde consola el comando:dmesg

Si todo ha ido bien, Linux detectara nuestra tarjeta, indicándonos que dispositvos deberemos de utilizar para poder acceder a la configuración.
En principio lo único que tendrá que tener instalado son los paquetes kppp y el pppd. Si no los tenemos, podemos buscarlos en el CD del distro o instalarlo desde consola, también se podrá hacerlo para Debian/Ubuntu, etc:

apt-get install pppd
apt-get install kpppPara Red Hat / Fedora, etc
yum install pppd
yum install kppp

EL PIN
Una de las primeras cosas que haremos, será un script (especialmente para el caso del módem) que sirva para introducir la contraseña PIN desde Linux, y así poder navegar, se deberá ejecutar el script, siempre antes de ejecutar kppp
Este sería el código:


Una vez que hayamos terminado de introducir el script (aquí lo ponemos para que se haga un copiar y pegar:)
[código]

#!/usr/bin/env perl
use strict;
use warnings;
my $modem = "/dev/ttyUSB0";
# my $modem = "/dev/usb/tts/0";
# Substitute xxxx with your PIN.
# You should probably put your pin somewhere else, e.g. on an USB stick,
# an encrypted file system or something else, and read it from there...
# You have been warned!
my $pin = "1234";
$SIG{ALRM} = sub {
die("timeout: no response from modem $modem\n");
};
open(MODEM, "+<", $modem) or die("can't open modem $modem");
alarm(10);
print(MODEM "AT+CPIN=\"$pin\"\n\r");
while () {
if (m/OK/) {
close(MODEM);
print("PIN accepted\n");
exit(0);
}
if (m/ERROR/) {
close(MODEM);
print("PIN rejected\n");
exit(1);
}
}
[/código]
Le pones los atributos de ejecución: chmod a+x setpin.pl



Una vez que se comprueba que el script funciona, y que el módem acepta el PIN, se puede copiar el fichero "setpin.pl", que es como nosotros lo hemos llamado a /usr/local/bin
Ahora, hacemos un enlace de escritorio, en vez un un enlace simbólico, desde el Escritorio de Linux, con el botón derecho de ratón, introduciendo la ruta donde está el script, e indicando que éste se ejecute en terminal, que ejecute sleep durante unos segundos, y que al terminar, el terminal quede abierto, por si quisiéramos ver que errores se pudieran ocurrir, mostramos una imagen de uno posible:



Se pone a continuación un script para que se haga un copiar y pegar:
[código]

[Desktop Entry]
Comment=
Comment[es]=
Encoding=UTF-8
Exec='/usr/local/bin/setpin.pl';sleep 2
GenericName=
GenericName[es]=
Icon=exec
MimeType=
Name=Quitar el Pin
Name[es]=Quitar el Pin
Path=
StartupNotify=true
Terminal=true
TerminalOptions=s--noclose
Type=Application
X-DCOP-ServiceType=none
X-KDE-SubstituteUID=false
X-KDE-Username=

[/código]

Ahora, cuando tengas terminado la configuración, recuerda lanzar antes "Quitar el pin.desktop", antes que kppp.

CONFIGURACIÓN:

Para hacer una configuración válida para cualquier distribución, haremos una configuración gráfica desde "kppp", para que utilice "pppd", abierto kppp, le damos el al botón "Configurar", y estando en la pestaña "Cuentas" pulsamos sobre el botón "Nueva", sobre la nueva ventana pulsamos "Añadir" y escribimos el nº de teléfono: *99***1#

Tendremos elegido la Autenticación: Basada en Terminal, y el Tipo de llamada: Ninguno


Introducido el número de teléfono, y con la ventana "Nueva Conexión" abierta, nos vamos a la pestaña IP, y dejamos que la IP sea dinámica


Cambiamos a la pestaña "Puerta de enlace" y dejamos la opción "Puerta de enlace predeterminada"

En la pestaña "DNS" introducimos nuestros números de los DNS favoritos.


Ya estamos próximos a la finalización, como todavía tendremos abierta una terminal con nuestro mensaje del "dmesg", comprobaremos el dispositivo a utilizar, en este caso será /dev/ttyUSB0, pero en otras ocasiones puede estar en una ubicación distinta, por ejemplo "/dev/usb/ttyUSB0"
En nuestro caso, omitiremos hacer un enlace del tipo ln -sf /dev/ttyUSB0 /dev/modem, pues puede que al introducir otro dispositivo cambie el enlace y nos preguntemos, porque no podemos conectarnos, sin darte cuenta de que el enlace ya ha cambiado.



Desde la ventana de "Configuración del KPPP", nos vamos a la pestaña "Módems", damos click sobre "Nueva", tras ponerle un nombre al módem, elegimos el dispositivo que tenemos que utilizar que debe salir en la lista despegable, el tipo de flujo debe ser "Hardware CRTSCTS", y la terminación de línea para Linux, será CR, elegimos la velocidad, generalmente la máxima.



Para comprobar que todo ha ido bien, y tras pulsar aceptar, click sobre la pestaña "Módem", click sobre el botón "Consultar Módem", y si el módem le devuelve una resultados como los que aparecen en la imagen, es que el módem está preparado para funcionar, debe pulsar "Aceptar", hasta cerrar todas las ventanas y regresar a la ventana principal del kppp



Ahora pulse el botón "Conectar", "Aceptar", y ya está conectado, se puede abrir el navegador y nos podemos conectar.

0 comentarios:

Publicar un comentario

adsense

 

My Blog List

OPTIMIZA TU INTERNET Copyright © 2009 Gadget Blog is Designed by Ipietoon Sponsored by Online Business Journal