El DNS dinámico (DDNS) es un servicio que permite la actualización en tiempo real de la información sobre nombres de dominio situada en un servidor de nombres. El uso más común que se le da es permitir la asignación de un nombre de dominio de Internet a un dispositivo con dirección IP variable (dinámica). Esto permite conectarse con la máquina en cuestión sin necesidad de tener conocimiento de que dirección IP posee en ese momento.
El DNS dinámico hace posible utilizar un software de servidor en un dispositivo con dirección IP dinámica (como la suelen facilitar muchos ISP) para, por ejemplo, alojar un sitio web en la PC de nuestra casa, sin necesidad de contratar un hosting de terceros; pero hay que tener en cuenta que las PC caseras posiblemente no estén tan bien dotadas como los servidores de un Datacenter, ni tengan toda la infraestructura que poseen estos lugares.
Luego de esta introducción sobre el DNS Dinámico veamos como configurar un equipo Debian con Proxmox.
Vamos a instalar el cliente DUC (Dynamic Update Client) de no-ip en Linux, en este caso en Debian Wheezy, y hacer que inicie automáticamente al arrancar la máquina.
Instalación del Cliente (DUC)
Desde una terminal con acceso root instalamos el paquete GCC
“GCC es parte del proyecto GNU, y tiene como objetivo mejorar el compilador usado en todos los sistemas GNU, incluyendo la variante GNU/Linux. El desarrollo de GCC usa un entorno de desarrollo abierto y soporta muchas plataformas con el fin de fomentar el uso de un compilador-optimizador de clase global, que pueda atraer muchos equipos de desarrollo, y asegure que GCC y los sistemas GNU funcionen en diferentes arquitecturas y diferentes entornos, y más aún, para extender y mejorar las características de GCC.”
debemos ejecutar la siguiente linea de comandos:
aptitude install build-essential gcc
Una vez instalado bajamos el cliente, para eso ingresamos a la siguiente ruta:
cd /usr/local/src
Y bajamos el archivo que tenemos que instalar:
wget http://www.no-ip.com/client/linux/noip-duc-linux.tar.gz
Procedemos a descomprimirlo:
tar xzf noip-duc-linux.tar.gz
Y luego a cambiarnos de directorio
cd noip-2.1.9-1
Ahora procedemos con la instalación ejecutando estas dos líneas
make
make install
Si aparece un mensaje como “make not found” o “missing gcc” es que no has instalado el GCC del primer paso.
Configuración del Cliente
Ahora procederemos a configurar el cliente, para esto debemos ejecutar desde la misma consola el siguiente comando:
/usr/local/bin/noip2 -C
Debemos respetar que el comodín sea mayúscula -C con esto comenzará a pedirnos datos como el correo y la contraseña con el que entramos en No-Ip. Luego viene una pregunta importante “Do you wish to update ALL hosts?”. Si tenemos varios host creados y respondemos “Yes” nos va a actualizar todos ellos, si respondemos “No” nos va a ir preguntando uno a uno cuales queremos actualizar y luego cada cuantos minutos queremos actualizar.
Con esto ya tenemos el cliente configurado con nuestra información, ahora podemos ejecutarlo para que comience a trabajar en segundo plano con la siguiente linea de comando:
/usr/local/bin/noip2
Inicio automático del Cliente
Ahora para que nuestro cliente pueda quedar funcionando de manera automática debemos crear un script en “/etc/init.d” con el siguiente comando:
nano /etc/init.d/noip2
Y pegar el siguiente código:
#! /bin/sh # /etc/init.d/noip2 # Supplied by no-ip.com # Modified for Debian GNU/Linux by Eivind L. Rygge <eivind@rygge.org> # Updated by David Courtney to not use pidfile 130130 for Debian 6. # Updated again by David Courtney to "LSBize" the script for Debian 7. ### BEGIN INIT INFO # Provides: noip2 # Required-Start: networking # Required-Stop: # Should-Start: # Should-Stop: # Default-Start: 2 3 4 5 # Default-Stop: 0 1 6 # Short-Description: Start noip2 at boot time # Description: Start noip2 at boot time ### END INIT INFO # . /etc/rc.d/init.d/functions # uncomment/modify for your killproc DAEMON=/usr/local/bin/noip2 NAME=noip2 test -x $DAEMON || exit 0 case "$1" in start) echo -n "Starting dynamic address update: " start-stop-daemon --start --exec $DAEMON echo "noip2." ;; stop) echo -n "Shutting down dynamic address update:" start-stop-daemon --stop --oknodo --retry 30 --exec $DAEMON echo "noip2." ;; restart) echo -n "Restarting dynamic address update: " start-stop-daemon --stop --oknodo --retry 30 --exec $DAEMON start-stop-daemon --start --exec $DAEMON echo "noip2." ;; *) echo "Usage: $0 {start|stop|restart}" exit 1 esac exit 0
Guardamos los cambios y cerramos el archivo. Ahora le damos permisos de ejecución con el siguiente comando:
chmod +x /etc/init.d/noip2
Y lo agregamos al incio:
update-rc.d noip2 defaults
Para poder validar el correcto funcionamiento, podemos ejecutar el siguiente comando
/usr/local/bin/noip2 -S
En donde nos entregará algo así:
Using configuration from /usr/local/etc/no-ip2.conf Last IP Address set xx.xx.xx.xx Account xxxxx@xxxxx.com configured for: host xxx.no-ip.biz host xxx.no-ip.info host xxx.no-ip.org Updating every 30 minutes via /dev/eth0 with NAT enabled.
Fuente de Definiciones: