El blog de dinahosting
  • Inicio
  • Novedades
  • Contenidos Técnicos
    • Marketing
    • Seguridad
    • WordPress
    • Prestashop
  • Eventos
  • Equipo DH
  • Clientes

El blog de dinahosting

  • Inicio
  • Novedades
  • Contenidos Técnicos
    • Marketing
    • Seguridad
    • WordPress
    • Prestashop
  • Eventos
  • Equipo DH
  • Clientes
#HalloweenDH

Suscríbete a nuestra newsletter

Recibe quincenalmente consejos muy útiles para tu web y ecommerce. Además con tu alta te regalamos 2 guías: una de iniciación a WordPress y otra con recursos de marketing.

Newsletter
Logo Raspberry

Sustituir DynDNS con una Raspberry y dinaIP

escrito por Comunicación Dinahosting agosto 1, 2014

Tras recibir un correo de Dyn en el que me anuncia que próximamente finaliza el servicio de DNS dinámica gratuito, me he puesto manos a la obra y he sustituido esta función utilizando la aplicación dinaIP de Dinahosting.
Aquí os dejo el minitutorial de cómo reemplazar nuestro servicio de DNS dinámico con la aplicación dinaIP y una Raspberry Pi por si a alguien le resulta útil.

Índice de contenidos

  • 1 ¿Qué necesitamos?
  • 2 ¿Cómo?
  • 3 Un poco de magia con init.d y update-rc.d
  • 4 Configurar la rotación automática de logs

¿Qué necesitamos?

  • Raspberry Pi (si no la tenemos, bastaría con el modelo A, más económico pero con menos RAM)
  • Una tarjeta SD (rápida y de al menos 2GB, aunque te recomiendo que sea mínimo de 4) con Raspbian instalada (un tutorial)
  • La aplicación de dinaIP que podemos descargar en Dinahosting
  • Un nombre de dominio

¿Cómo?

Accedemos por SSH a nuestra raspberry y nos hacemos root:

pi@raspberry ~ $ sudo su -
[sudo] password for pi:
root@raspberry:~#

Descargamos la aplicación de dinaIP para consola y descomprimios el fichero resultante de la descarga:

root@raspberry:~# wget https://dinahosting.com/utilidades/estandar/aplicaciones/dinaIP-consola.tar.gz&& tar xzpf dinaIP-consola.tar.gz

Nos situamos en la carpeta descomprimida y ejecutamos el instalador

root@raspberry:~# cd dinaIP-consola/
root@raspberry:~/dinaIP-consola# sh install.sh
root@raspberry:

Iniciamos el demonio de dinaIP de forma manual, con nuestro usuario y contraseña de acceso a los paneles:

root@raspberry:~# dinaip -u mi_usuario_molon -p ******

Añadimos nuestro dominio y la zona que queremos utilizar con dinaIP:

root@raspberry:~# dinaip -a example.com:example1

Con esto habremos iniciado el demonio de dinaIP que mantendrá nuestra IP dinámica actualizada en example1.example.com, pero tendremos que lanzarlo de forma manual cada vez que reiniciemos nuestra Raspberry, lo que nos lleva al siguiente punto…

Un poco de magia con init.d y update-rc.d

Para evitar tenemos que lanzar de forma manual cada vez que reiniciemos nuestra Raspberry vamos a hacer que el servicio se inicie de forma automática en cada arranque.

Empezaremos creando un fichero «/etc/init.d/dinaip» con el contenido que podemos ver en este gist (recordad configurar vuestra ID y contraseña) y le daremos permisos de ejecución:

root@raspberry:~# chmod +x /etc/init.d/dinaip

Ahora ya podemos arrancar y detener el servicio con el comando service, pero sigue sin iniciarse de forma automática, para esto tendremos que ejecutar estos 2 comandos (como root):

root@raspberry:~# update-rc.d dinaip defaults
root@raspberry:~# update-rc.d dinaip enable

Y listo, ya tenemos nuestro servicio de DNS dinámico funcionando y arrancando de forma automatica en cada inicio.

Configurar la rotación automática de logs

