Mostrando entradas con la etiqueta modems. Mostrar todas las entradas
Mostrando entradas con la etiqueta modems. Mostrar todas las entradas
Internet con ZyXEL P-600 series en Linux

A continuación les dejo otro de los tantos posts que he escrito para www.linuxespanol.com. Esta vez sobre cómo acceder a internet usando el modem Zyxel P-600 series, el cual las compañías telefónicas entregan configurado para que el usuario utilice un cliente en el sistema operativo que se autentique ante el servidor antes de acceder a internet.
Mi solución es configurar el modem como router y olvidarme de ejecutar el cliente que se autentique, de esta forma es todo más fácil y puedo usar internet en cualquier máquina sin tener q configurar conexiones.
A continuación, el post original:

----------------------------------------------------

El Zyxel es un modem ethernet asi que la instalación en linux es muy sencilla. En realidad no hay que instalar nada, solo hay que configurar al modem para que funcione como router y configurar la placa de red de la maquina con un ip y una puerta de enlace.

Para configurar el zyxel como router deberemos realizar los siguientes pasos:
1. Abrir una conexión telnet con el modem, cuya ip es 192.168.1.1
$telnet 192.168.1.1
Este nos pedirá un pasword, el cual por defecto es o 1234 o atc456
2. Elegir de entre las opciones la número 11 (Remote Node Setup).
3. Dentro de este menú vemos varias conexiones, de entre las cuales esta activa la 2 (atmpvc0). Deberemos cambiar esto. Para hacerlo, seleccionamos la opción 2, le damos enter y entramos a las propiedades de esta conexion. Allí deberemos cambiar la opción Active=yes a Active=no (para cambiar se utiliza la barra espaciadora). Una vez hecho esto, vamos al final y le damos enter para guardar los cambios.
Una vez hecho esto, deberemos entrar ahora a la conexión 1 (atmpvc3 (ISP,SUA)).
Una vez alli hay que hacer varios cambios.
3.1 Setear la conexion a activa, esto es, poner Active=yes.
3.2 Setear Encapsulation = PPPoE
3.3 Setear Multiplexin = LLC-llcbaced
3.4 Modificar el Outgoing con MyLogin = NombreDeLoginDelProveedor, y MyPassword = PassDelProveedor.
3.5 Ahora a editar las opciones ATM, esto es, seteamos ATM options = yes
3.5.1 Dentro de las opciones de ATM colocamos los siguientes valores: VPI = 8 y VCI = 35
3.5.2 guardamos y salimos
4. Guardamos todos los cambios y salimos. Para salir del telnet, elegimos la opción 99.

Bien ahora hay que configurar la placa de red para que todo funcione bien. La configuración de la placa se puede hacer con algun entorno gráfico, pero voy a explicar usando ifconfig y route debido a que estos comandos están en todas las distribuciones.
Nuestra placa de red deberá tener una ip entre 192.168.1.2 y 192.168.1.254, asi deberemos hacer lo siguiente (suponiendo que nuestra placa de red es la eth0):

#ifconfig eth0 192.168.1.1 netmask 255.255.255.0 broadcast 192.168.1.0
Si la interfaz estaba configurada, primero le damos de baja y después la volvemos a dar de alta:

#ifconfig eth0 down
#ifconfig eth0 up
Ahora hay que setear la puerta de enlace, lo que hacemos con el comando route. route sirve para el ruteo de los paquetes. Si tipean solamente route verán los ruteos actuales. Para agregar el que necesitamos deberemos hacer:
route add default gw 192.168.1.1

Ahora hay que configurar los servidores DNS. Esta es la parte mas facil. Hay que editar el archivo /etc/resolv.conf o bien crearlo si este no existe. Dentro de este archivo deberemos colocar los dns que nos da el proveedor de internet.
En el caso de speedy de Argentina los dns son 200.51.211.7 y 200.51.212.7. Para estos dns la configuracion del archivo es:

nameserver 200.51.211.7
nameserver 200.51.212.7

Bien, eso es todo lo necesario para que podamos navegar. Pero el problema es que si no ponemos todo en un script de arranque deberemos configurar la red a cada rato, esto es, poner la ip y la puerta de enlace.
Una solucion es poner los comandos:

