TIP: Instalando el infame Modem Huawei usb


modem Huawei
Este articulo esta dedicado a uno de nuestros mas recientes integrantes del grupo Antonio A. Lionetti.

Si hay algo que odiamos todos son las promociones de ADSL de Argentina.
Principalmente las de Telecom. Estos sres. buscan maximizar beneficios a costa de los incautos usuarios.
Estamos en Argentina!, lo que parece una promoción barata no es mas que un engaño o artilugio para entregar algo de menor calidad. Este es el caso de los modems Huawei que se entregan en comodato.
Solamente en dos partes del mundo se comercializan estos aparatos, Argentina y Rusia.
El que conoce un mínimo de redes sabe perfectamente que una conexión usb es de menor calidad que una ethernet.
Si sos un incauto mas y te metieron el perro seguí leyendo. Voy a tratar de que tengas tu modem perfectamente funcionando en tu flamante instalación de Linux.

Ingredientes básicos:
1-Distro favorita en CD o DVD
2-Otra máquina con conexión o la misma con doble booteo para poder acceder a Internet
3-Paciencia

Arrancamos:

Primero debemos saber la versión de nuestro kernel.
Para ello desde una consola hacemos:
incauto@xunilda$ uname -r
El sistema deberia responder algo como
incauto@xunilda$ 2.6.20.2
Los numeritos que ven indica que en este caso el kernel es de la serie 2.6.20
Les cuento que a diferencia de Windows, el kernel de Linux posee un ciclo de vida muy dinamico y en escasos 30 o 40 dias puede aparecer una version nueva del mismo.
Porque les hago averiguar la version del kernel?
El tema es que en las versiones mas viejas inferiores a la 2.6.15 van a necesitar el modulo ueagle mas reciente. En las versiones nuevas esto se mejoro y no es necesario ya que utiliza un modulo uegle ATM mejorado.

Bajamos el firmware
http://eagle-usb.org/ueagle-atm/non-free/ueagle-data-1.1.tar.gz
La ultima version del script roaring poe
http://www.roaringpenguin.com/files/download/rp-pppoe-3.8.tar.gz
También vamos a necesitar el modulo br2684ctl
Por ejemplo para ubuntu este modulo lo pueden encontrar aqui:
http://mirrors.kernel.org/ubuntu/pool/universe/b/br2684ctl/br2684ctl_20040226-1_i386.deb
El modulo Libatm1
Este ultimo lo pueden conseguir desde los repositorios oficiales o en el juego de CD/DVD de instalacion.
Para el caso de ubuntu:
http://mirrors.kernel.org/ubuntu/pool/main/l/linux-atm/libatm1_2.4.1-17_i386.deb
Ojo que esta libreria depende de la libc6 si no la tiene instalada la pueden bajar de los repositorios, por ejemplo nuevamente para ubuntu:
http://mirrors.kernel.org/ubuntu/pool/main/g/glibc/libc6_2.5-0ubuntu14_i386.deb
Todo lo anterior lo pueden hacer con la conexion extra a internet, la mayoria como tontos se quedan aca justamente porque no tiene conexion!.
Se lo bajan a un pendrive o un cd grabable y despues lo pasan a su directorio home.

Nos queda un paso mas para que este todo preparado, instalar los paquetes de compilacion.
En el caso de debian/ubuntu o cualquier distro basada en ella es facil ya que en el primer cd vienen los mismos.
Insertar el cd y hacer desde una consola:

incauto@xunilda$ sudo apt-get install build-essential linux-headers-`uname -r`
Pueden tambien reemplazar donde dice uname -r por la version del kernel, por ejemplo:
incauto@xunilda$ sudo apt-get install build-essential linux-headers-2.6.10

Compilamos el modulo eagle en caso de ser un kernel viejo:
Lo primero que vamos a hacer es bajar el driver de aqui:
http://download.gna.org/ueagleatm/ueagle-atm-1.3.tar.gz

Desinstalamos el driver viejo:
incauto@xunilda$ sudo lsmod | grep eagle

Si nos sale algo referido al eagle-usb’, para descargarlo de la memoria tipeamos:

incauto@xunilda$ sudo modprobe -r eagle-usb

Ahora hay que remover los módulos de la memoria, para eso hacemos:

incauto@xunilda$ sudo rm /lib/modules/`uname -r`/kernel/drivers/usb/atm/usbatm.ko
incauto@xunilda$ sudo rm /lib/modules/`uname -r`/kernel/drivers/usb/net/eagle/eagle-usb.ko

Instalamos el driver nuevo:

incauto@xunilda$ tar xzf ueagle-atm-1.3.tar.gz
incauto@xunilda$ cd ueagle-atm-1.3
incauto@xunilda$ sudo make
incauto@xunilda$ sudo make install

Nota: si tu distro es muy nueva y comprobas con
$ sudo lsmod | grep eagle-atm que el modulo existe no hagas nada de lo anterior!!!

Instalamos el firmware:

incauto@xunilda$ tar xzf ueagle-data-1.1.tar.gz
incauto@xunilda$ cd ueagle-data-1.1

Ahora creamos la carpeta donde se instalará el firmware:

incauto@xunilda$ sudo mkdir /lib/firmware/ueagle-atm

Y copiamos el contenido de ueagle-data-1.1 a la carpeta del firmware que hemos creado:

incauto@xunilda$ sudo cp -a * /lib/firmware/ueagle-atm

Ya esta todo listo para probar:
Conectamos el modem y hacemos
incauto@xunilda$ sudo modprobe ueagle-atm

Si todo salió bien y no se ven errores, fíjense en el módem, verán que la lucecita de LINK al principio parpadea y luego queda definitivamente encendida, esa es la señal de que el modem está funcionando.
Para confirmar realmente esto, tipear:
incauto@xunilda$ dmesg | grep ueagle
Tiene que salir algo como:
[ueagle-atm] driver ueagle 1.2 loaded
usb 1-2: [ueagle-atm] ADSL device founded vid (0X1110) pid (0X9031) : Eagle III
usb 1-2: [ueagle-atm] using iso mode
usb 1-2: [ueagle-atm] (re)booting started
usbcore: registered new driver ueagle-atm
usb 1-2: [ueagle-atm] modem synchronization failed
usb 1-2: [ueagle-atm] (re)booting started
usb 1-2: [ueagle-atm] modem operational
usb 1-2: [ueagle-atm] ATU-R firmware version : 44e2ea17

Hasta aca estamos bien ya nos esta indicando que el modem esta levantado.
Falta la parte de configuracion.
Instalamos libatm
incauto@xunilda$ sudo dpkg -i libatm1_*.deb
Instalamos br2684ctl
incauto@xunilda$ sudo dpkg -i br2684ctl*.deb
Ahora hacemos:
incauto@xunilda$ sudo br2684ctl -c 0 -b -a 0.33
NOTA: los parámetros 0 y 33 corresponden al VPI y el VCI del ISP Arnet, ustedes deberán
adaptarlo al suyo. Si todo está bien, les saldrá esto:

RFC1483/2684 bridge: Interface “nas0″ created sucessfully
RFC1483/2684 bridge: Communicating over ATM 0.0.33, encapsulation: LLC
RFC1483/2684 bridge: Interface configured
Tipeamos:
incauto@xunilda$ sudo ifconfig nas0 up
nas0 es la interfaz que se acaba de crear al tipear el comando anterior.
Con este comando la estamos levantado.

ahora vamos a utilizar el rp-ppoe para configurar nuestra conexion:
incauto@xunilda$ tar xzf rp-pppoe-3.8.tar.gz
incauto@xunilda$ cd rp-pppoe-3.8
incauto@xunilda$ sudo ./go

Se iniciará un asistente el cual nos hará unas preguntas referidas a nuestra conexión, debemos responder lo siguiente (lo que está en negrita):

1. Enter your PPPoE user name: nombre de la cuenta por ejemplo: cuenta@arnet-ciudad-apb
2. Enter the Ethernet interface connected to the DSL modem: nas0
3. Enter the demand value: no
4. Enter the DNS information here:
5. Enter the secondary DNS server address here:
6. Please enter your PPPoE password: (tu contraseña de Internet)
7. Please re-enter your PPPoE password: (confirmación de tu contraseña de Internet)
8. Choose a type of firewall (0-2): 1
9. Accept these settings and adjust configuration files (y/n)? y

