¿Cómo Instalar y Utilizar No-IP en Raspberry Pi?

Si hace clic en nuestros enlaces y realiza una compra, es posible que recibamos una comisión.. Más información

Si, como yo, tu conexión a Internet no tiene una dirección IP pública estática, o si quieres un dominio fácil de recordar para acceder (o compartir) tus servicios, este artículo es para ti. Usando No-IP y una Raspberry Pi, podemos asociar un nombre de dominio con nuestra dirección IP actual (y mantenerlo actualizado cuando cambia). Aquí te explico cómo.

No-IP proporciona los archivos fuente para su cliente para dispositivos Linux, que se pueden compilar en una Raspberry Pi. Después de instalar y vincular el cliente a una cuenta válida, mantendrá el nombre de host gratuito asociado con la dirección IP actual.

En este tutorial, te guiaré paso a paso. Te explicaré exactamente qué es No-IP, cómo instalarlo y cómo configurar la Raspberry Pi y tu red para que funcione.

Si estás empezando con Raspberry Pi o Linux, tengo algo que puede ayudarte de inmediato.
Descarga mi hoja de trucos de comandos Linux gratis – es una guía de referencia rápida con todos los comandos esenciales que necesitas para avanzar con tu Raspberry Pi. Haz clic aquí para obtenerla gratis!

¿Qué es No-IP?

Presentación

Si estás aquí, probablemente ya sepas qué es No-IP y lo que hace, así que seré breve.
No-IP es un proveedor de servicios de DNS dinámico. La idea es vincular un nombre de dominio (o un subdominio en el plan gratuito) a tu dirección IP.

Es particularmente útil si tu dirección IP pública cambia regularmente. Te permite acceder a tu servidor doméstico desde cualquier lugar, incluso si no tienes una dirección IP estática.

Pero si alojas algunos servicios (servidor web, en inglés, servidor de Minecraft, etc.), es más fácil compartir un nombre de dominio que una dirección IP.

Planes de Precios

No-IP ofrece dos servicios diferentes, con distintos precios:

  • Un plan gratuito: Probablemente el que te interese. Es perfecto para alojar un servicio básico como un sitio web (en inglés), acceso por SSH, compartir por Samba o servidor FTP.
    Puedes elegir un subdominio (por ejemplo: raspberrytips.hopto.org) y vincularlo a tu dirección IP para que puedas usar este subdominio y acceder remotamente al servicio.
  • Un plan mejorado: Es un servicio de pago, pero puedes definir varios nombres de host (más de 20 creo), tener más opciones para los nombres de dominio, y además sin anuncios y sin necesidad de confirmación cada 30 días.
    Con el plan gratuito, tienes que iniciar sesión cada 30 días para reactivar el nombre de host.

También hay un plan avanzado, donde puedes usar tu nombre de dominio, con todas las características.
Por ejemplo, sé que algunos de ustedes intentaron el plan gratuito de No-IP para alojar un servidor de correo. No es posible, ya que no puedes cambiar la opción MX en la configuración DNS en un plan gratuito.

Empieza con el servicio DDNS gratuito, y siempre puedes ver más tarde si necesitas más opciones para hacer lo que quieras.

¿Cómo funciona?

No-IP funciona ofreciéndote un subdominio gratuito, y siempre redirigiéndolo a tu dirección IP pública, incluso cuando cambia.

Gracias a este proveedor, ahora puedes alojar cualquier servicio que quieras en casa (en tu Raspberry Pi o no).
Si necesitas un visual para entender, aquí está cómo funciona:

El cliente remoto puede estar en cualquier parte del mundo y acceder al nombre de host creado en No-IP (veremos cómo crear uno justo después de eso).
Tu router en casa redirigirá el tráfico a la Raspberry Pi, u otro anfitrión en la red, dependiendo de lo que quieras hacer.

Para configurar todo, hay 3 pasos principales que explicaré en este tutorial:

  1. Crear tu cuenta y elegir un nombre de host.
  2. Descargar e instalar el cliente de No-IP en tu Raspberry Pi.
  3. Configurar el reenvío de puertos en tu router, para redirigir cualquier acceso a tu anfitrión.

Puedes que te cueste entender todo en tu primera lectura. Si aún no está claro, deja un comentario en la comunidad, e intentaré explicarlo de otra manera.

Crear una cuenta