Como los log de dinaIP son bastante detallados y el espacio de mi SD es limitado, ha sido necesario buscar la forma de rotar estos logs, de forma fácil, rápida y que no haga fallar la escritura los mismos…

Por suerte, Raspbian (como Debian y la mayoría de distribuciones Linux) cuenta con logrotate, que nos permite configurar la rotación automática de los ficheros de log.

Creando un fichero de configuración para logrotate

Configurar logrotate es muy fácil, basta con crear un fichero de configuración dentro del directorio «/etc/logrotate.d/’, llamado, por ejemplo dinaip. Yo lo he configurado con las siguientes opciones:

– Conservar logs de los últimos 7 días
– Rotación diaria
– Copiar y truncar el fichero actual
– Comprimir el log antiguo
– Pasar al siguiente fichero si la rotación falla
– No rotar si está en blanco

Puedes consultar el contenido del fichero de configuración aquí

Con esto solucionamos los posibles problemas de espacio si el log crece demasiado, de modo que ahora no tenemos que preocuparnos por el tamaño del mismo.

Listo! Nuestro servicio de DNS dinámico, arrancando en cada inicio y sin problemas de espacio está funcionando.

Victor Rodríguez Domínguez

9 comentarios
0
Facebook Twitter Google + Pinterest

9 comentarios

Jose junio 5, 2015 - 4:21 pm

Hola buenas

Al intentar logarme con la cuenta me marca este error

Can’t locate LWP/Simple.pm in @INC (@INC contains: /etc/perl /usr/local/lib/perl/5.14.2 /usr/local/share/perl/5.14.2 /usr/lib/perl5 /usr/share/perl5 /usr/lib/perl/5.14 /usr/share/perl/5.14 /usr/local/lib/site_perl . /opt/dinaip) at /opt/dinaip/Proceso.pm line 12.
BEGIN failed–compilation aborted at /opt/dinaip/Proceso.pm line 12.
Compilation failed in require at /usr/sbin/dinaip line 15.
BEGIN failed–compilation aborted at /usr/sbin/dinaip line 15.

No se si me podeis echar un cable! un saludo

Reply
guille octubre 2, 2015 - 1:30 am

Y para configurarlo sobre systemd? Llevo un rato tratando de arrancarlo y de momento nada

Reply
prios octubre 2, 2015 - 10:22 am

Hola Jose,

dinaIP en consola necesita la librería LWP::Simple. En distribuciones
basadas en debian está incluido en el paquete libwww-perl, que se puede
instalar con uno de los siguientes comandos:
-> apt-get install libwww-perl
-> aptitude install libwww-perl
Estos comandos han de ejecutarse como root o con un usuario que pueda hacer sudo. Por ejemplo, con el usuario pi en raspbian (usuario por defecto) se instalaría con cualquiera de los siguientes comandos:
-> sudo apt-get install libwww-perl
-> sudo aptitude install libwww-perl

Reply
prios octubre 2, 2015 - 11:10 am

Hola Guille

Para crear el script de inicio a través de system.d (en este caso solo tiene opciones para iniciar y detener el servicio)

  • Creamos, en /etc/systemd/system/, un fichero dinaip.service como el que
    se muestra en este gist (con nuestro usuario y clave): https://gist.github.com/vrdominguez/bc13a3859dfd2243f9ce
  • Le damos permisos de ejecucion: chmod +x /etc/systemd/system/dinaip.service
  • Ejecutamos, como root, los siguientes comandos:

systemctl daemon-reload
systemctl enable dinaip.service

Listo,
ya podemos gestinoar dinaip con systemctl y se auto-inicia al iniciar
la máquina.

Reply
Carlos diciembre 23, 2017 - 8:55 am

¿Alguien intentó configurar dinaIP en un router cisco?

Reply
Lucía González diciembre 27, 2017 - 7:55 am

Hola Carlos, ¿nos puedes indicar con qué problemas te encuentras en la configuración?
Llámanos o facilítanos un método de contacto y te echamos un cable en lo que necesites.

Un saludo 🙂

Reply
Ivan marzo 23, 2018 - 11:14 am

