Hace muchos años, la dirección IP estática se incluía dentro de mi oferta de ADSL de Telefónica. En esa época no la utilizaba y cuando me propusieron aumentar de velocidad a cambio de la IP estática, realmente no me supuso un gran dilema.
En la actualidad, a no ser que indiques lo contrario y pagues por ello, todos los proveedores de Internet ofrecen IP dinámica, es decir, cambia cada vez que el router se reinicia.
Para la inmensa mayoría de los usuarios, que su IP sea de uno u otro tipo no les afecta en absoluto. Pero si lo que queremos es conectarnos a nuestra red local desde el exterior, es imprescindible conocer nuestra dirección IP pública en cada momento y esto sería un problema si no existiesen los servicios de DNS dinámicos.
Hay muchos proveedores de DNS dinámicos donde elegir y disfrutar de las ventajas de una dirección estática. Algunos son de pago y otros funcionan perfectamente sin tener que desembolsar un solo euro. De todos los gratuitos que he probado, para mí, el que mejor me ha funcionado ha sido NOW-DNS.

Para utilizar este servicio, es necesario darnos de alta en él y una vez estemos correctamente acreditados, podremos empezar a crear los nombres de los hosts, que son, en definitiva, las direcciones que utilizaremos para conectarnos a nuestros equipos remotos.

Tenemos posibilidad de crear tantos nombres como necesitemos, con el único requisito de que el nombre esté disponible.

La IP que aparece al inicio es la que actualmente está asignada pero, como ya sabemos, esta IP cambiará al reiniciar el router. De alguna manera debemos actualizar la IP cada vez que cambie. O bien utilizamos la opción del router si tenemos la posibilidad en nuestro dispositivo, o bien utilizamos un programa que se dedique a verificar continuamente si ha habido cambio en la dirección, y si lo detecta que la actualice.
En este caso, voy a instalar en la Raspberry que utilizo, entre otros servicios, como servidor web el programa ddclient que se encargará de actualizar la dirección IP.
sudo pacman -S ddclientUna vez terminada la instalación, obtendremos un fichero de configuración con los parámetros iniciales por defecto, y ejemplos de configuración de distintos proveedores de DNS dinámico. Modificamos, si fuese necesario, los parámetros de tiempo transcurrido entre comprobación, y la dirección de correo electrónico que queremos utilizar para que se nos informe de los eventos que vayan sucediendo:
sudo nano /etc/ddclient/ddclient.confdaemon=900 # check every 900 seconds (15m)
mail=root # mail all msgs to root
#mail-failure=root # mail failed update msgs to root
mail-failure=user@email.com
pid=/var/run/ddclient.pid # record PID in file.
ssl=yes # use ssl-support. Works with
# ssl-libraryLa configuración para NOW-DNS es la siguiente, modificando los datos de login y password, y la añadiremos al final del mismo fichero de configuración:
##
## NOW-DNS.COM (https://now-dns.com)
##
use=web, web=now-dns.com/ip # get ip from server.
server=now-dns.com/update # default server
## multiple host update to the custom DNS service
protocol=dyndns2
login=myLogin
password=myPassword
server=now-dns.com, \
myweb1.com,
myweb2.net,
myweb3.com,
myweb4.comSólo faltará activar y arrancar el servicio:
sudo systemctl enable ddclient
sudo systemctl start ddclientNo olvidemos configurar el router para que cuando llegue la petición del exterior, redireccione al equipo local deseado.
Si hemos configurado en ddclient.conf una dirección de correo válida, empezaremos a recibir correos informándonos de los eventos que vayan ocurriendo al ejecutar el programa:
WARNING: file /var/cache/ddclient/ddclient.cache, line 8: Invalid Value for keyword 'ip' = ''
WARNING: file /var/cache/ddclient/ddclient.cache, line 10: Invalid Value for keyword 'ip' = ''
FAILED: updating test-blog.001www.com: nochgnochg: unexpected status ()
regards,
ddclient@blog (version 3.9.0)Para analizar los posibles errores que se estén generando, el primer paso sería parar el servicio ddclient:
sudo systemctl stop ddclientY, a continuación, ejecutar el siguiente comando que nos ayudará a verificar línea a línea:
sudo ddclient -debug -verbose -foreground -file /etc/ddclient/ddclient.confddclient utiliza el fichero ddclient.cache para comparar la última IP actualizada con la actual. Para saber dónde está ubicado este fichero ejecutaremos:
ddclient -help | grep cachePor defecto, ddclient lo coloca en /var/cache/ddclient/ddclient.cache.
Si en alguna ocasión necesitamos borrar el fichero, deberemos en primer lugar parar el servicio:
sudo systemctl stop ddclientBorrar el fichero:
sudo rm /var/cache/ddclient/ddclient.cacheY reiniciar el servicio:
sudo systemctl restart ddclientCon esta configuración ya tienes tu DNS dinámico funcionando, actualizando automáticamente tu IP pública cada 15 minutos y permitiéndote acceder a tus servicios desde cualquier lugar usando un nombre de dominio fijo.