Cualquiera que sea tu objetivo, el primer paso es crear una cuenta y elegir un nombre de host en NoIP.com:

  • Ir al sitio web de No-IP.
  • Hacer clic en “Sign Up” en el menú superior.
  • Rellenar el formulario con tu dirección de correo electrónico y contraseña:

    Puede que obtengas una advertencia si estás usando caracteres especiales en tu contraseña:
    “Dynamic DNS enabled devices, such as routers, cameras, or DVRs, often do not allow special characters and limit password length for Dynamic DNS passwords”. (Los dispositivos con DNS dinámico, como routers, cámaras o DVR, no suelen permitir caracteres especiales y limitan la longitud de las contraseñas de DNS dinámico.)
    Tengo unos cuantos, y funciona bien en Raspberry Pi, así que mantén tu contraseña segura.
  • Marcar la casilla para aceptar los términos del servicio y hacer clic en “Free Sign Up” para crear tu cuenta.
  • Luego, tendrás que confirmar tu dirección de correo electrónico, haciendo clic en el correo:
  • Hacer clic en “Confirm Account”.
    En la página de confirmación, tendrás que responder algunas preguntas, como cómo planeas usar No-IP y si deseas un plan de pago o no.
    Puedes hacer clic en “Personal”, luego “Remote access” y “Free plan” para saltar rápidamente estas preguntas.

Crear un Nombre de Host

Una vez que la cuenta esté creada, serás redirigido a una página para crear tu nombre de host, se ve así:

Rellenar el formulario con el nombre de dominio que te gustaría usar. Puede que tengas que probar algunos para encontrar uno libre. Puedes mantener los valores predeterminados en los otros campos (la dirección IP no importa en este punto).

Necesitamos instalar el cliente para sincronizar tu dirección IP y mantener este nombre de host accesible incluso cuando nuestra dirección IP pública cambie.

Hay varias opciones disponibles. Puedes instalarlo en tu PC o en algún router (generalmente uso este método). Pero hoy veremos cómo instalarlo en una Raspberry Pi. Vamos a hacerlo ahora.

Espera, ¡tengo algunas recomendaciones para ti!

Antes de continuar, te invito a descubrir algunos productos que he seleccionado cuidadosamente para ti. Creo que son esenciales para tu Raspberry Pi. Échales un vistazo y pídelos directamente en Amazon.

Una caja silenciosa y práctica Un SSD de alto rendimiento para potenciar tu Pi Una pantalla genial para liberar el televisor Un teclado dedicado con touchpad

Guía de Instalación de No-IP en Raspberry Pi

Obtiene mi hoja de trucos de comandos
Obtiene su archivo PDF gratuito con todos los comandos que necesitas saber sobre Raspberry Pi.
Descargar

Instalar y Configurar Raspberry Pi OS

Usé un Raspberry Pi OS mientras probaba este tutorial para ti. Asi que no debería cambiar mucho si estás en otra distribución de Linux, pero quiero que lo sepas para que puedas intentar obtener los mismos resultados.

Empieza instalando Raspberry Pi OS en tu dispositivo.
Tengo un tutorial dedicado explicandote cómo hacer esto correctamente, así que no te lo repetiré aquí. Si necesitas ayuda en algún momento, asegúrate de ver este artículo aquí. También puedes usar una configuración existente de Raspberry Pi si lo prefieres.

Después de la instalación básica, necesitas establecer una contraseña fuerte (en inglés) (especialmente si planeas reenviar el puerto SSH), pero en cualquier caso, es una buena práctica.

Luego, actualiza tu sistema para asegurarte de que no haya ninguna brecha de seguridad abierta:
sudo apt update
sudo apt upgrade

También puedes necesitar instalar el servicio que quieres compartir en Internet con No-IP.
En este tutorial, haré mis pruebas con Apache, así que:
sudo apt install apache2
Más detalles aquí sobre cómo instalar un servidor web en Raspberry Pi.

Descargar & Instalar No-IP en Raspberry Pi

¡Veamos cómo instalar el cliente No-IP en Raspberry Pi!

Estoy en Raspberry Pi OS Lite, si estás en el mismo caso, necesitas conectarte vía SSH (más detalles aquí). En Raspberry Pi OS con Desktop, puedes usar el terminal directamente.

De cualquier manera, aquí está el procedimiento para instalarlo:

  • Necesitas elegir una carpeta para descargar y compilar No-IP.
    Estoy haciendo esto en mi carpeta home, pero no importa (puedes eliminarla después de la instalación).
    cd ~
    mkdir noip
    cd noip

  • Descargar el archivo con:
    wget https://www.noip.com/client/linux/noip-duc-linux.tar.gz
    Aprende más sobre el comando wget (en inglés) aquí.
  • Extraer los archivos:
    tar zxvf noip-duc-linux.tar.gz
    Si no estás familiarizado con el comando tar (en inglés), haz clic en el enlace para aprender todo sobre él.
  • Entrar en la nueva carpeta creada:
    cd noip-2.1.9-1
    El número de versión en el nombre de la carpeta puede cambiar, así que asegúrate de usar el correspondiente a tus archivos extraídos.
    Consejo: “cd noip” + TAB completará automáticamente el comando.
  • Una vez en esta carpeta, usar los siguientes comandos para compilar e instalar No-IP:
    sudo make
    sudo make install

Se instaló rápidamente en mi Raspberry Pi, así que debería estar listo en unos segundos, sea cual sea tu dispositivo. Durante la instalación, se te harán algunas preguntas para configurar el servicio.

necesitas ingresar tu dirección de correo electrónico y contraseña para vincular tu dispositivo con tu cuenta, pero también la frecuencia de actualización (con qué frecuencia el cliente actualizará tu dirección IP en No-IP).
Se ve así:

Si no funciona, asegúrate de haber configurado un nombre de usuario y una pregunta de seguridad en tu cuenta de No-IP. La última vez que probé, esto era un requisito para usar el cliente en la Raspberry Pi.

Nota: Te doy la versión corta en este tutorial, pero si necesitas más detalles sobre instalar un archivo tar.gz en Ubuntu (en inglés) (u otros formatos de archivos), es probablemente mejor que hagas clic en este enlace para más orientación.

Por cierto, el intervalo de actualización se establece en minutos. No lo he probado, pero creo que puedes configurarlo para ejecutar algo en cada actualización de IP (un script, supongo, puede ser útil si necesitas actualizar algo en tu servicio alojado cada vez que la dirección IP pública cambia).

Una vez completado, tu dirección IP debería actualizarse en el sitio web, y el segundo paso está hecho, bien hecho. Si tu objetivo era vincular un nombre de dominio a tu dirección IP, felicidades, está hecho.

Por ejemplo, estoy usando esto para permitir mi dirección IP en algunas páginas de administración web. Como no tengo una dirección IP estática, no puedo filtrar el acceso basado en mi IP actual, pero puedo usar mi nombre de host para hacer lo mismo.

Supongo que la mayoría de la gente deseará alojar un servicio en su Raspberry Pi. ¡Así que, necesitas revisar la última parte de este tutorial!

Obtiene mi hoja de trucos de comandos
Obtiene su archivo PDF gratuito con todos los comandos que necesitas saber sobre Raspberry Pi.
Descargar

Consejos Adicionales

Obtiene mi hoja de trucos de comandos
Obtiene su archivo PDF gratuito con todos los comandos que necesitas saber sobre Raspberry Pi.
Descargar

Después de usarlo por unas pocas horas, noté varios problemas con el cliente No-IP en Raspberry Pi.
En esta parte, te mostraré cómo solucionarlos, e introducir la configuración de reenvío de puertos.

Editar la configuración de No-IP

Cuando instalas No-IP, puedes elegir algunas cosas en el asistente, pero si algo no funciona o quieres cambiar algo, no puedes ejecutar “make install” de nuevo.

Entonces, si necesitas actualizar algo (tu contraseña o el intervalo de actualización, por ejemplo), aquí tienes algunos comandos que puedes usar.

El comando principal es:
sudo noip2 <option>

Luego, las siguientes opciones están disponibles:

  • -C: crear una nueva configuración (necesitas detener No-IP antes de hacer esto).
  • -c <path>: usar otro archivo de configuración.
  • -S: mostrar la configuración actual.
  • -U <minutes>: cambiar el intervalo de actualización.
  • -u <username> -p <password> : actualizar tus credenciales de cuenta.
  • -i <IP>: forzar una dirección IP específica.
  • -I <interface> : si tienes Wi-Fi y Ethernet habilitados por ejemplo, puedes especificar cuál interfaz usar.
  • -h: mostrar todas las opciones (ayuda).

Por ejemplo, quería cambiar el intervalo de actualización para mis pruebas, para ver si funciona correctamente cuando cambio de una conexión a otra.

Así que, he hecho esto:
sudo noip2 -U 5
Cinco es el mínimo que puedes elegir, el predeterminado es 30 minutos.

Auto-Start No-IP on Boot

Después de mi reinicio, noté que la dirección IP ya no se actualiza.
El cliente No-IP no se inicia automáticamente al arrancar.

Hay muchas maneras de arreglar esto (revisa este tutorial para ver cómo hacerlo con 4 métodos diferentes).
Pero elegí el más fácil:

  • Abrir tu configuración de crontab:
    sudo crontab -e
  • Pegar esta línea en ella:
    @reboot /usr/local/bin/noip2

Eso es todo, No-IP ahora se iniciará automáticamente al arrancar.

Activar el Reenvío de Puertos con No-IP

El último paso es configurar tu router o firewall para redirigir un puerto al servicio de tu Raspberry Pi.

Por ahora, tu dirección IP se actualiza regularmente en la configuración del nombre de dominio, pero no puedes acceder a ningún servicio en el Raspberry Pi. Necesitas configurar el reenvío de puertos en tu router de Internet para permitir esto.

La configuración dependerá mucho de tu proveedor y del router que tengas.
Así que, ahora te mostraré cómo funciona en mi caso, pero probablemente no tengas el mismo hardware (al menos que estés en Francia con el mismo proveedor ^^).

  • Conéctate a la dirección IP de tu router con un navegador web.
    La dirección IP depende de tu proveedor, probablemente puedas encontrarla mirando tu gateway si no la sabes.
    En Raspberry Pi (o cualquier sistema Linux), la obtendrás con:
    route -n
    Por ejemplo:

    Así que en mi caso, abro http://192.168.222.1
  • Luego, asegúrate de usar una dirección IP estática en tu Raspberry Pi.
    Hay dos maneras de hacerlo:
    • Puedes asignar la dirección IP a tu router.
      En mi caso, está en Advanced Settings > DHCP:

      Haciendo esto, mi dirección IP local siempre será la misma (pero obviamente no la IP pública).
    • O, puedes configurar directamente en el Raspberry Pi, aquí tengo un tutorial sobre esto.
  • Una vez hecho esto, el último paso es redirigir un puerto externo a tu dispositivo local y puerto.
    En mi caso, quiero permitir el acceso remoto a Apache.
    Así que necesito redirigir cualquier puerto al puerto 80 de mi Raspberry Pi.
    Puedo hacer esto en Advanced Settings > NAT.
    Se ve así:

Ahora puedo acceder a mi nombre de dominio: http://raspberrytips.hopto.org:1982 y debería redirigirme a la página predeterminada de Apache.
Probé esto desde mi teléfono, desconectado de mi Wi-Fi (no funciona si estás en la misma red), y sí, ¡funciona!

Espero que hayas encontrado dónde se puede hacer la configuración en tu router específico.
Si necesitas ayuda, asegúrate de revisar el sitio web de tu proveedor, ya que generalmente tienen documentación para hacer esto, por ejemplo:

Obtiene mi hoja de trucos de comandos
Obtiene su archivo PDF gratuito con todos los comandos que necesitas saber sobre Raspberry Pi.
Descargar

Conclusión

Eso es todo, ahora sabes cómo instalar No-IP en una Raspberry Pi, pero especialmente cómo configurarlo para que funcione como tú quieras. Espero que este tutorial te haya sido útil y te permita comenzar o mejorar proyectos.

Por cierto, si quieres alojar algunos servicios en casa, pero no para todo el mundo, la otra opción es instalar un servidor VPN en tu Raspberry Pi (haz clic en el enlace para aprender cómo hacerlo fácilmente). Será más seguro que abrir un puerto en la web.

También puedes revisar este post con algunos consejos para mejorar el nivel de seguridad en tu Raspberry Pi.

Como este tema puede ser un poco complicado para ti, sientete libre de comentar in the community si necesitas más ayuda. Trataré de ayudarte lo mejor que pueda.

Cuando estés preparado, aquí tienes un atajo para ti:

Domina tu Raspberry Pi en 30 días: Si buscas los mejores consejos para convertirte en un experto en Raspberry Pi, este libro es para ti. Aprende habilidades útiles de Linux y practica múltiples proyectos con guías paso a paso.

Publicaciones Similares