[Bash] Cdmon

Este script es uno que hice hará 4 o 5 años, cuando usaba un dominio que tenía contratado con CDMON, para poder utilizarlo con un servidor que tenía en casa (y por tanto con IP dinámica). Interactúa con la API de CDMON y actualiza la IP en el sistema de DNS Dinámica de este ISP.
Actualmente, no obstante existe una versión mejorada en http://info.cdmon.com/uploads/dnsdinamico/dincdmon.txt

## Datos de usuario de CDMON.ORG
# USUARIO = es el nombre de usuario para entrar en CDMON.ORG
# PASSWORDMD5 = Es la contrasenia para entrar en CDMON.ORG encriptada con
#el algoritmo MD5. Hay programas (tambien online) para ello.
#USUARIO=tu-usuario-de-cdmonPASSWORDMD5=tu-password-de-cdmon-encriptada
## Datos propios de la maquina donde ejecutamos el script# IFZ = Interfaz de red que se conecta a Internet
# EMAIL = Direccion de correo donde enviar las notificaciones de los cambios#comentamos esto ya que no lo necesitaremos para esta variante
#IFZ=eth1EMAIL=tu@correo.com#Dejamos de usar cdmon para obtener la IP, ya que siempre nos va a dar la IP que estamos usando en este momento
#GET_IP="https://www.cdmon.com/pcontrol/dnsdinamico/onlineService.php?enctype=MD5&n=$USUARIO&p=$PASSWORDMD5"
#IP_DNS_ONLINE=`wget $GET_IP -o /dev/null -q -O /dev/stdout | cut -f2 -d\& | cut -f2 -d=`
#En su lugar, primero observamos hacia donde esta resolviendo nuestro dominio. En mi caso concreto, como lo tengo aliaseado en host para poder acceder a traves de la DNS, especifico un servidor de dns
IP_DNS_ONLINE=$(host tu.dominio.com 212.145.4.98 | grep tu.dominio.com | awk {‘print $4′})
#Como no podemos sacar la IP a través de ifconfig, ya que nos devuelve la IP interna y nola real, la sacamos por whatismyip
IP_ACTUAL=`lynx -dump http://www.whatismyip.com | grep "Your IP Is"| cut -c 38-52`echo $IP_DNS_ONLINE $IP_ACTUAL
#Eliminamos el correo con las dos IP’s ya que si es la misma molesta más que otra cosaif [ "$IP_DNS_ONLINE" != "$IP_ACTUAL" ]; then    CHANGE_IP="https://www.cdmon.com/pcontrol/dnsdinamico/onlineService.php?enctype=MD5&n=$USUARIO&p=$PASSWORDMD5&cip=$IP_ACTUAL
RESULTADO=`wget $CHANGE_IP -o /dev/null -O /dev/stdout`
MENSAJE="Ha habido un cambio en la IP de los nombres de dominio.\n"
MENSAJE=$MENSAJE"Se han actualizado los servidores DNS dinamicos de CDMON.\n"
MENSAJE=$MENSAJE"El resultado devuelto ha sido el siguiente:\n"
echo -e $IP_DNS_ONLINE $IP_ACTUAL $MENSAJE $RESULTADO | mail $EMAIL -s "cambio de IP"
fi

3 comments for “[Bash] Cdmon

  1. 20/08/2012 at 11:17

    Alicia comentó:

    Soy c1ngel del blog de 3picks. Gracias por contactar con nosoorts. Estaredamos encantandos de intercambiar links, sereda un placer. Por nuestra parte ya este1s agregado.Suerte

    Desde jbahillo.com: a las 15:16 del 10/08/2012

  2. 20/08/2012 at 11:17

    Alicia comentó:

    Soy c1ngel del blog de 3picks. Gracias por contactar con nosoorts. Estaredamos encantandos de intercambiar links, sereda un placer. Por nuestra parte ya este1s agregado.Suerte

    Desde jbahillo.com: a las 15:16 del 10/08/2012

  3. 10/08/2012 at 15:16

    Soy c1ngel del blog de 3picks. Gracias por contactar con nosoorts. Estaredamos encantandos de intercambiar links, sereda un placer. Por nuestra parte ya este1s agregado.Suerte

Deja un comentario