Si realizas aplicaciones con módems GPRS en muchas ocasiones te habrás encontrado con el problema de que las direcciones IP asignadas por el operador de telefonía son dinámicas.

¿Que qué es una IP dinámica? Pues significa que cada vez que uno de tus módems se conecte a la red GPRS el operador le va a asignar una dirección IP distinta.

En muchas aplicaciones puede no tener importancia, por ejemplo, si yo tengo un módem que recoge datos de un datalogger y al final del día el módem los envía por GPRS a un servidor central pues importa poco que la dirección IP del módem sea dinámica, pues en este caso es el módem quien realiza la conexión hacia un servidor central (que si debe tener una dirección IP fija, o al menos una DNS).

dyndns

El problema viene cuando queremos trabajar con módems GPRS en modo servidor, es decir, con módems que permanecen conectados a GPRS de forma permamente y que permanecen a la escucha en un determinado puerto TCP a la espera de conexiones entrantes (típico telemantenimiento). En esta situación es necesario conocer la dirección IP de los módems. Hay varias soluciones para resolver este problema, hoy voy a comentar una de ellas, el servicioDynDns.Con DynDns es posible, gratuitamente, asignar una determinada IP a una DNS.  Para ello basta abrise una cuenta en www.dyndns.org.

Veamos un ejemplo concreto.

No voy a poner un ejemplo en java sino que lo vamos a ver directamente con comandos AT. Hacerlo con java a partir de lo siguiente es prácticamente igual si usamos la clase ATCommand.

Imaginemos que tenemos creada nuestra cuenta en DynDns.org con los siguientes datos:

servidor DNS: members.dyndns.org
host: blogelectronica.dyndns.org
login: miLogin
password: miPassword
IP actual: 80.100.101.102   (la IP que me ha asignado el operador)

y lo que quiero conseguir con el módem es que la dirección blogelectronica.dyndns.org apunte a la dirección IP 80.100.101.102 que es la que me ha asignado el operador en un momento dato. Es decir, que si yo desde mi PC hago ping a blogelectronica.dyndns.org tenga la misma respuesta que si hago ping a 80.100.101.102

¿Y cuales son los comandos AT necesarios para hacer que blogelectronica.dyndns.org apunte a la IP 80.100.101.102?

Pues para configurar el perfil de conexión GPRS (con movistar) son los siguientes:

AT^sics=0,conType,GPRS0
OK
AT^sics=0,inactTO,20
OK
AT^sics=0,user,MOVISTAR
OK
AT^sics=0,passwd,MOVISTAR
OK
AT^sics=0,apn,movistar.es
OK
AT^sics=0,dns1,80.58.0.33
OK
Para configurar el perfil de servicio http son los siguientes (fijáos que para DynDns es necesario utilizar el protocolo de autenticación básico, con login y password, de ahí que activemos el hcAuth)
AT^siss=0,srvType,Http
OK
AT^siss=0,conID,0
OK
at^siss=0,user,miLogin
OK
at^siss=0,passwd,miPassword
OK
at^siss=0,hcMethod,0
OK
at^siss=0,hcAuth,1
OK
AT^siss=0,address,http://members.dyndns.org/nic/update?hostname=blogelectronica.dyndns.org&myIP=80.100.101.102&
wildcard=NOCHG&mx=NOCHG&backmx=NOCHG
OK
Por último nos queda abrir el socket para iniciar la conexión HTTP:
AT^siso=0
OK
^SIS: 0, 0, 2201, “HTTP/1.1 401 Unauthorized”
^SIS: 0, 0, 2200, “HTTP Redirect to:members.dyndns.org:80/nic/update?hostname=blogelectronica.dyndns.org&myIP=80.100.101.102&
wildcard=NOCHG&mx=NOCHG&backmx=NOCHG”
^SIS: 0, 0, 2201, “HTTP/1.1 200 OK”
^SISR: 0, 1
Este último evento ^SISR: 0,1 indica que han llegado datos al socket “0″ y tenemos que leerlos con AT^SISR:
AT^sisr=0,1500
^SISR: 0, 17
good 80.100.101.102
OK

Sólamente haciendo esto, ya tenemos asociada la DNS blogelectronica.dyndns.org a la IP 80.100.101.102 de manera gratuita y sin necesidad de pagar ninguna cantidad mensual al operador, que si no recuerdo mal cobran en torno a los 12 euros + iva por cada dirección IP fija.Esto es algo que incorporaré más adelante en el MTXTunnel, aunque posiblemente lo haga únicamente en la versión advanced.

Bueno, espero que el post os haya resultado de interés y que os sea útil para vuestras aplicaciones con módems gprs Siemens / Cinterion, que como véis es posible hacer de todo con ellos, una maravilla de módems. ;)



Puedes comentar este post en el nuevo Foro (click aquí)

- (10) Posts

Post relacionados:

  1. Cómo obtener la hora con los terminales MTX y módems Siemens / Cinterion Llevo casi un mes sin escribir en blogElectronica. Y es...
  2. Añadir datos a ficheros con módems Siemens-Cinterion desde java En bastantes ocasiones me ha llegado la pregunta de cómo...
  3. Protocolo Multiplex con módems de Siemens Hoy voy a hablar un poquito de la característica Multiplex...
  4. Parámetro Autoexec de los módems Siemens / Cinterion   Hoy voy a comentar por encima un parámetro importante...
  5. Plataforma OTAP para módems gprs Siemens – Cinterion Hace tiempo que no escribo en el blog. Han  sido...








Etiquetas: , , ,

Los comentarios no están permitidos.