ifconfig eth0 192.168.1.1 netmask 255.255.255.0 broadcast 192.168.1.0
route add default gw 192.168.1.1
en un script y colocarlo al arranque del sistema.
Otra opcion aplicable a los sistemas basados en debian es editar el archivo /etc/network/interfaces. En este archivo estan las configuraciones de todas las placas que tengamos en la maquina. Lo mas comun es que tengamos solo la entrada:

# This file describes the network interfaces available on your system
# and how to activate them. For more information, see interfaces(5).

# The loopback interface
iface lo inet loopback

Que es para la interface loopback.
Ahora podemos agregar nuestra configuración debajo. Para esto, deberemos agregar las siguientes lineas:

iface eth0 inet static
address 192.168.1.2
netmask 255.255.255.0
broadcast 192.168.1.255
network 192.168.1.0

gateway 192.168.1.1

Guardamos los cambios y ya esta, no hay q hacer mas nada, cada vez que encendamos la maquina, tendremos conexión a internet. En otras distribuciones se pueden modificar otros archivos para lograr el mismo objetivo, pero como solo trabajo con debian se los quedo debiendo =/

Espero que todo salga bien, mucha suerte =)

winmodem -> linmodem

Para la primer entrada con información útil del blog elegí este artículo que escribí hace unos 4 años, cuando recién me iniciaba en el mundo GNU/Linux. Es el primer artículo importante que escribí. Si bien ya casi todos tienen banda ancha, aún hay gente que sólo tiene conexión dial-up, y muchos de los modems usados son winmodems.

Para aquellos que aún deben padecer los winmodems, les dedico este artículo. Puede que algunos links no funcionen, no los he revisado, recuerden que tiene 4 años... cualquier duda, comentario, etc, usen los coments de blogger.

Sin más intro, con ustedes, el artículo:

------------------------------------------------------

Para empezar, y fundamental asegurense te tener instalado:
- El compilador gcc, lo pueden hacer con: apt-get install gcc , aunque seria aconsejable que instalen todos los compiladores con: apt-get install build-essential.
- Las cabeceras del kernel, lo pueden hacer con: apt-get install linux-headers-2.6.10-5-386 (aunque deberian cambiar el nro de kernel, por el correspondiente al que tienen instalado).
Lo anterior también se puede hacer desde el manejador de paquetes, simplemente busquen build-essential y linux-headers o kernel-headers (depende la distro) y ya lo tienen.

La pagina que esta dedicada a este tipo de modems con mucha ayuda de como hacerlos funcionar en linux: http://linmodems.org/
La definicion de winmodem y linmodem sacada de esta pagina es:

A Winmodem is a combination of hardware known as chipset (much less than in a true pure hardware modem) and software (written for the infamous Windows operating systems family).
A Linmodem is a Winmodem working under the famous Linux operating system.

De la pagina pueden bajar un programita llamado scanmodem http://linmodems.technion.ac.il/packages/scanModem.gz, este les va a ayudar a saber cual es el chipset de su modem. Al ejecutarlo crea una carpeta llamada Modem y adentro crea varios archivos .txt, si estan apurados y quieren ir al grano, lean el q se llama ModemData.txt, aqui se indica el chipset y de donde pueden descargar los archivos y parches necesarios para la instalacion.

NOTA ESPECIAL: Parece que se solucionaron los problemas de los chipset PCTel corriendo en kernels 2.6 (hasta ahora no andaban), la noticia esta publicada en http://linmodems.technion.ac.il/pctel-linux/welcome.html al igual q la solucion.

Lo anterior explicado es la base para la instalación de cualquier winmodem.
Lean bien el archivo ModemData.txt pq yo no lo hice y estuve casi 2 semanas buscando en internet y todo lo que encontré estaba en ese archivo. La unica critica es q la explicación es un poco pobre en ese archivo y por eso capaz uno se pierde, pero haciendo uso de la pagina de linmodems, creo q ya hacen andar casi todo.
Ahora voy a ser mas especifico y voy a explicar como hice andar un NetoDragon con chipset SmartLink. Si bien el driver q tengo es original de la pagina y lo q voy a explicar es basado en este driver, supongo q todo lo que diga va a servir para cualquier modem con chipset SmartLink pq la base es la misma.

El driver del NetoDragon se baja desde http://www.netodragon.com/downloadpage.htm
Tambien van a tener que bajar un par de parches (esto para cualquier driver SmartLink) si tienen kernel 2.6.10 o mayores:
http://www.mwmu.com/mw/computers/linux/dell600m/slmodem-2.9.10-abby.diff y http://linmodems.technion.ac.il/packages/smartlink/ungrab-winmodem.tar.gz
Descomprimen el driver del modem y adentro de la carpeta q se crea copian el archivo slmodem-2.9.10-abby.diff y con este deben parchar para instalar. Esto lo hacen con: $patch -p1 < country="ARGENTINA">

Luego ejecutan:

#make
#make install
Con esto se instala el controlador, pero cuando lo intenten cargar van a tener problemas, los cuales se solucionan con el otro parche.
Descomprimen el archivo ungrab-winmodem.tar.gz . Dentro de la carpeta q se crea deben realizar nuevamente:
#make
#make install
Ahora deben cargar el parche con:
#modprobe ungrab-winmodem
Ahora si, pueden cargar el modem con:
#modprobe slamr
Ahora configuran el modem con su pais:
#/usr/sbin/slmodemd --country=ARGENTINA /dev/slamr0 &
Esto crea un dispositivo, que puede tener distintos nombres, en mi caso se llama /dev/ttySL0. Esto se los tira automáticamente cuando ejecutan el comando anterior.

Para no tener que cargar a mano los módulos ungrab-winmodem y slamr todas las veces q vamos a usar el modem, lo que podemos hacer es agregarlos a los modulos q carga el kernel cuando inicia. Esto lo hacemos editando el archivo /etc/modules agregando al final los modulos deseados, es decir ungrab-winmodem y slamr.

Con todo lo anterior ya deberían tener el modem andando, ahora para configurar una conexión, a mi no me anduvo kppp ni otros q son gráficos, solamente pude hacer andar la conexión con wvdial o con pon. Básicamente todos actuan sobre lo mismo ppp, asi q la razon de pq algunos andan y otros no, no la conozco.
Para wvdial deben configurar un archivo q creo va en /etc/wvdial.conf escribiendo ciertas lineas q indican al controlador q hacer. Yo tenia lo que habia q escribir pero ya me olvide y encontré otra aplicación q lo facilita todo. Esta es ejecutando $pppconfig . Con esto Pueden crear una cuenta muy fácilmente.

Para hacer andar la cuenta creada con pppconfig, hacen
$pon nombre_cuenta
Para ver el estado de cuando esta conectando:
$plog
Para desconectarse hacemos:
$poff

Un link interesante donde se da una ayuda para configurar una conexión a internet (y otras cosas) es:
http://www.nautopia.net/archives/es/linux_distribuciones/slacksinx/slackware_sin_x_ii.php

Con esto completamos lo que es la conexión. Si llegaron hasta aca es porque ya se pudieron conectar y estoy muy feliz, caso contrario tirenme el error q tienen y capaz se los pueda solucionar.
Yo estoy escribiendo esto conectado desde Ubuntu 5.04, asi q soy un claro ejemplo de q al menos a alguien lo que antes escribi le anda =P

Algo interesante q estuve buscando es que el modem tiene un altavoz (casi todos lo tienen), y cuando nos conectamos mete un quilombo monumental q lo escuchan hasta los vecinos. Hice una simple búsqueda y encontré lo siguiente:

Para quitar el molesto ( para otros agradable :P ) pitido que hace el modem al marcar, si hemos usado el programa pppconfig que viene con Debian para la configuración de la conexión, bastará con editar el archivo /etc/chatscripts/nombre_conexion y añadir la línea:

OK-AT-OK ATM0

antes del número de marcado, con lo que quedaría así:

...

OK-AT-OK ATM0

OK-AT-OK ATDTNum_Marcado

...

Guardamos y al ejecutar de nuevo

pon nombre_conexion

veremos como el modem se conecta sin hacer el más mínimo ruido :)

Fuente: http://eghost.deusto.es/phpwiki/index.php/ReceTasEusk1-10?PHPSESSID=1ebc4d6c4cbd6c75b444873ced7a1caf#x38.x2e._Errezeta

Ahora con esto soy casi completamente feliz, dado q ese ruido me taladraba la cabeza.

Ahh el texto es de libre distribucion siempre q nombren al autor y a los links citados :P
Suerte a todos! :D