Mil millones de gracias. Al cambiar de router he tenido que volver a configurar precisamente esto y lo he tenido listo en dos minutos. He aprovechado para instalarlo en mi raspberry pi con pi-hole.

Sugerencia: Este tutorial es de 2014, podriais actualizarlo con lo que hay en los comentarios para los mas novatos.

Reply
Lucía González marzo 26, 2018 - 5:16 am

Hola Iván,
Muchas gracias por leernos. Tomamos buena nota de tu sugerencia 🙂
Que tengas un buen día.

Reply
Lucía González abril 3, 2018 - 9:46 am

Hola Iván,
Tal y como nos has sugerido, hemos actualizado el tutorial 🙂 Aquí lo tienes https://blog.dinahosting.com/raspberry-pi-dinaip-tutorial-actualizado/
Esperamos que te sea de utilidad.
Saludos 😉

Reply

Deja un comentario Cancelar respuesta

*

code

Puedes revocar tu consentimiento, así como otros derechos, tal y como se describe en la información adicional

Información básica sobre protección de datos

Responsable
Dinahosting S.L.  [+ info]
Finalidad y legitimación
Tratamos los datos que nos proporcionas con la finalidad de gestionar tu comentario, incluida su publicación en nuestro blog. Al enviarnos tu comentario o sugerencia nos das tu consentimiento explícito para que tratemos tus datos con esta finalidad  [+ info]
Destinatarios
Publicamos los comentarios que nos envías en el blog. Enviar un comentario en nuestro blog implica la publicación en el blog del ‘nombre’ y, en su caso, el ‘avatar’ que utilices al dejar el comentario  [+ info]
Derechos
Puedes revocar tu consentimiento, así como otros derechos, tal y como se describe en la información adicional  [+ info]
Información adicional
Para más información, consulta nuestra Política de Privacidad

En dinahosting

Promotion Image

Dominios

Promotion Image

Hosting SSD NVMe

Promotion Image

VPS

Suscríbete a nuestra newsletter

Promotion Image Newsletter

Newsletter

Recibe quincenalmente consejos muy útiles para tu web y ecommerce. Además con tu alta te regalamos 2 guías: una de iniciación a WordPress y otra con recursos de marketing.

INFORMACIÓN BÁSICA SOBRE PROTECCIÓN DE DATOS

Responsable
Dinahosting SL. [+ info]
Finalidad y legitimación
Trataremos tus datos con la finalidad de enviarte el boletín electrónico informándote sobre los contenidos del blog. Estamos legitimados para tratarlos porque te has suscrito a nuestra newsletter.[+ info]
Personas destinatarias
No comunicaremos tus datos a terceros, salvo obligación legal.[+info]
Derechos
Puedes revocar tu consentimiento, modificando tu perfil tal y como se describe en el correo electrónico de suscripción.[+ info]
Información adicional
Para más información, consulta nuestra Política de Privacidad.

Conviértete en afiliado

Gana dinero recomendando dinahosting a todo el mundo.
Hazte afiliado

¡Síguenos!

Facebook Twitter Instagram Linkedin Youtube
dinahosting
Facebook Twitter Instagram Linkedin Youtube

LLÁMANOS GRATIS

900 854 000


ESCRÍBENOS

soporte@dinahosting.com

En dinahosting

  • Hosting
  • Dominios

Área privada

  • Panel de administración
  • Webmail
  • Feedback
  • Protección de datos
  • Ayuda
  • 900 854 000
  • soporte@dinahosting.com

@2020 - Dinahosting

INFORMACIÓN BÁSICA SOBRE PROTECCIÓN DE DATOS

Responsable
Dinahosting SL  [+ info]
Finalidad y legitimación
Trataremos tus datos con la finalidad de enviarte el boletín electrónico informándote sobre los contenidos del blog. Estamos legitimados para tratarlos porque te has suscrito a nuestra newsletter  [+ info]
Personas destinatarias
No comunicaremos tus datos a terceros, salvo obligación legal  [+ info]
Derechos
Puedes revocar tu consentimiento, modificando tu perfil tal y como se describe en el correo electrónico de suscripción  [+ info]
Información adicional
Para más información, consulta nuestra Política de Privacidad