Ahora lo que queda es armar la configuracion ppp.
Para eso vamos a crear el archivo adsl con nuestro editor favorito, por ejemplo:
incauto@xunilda$ sudo gedit /etc/ppp/peers/adsl

Y pegamos el siguiente texto en el archivo:

# example configuration for the kernel space PPP over Ethernet driver
#
# See the manual page pppd( for information on all the options.
# MUST CHANGE: replace myusername@realm with the PPP login name given to
# your by your provider.
# There should be a matching entry with the password in /etc/ppp/pap-secrets
# and/or /etc/ppp/chap-secrets.
user “usuario@proveedor”
# Load the PPPoE plugin.
plugin rp-pppoe.so
# Ethernet interface to which the modem is connected.
nas0
# Assumes that your IP address is allocated dynamically by the ISP.
noipdefault
# Try to get the name server addresses from the ISP.
usepeerdns
# Use this connection as the default route.
defaultroute
# Makes pppd “dial again” when the connection is lost.
persist
# Do not ask the remote to authenticate.
noauth

Recuerden reemplazar “usuario@proveedor” por el nombre de usuario de uds. entre comillas.

Guardamos y probamos si funciona la conexion:
incauto@xunilda$ sudo pppoe-start
Deberia aparecer un mensaje que diga
Conected!

Automatizando la conexión:
Cada vez que arranquen el sistema van a tener que cargar el modulo br2684, br2684ctl con sus parametros y hacer pppoe-start.

incauto@xunilda$ sudo modprobe br2684
incauto@xunilda$ sudo br2684ctl -c 0 -b -a 0.33
incauto@xunilda$ sudo ifconfig nas0 up
incauto@xunilda$ sudo pppoe-start

Esto ultimo se puede automatizar generando el siguiente script con el editor que les resulte mas comodo.

incauto@xunilda$ gedit conectar.sh

y copiamos lo siguiente
————–copiar lo que sigue a la linea punteada—————-
#!/bin/sh
# Script de conexion
modprobe br2684
br2684ctl -c 0 -b -a 0.33
ifconfig nas0 up
pppoe-start

Guardamos y ahora le damos derecho de ejecucion:
incauto@xunilda$ chmod +x conectar.sh

Lo unico que nos queda es correr el script cada vez que nos queremos conectar a internet desde una terminal.
incauto@xunilda$ sudo ./contectar.sh

Si queremos automatizar mas la cosa y no tenemos ganas de andar abriendo una terminal cada vez que nos queremos conectar.
Agregamos el modulo br2684 para que inicie automaticamente cada vez que arrancamos la pc.

incauto@xunilda$ sudo gedit /etc/modules
y agregamos la siguiente linea
br2684
guardamos

Luego editamos /etc/rc.local
y agregamos:
br2684ctl -c 0 -b -a 0.33
ifconfig nas0 up
pppoe-start
exit 0

guardamos.
Listo! cada vez que arranquemos la maquina se conectara automaticamente y no tendremos que hacer nada.

Moraleja: Si van a contratar un servicio de ADSL rechacen de plano los modems usb. Se van a ahorrar un gran dolor de cabeza.

ESTE TEXTO SE PUBLICA BAJO LICENCIA CREATIVE COMMONS BY-NC-SA 2.5 AR.

Por lo tanto, usted es libre de: 1) Copiarlo, distribuirlo y exhibirlo. 2) Hacer obras derivadas. Bajo las siguientes condiciones: 1) Debe dar atribución mencionando el nombre del autor y del LUG Zona Norte. En caso de las notas que no llevan firma, mencionar sólo el nombre del LUG.
2) Usted no puede usar esta obra con fines comerciales. 3) Si usted altera, transforma, o crea sobre este texto, sólo podrá distribuir la obra derivada resultante bajo una licencia idéntica a ésta.

Más detalles y texto legal de la licencia en: http://creativecommons.org/licenses/by-nc-sa/2.5/ar

  1. #1 by azkarashare on 04/11/2007 - 22:29

    Gracias Sebas por deleitarnos con estos artículos tan bien esplicados. De seguro que esto le va a servir de ayuda a mucha gente.
    Felicitaciones para uno de los mejores blogs dediados al software libre.

(will not be published)
IMPORTANT! To be able to proceed, you need to solve the following simple math (so we know that you are a human) :-)

What is 13 + 7 ?
Please leave these two fields as-is: