Teotihuacán - Donde los hombres se convierten en dioses

Ubuntu y la Huawei 226 - Ubuntu 3G

03-08-2008

huawei-e2261.jpgContinuando con la historia de como trabajar con Ubuntu y olvidarse de Vista, ahora como configurar rápidamente el modem Huawei 3G Huawei para navegar.

Por trabajo necesito que mi notebook utilice el modem Huawei 3G, obviamente dentro de los drivers que trae el mismo dispositivo no viene nada para Linux. Nuevamente San Google, luego de unos minutos encontré información de que Vodaphone en Europa entrega el software para Linux, y luego encontre otro artículo que describía como conectar un Eeepc con la red 3G de Entel PCS. Lo mas entretenido (al menos para mí) era que la conexión se realiza desde una ventana de terminal y no mediante una aplicación.

El modem Huawei es eso, un modem, asi que responde a los comandos AT, y como la idea no es digitar cada comando a mano, para eso es el WvDial.

Para empezar, primero editar el archivo de configuración de WvDial, abrir una ventana de terminal y en ella digitar:

sudo gedit /etc/wvdial.conf

Con esto editamos el archivo de configuración como super usuario, el script que estoy utilizando para pruebas es el siguiente:

[Dialer Defaults]
Carrier Check = off
Init1 = ATZ
Init2 = ATQ V1 E1 S0=0 &C1 &D2 +FCLASS=0
Init5 = ATZ+cgdcont=1,”IP”,”imovil.entelpcs.cl”
Password = entelpcs
Ask Password = 0
Check Def Route = 1
Phone = *99#
Idle Seconds = 0
Modem Type = Analog Modem
Stupid Mode = 1
Compuserve = 0
Baud = 460800
Auto DNS = off
Dial Command = ATDT
Modem = /dev/ttyUSB0
ISDN = 0
Username = entelpcs

[Dialer entelpcs]
Stupid Mode = on
Password = entelpcs
Auto Reconnect = off
Username = entelpcs
Phone = *99#

Esta configuración esta pensada para que el modem Huawei este conectado al puerto USB0 del computador (/dev/ttyUSB0). Con este script el WvDial es capaz de activar el modem e iniciar el llamado (como los primeros tiempos cuando entrar a internet significaba escuchar el sonido del modem).El modem intentará “atacharse” a la red 3G de Entel PCS, especificamente a la APN (Access Point Network) imovil.entelpcs.cl de acuerdo a como esta configurado en el script. luego de conseguir “carrier” (onda portadora) hace el llamado, si pasa por todas las validaciones (que son varias) conseguirá que se le asigne un IP y los servidores DNS necesarios para navegar.

Se debe ejecutar el WvDial como super usuario, por eso primero hacer un sudo -i y luego ejecutarlo indicando como parámetro las connfiguraciones específicas, en este caso entelpcs:

joniux@portatil:~$ sudo -i
[sudo] password for joniux:
root@portatil:~# wvdial entelpcs
–> WvDial: Internet dialer version 1.60
–> Cannot get information for serial port.
–> Initializing modem.
–> Sending: ATZ
ATZ
OK
–> Sending: ATQ V1 E1 S0=0 &C1 &D2 +FCLASS=0
ATQ V1 E1 S0=0 &C1 &D2 +FCLASS=0
OK
–> Sending: ATZ+cgdcont=1,”IP”,”imovil.entelpcs.cl”
ATZ+cgdcont=1,”IP”,”imovil.entelpcs.cl”
OK
–> Modem initialized.
–> Sending: ATDT*99#
–> Waiting for carrier.
ATDT*99#
CONNECT
–> Carrier detected.  Starting PPP immediately.
–> Starting pppd at Sun Aug  3 20:13:43 2008
–> Pid of pppd: 6274
–> Using interface ppp0
–> local  IP address 10.109.45.254
–> remote IP address 10.64.64.64
–> primary   DNS address 10.11.12.13
–> secondary DNS address 10.11.12.14

No se aun porque motivo, pero en la primera conexión siempre obtiene dos DNS que no corresponden a la configuración de Entel PCS, al parecer es un problema del modem, porque en los servidores veo que los DNS estan configurados correctamente.

Asi que simplemente Control+C y nuevamente “wvdial entelpcs”, al ejecutar por segunda vez, obtiene el ip y los dns correctos.

Caught signal 2:  Attempting to exit gracefully…
–> Terminating on signal 15
–> Connect time 1.4 minutes.
–> Disconnecting at Sun Aug  3 20:15:15 2008
root@notebook:~# wvdial entelpcs
–> WvDial: Internet dialer version 1.60
–> Cannot get information for serial port.
–> Initializing modem.
–> Sending: ATZ
ATZ
OK
–> Sending: ATQ V1 E1 S0=0 &C1 &D2 +FCLASS=0
ATQ V1 E1 S0=0 &C1 &D2 +FCLASS=0
OK
–> Sending: ATZ+cgdcont=1,”IP”,”imovil.entelpcs.cl”
ATZ+cgdcont=1,”IP”,”imovil.entelpcs.cl”
OK
–> Modem initialized.
–> Sending: ATDT*99#
–> Waiting for carrier.
ATDT*99#
CONNECT
–> Carrier detected.  Starting PPP immediately.
–> Starting pppd at Sun Aug  3 20:15:17 2008
–> Pid of pppd: 6303
–> Using interface ppp0
–> local  IP address 10.109.73.46
–> remote IP address 10.64.64.64
–> primary   DNS address 164.77.252.249
–> secondary DNS address 164.77.252.215

Como es un script de prueba, esta ventana de terminal debe quedar abierta para continuar navegando.

Esta es la primera versión, por ahora me ha permitido navegar desde mi modem y seguir trabajando desde cualquier lado, donde tenga red 3G obviamente.  Con un poco mas de tiempo perfeccionaré el script, ya que hay que regular velocidades y corregir los servidores dns que quedan incorrectos la primera vez.

8 comentarios.

Mmmm porque usas /dev/ttyUSB0 en vez de /dev/sdb0. No soy muy linuxero pero me parece que ttyUSB0 es una nomenclatura antigua y las distribuciones mas nuevas usan sdb0…

No estoy seguro que sea asi pero al menos mis pendrive montan en en dicha localizacion. Saludos.

MrAnderson: uso /deb/ttyUSB0 simplemente porque cuando conecto el modem asi es reconocido por el Ubuntu, que lo asocia inmediatamente como un modem y no como un dispositivo tipo disco (que es el caso de un pendrive) que normalmente se monta como partición. El modem a su vez también es un pendrive, pero Ubuntu es bastante inteligente y no lo monta (al menos en mi notebook porque he visto que a veces lo monta como disco).

Ahi me queda mas claro… Tienes toda la razon ;) Saludos.

WEEEEENA Sorraund… bueno y util el articulo aunque con el driver de vodafono funciona perfecto…

Estimado amigo Joinux tengo el modem E226 de entel chile y segui tus instrucciones que das anteriormente y me sale lo siguiente:

ecochamachi@Ecochamachi-desktop:~$ sudo -i
sudo: unable to resolve host Ecochamachi-desktop
[sudo] password for ecochamachi:
root@Ecochamachi-desktop:~# wvdial entelpcs
–> WvDial: Internet dialer version 1.60
–> Cannot get information for serial port.
–> Initializing modem.
–> Sending: ATZ
ATZ
OK
–> Sending: ATQ V1 E1 S0=0 &C1 &D2 +FCLASS=0
ATQ V1 E1 S0=0 &C1 &D2 +FCLASS=0
OK
–> Sending: ATZ+cgdcont=1,”IP”,”imovil.entelpcs.cl”
ATZ+cgdcont=1,b [1d]IPb [1d],b [1d]imovil.entelpcs.clb [1d]
ERROR
–> Bad init string.
–> Cannot get information for serial port.
–> Initializing modem.
–> Sending: ATZ
ATZ
OK
–> Sending: ATQ V1 E1 S0=0 &C1 &D2 +FCLASS=0
ATQ V1 E1 S0=0 &C1 &D2 +FCLASS=0
OK
–> Sending: ATZ+cgdcont=1,”IP”,”imovil.entelpcs.cl”
ATZ+cgdcont=1,b [1d]IPb [1d],b [1d]imovil.entelpcs.clb [1d]
ERROR
–> Bad init string.
–> Cannot get information for serial port.
–> Initializing modem.
–> Sending: ATZ
ATZ
OK
–> Sending: ATQ V1 E1 S0=0 &C1 &D2 +FCLASS=0
ATQ V1 E1 S0=0 &C1 &D2 +FCLASS=0
OK
–> Sending: ATZ+cgdcont=1,”IP”,”imovil.entelpcs.cl”
ATZ+cgdcont=1,b [1d]IPb [1d],b [1d]imovil.entelpcs.clb [1d]
ERROR
–> Bad init string.
root@Ecochamachi-desktop:~#

Que puedo hacer? no se si son los Init o no encuentra el modem o que pasa, sera que me puedes guiar un poco, pues no soy muy experto en linux, muchas gracias.
balaram

balaram: Por lo que se ve en el error, el linux no esta reconociendo al modem, prueba en otro puerto usb o encendiendo el linux con el modem instalado.

–> Sending: ATZ + cgdcont=1, ”IP”, ”imovil.entelpcs.cl”
ATZ + cgdcont=1, b [1d]IPb [1d], b [1d]imovil.entelpcs.clb [1d]
ERROR

Tengo ese problema, uso como modem un teléfono Sony Ericsson Z750 con un chip de internet movil que venia en un Modem Samsung B1100 pero que por alguna razón Ubuntu no detecta.

Si detecta el Sony, niun drama con todo lo demás, de hecho adapte mi fichero de configuración previamente creado al conectar mi telefono al pc con sudo wvdialconf, se generó solo y el resto lo agregue de tu post.

Estimado Joinux e segido todos los pasos y e reiniciado mas aun e probado con las 6 entradas usb que tengo pero aun no me reconoce el modem e226 entel pcs chile



Deja un comentario
La dirección nunca se despliega, HTML permitido: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <strike> <strong>

(requerido)

(requerido pero no se muestra)