Servidor Pi-hole en homelab doméstico con dashboard de tráfico de red

Bloqueo de publicidad y privacidad en toda tu red: Guía completa de Pi-hole

¿Alguna vez te has fijado en la cantidad silenciosa de peticiones de telemetría, rastreadores y anuncios que realizan los dispositivos conectados en tu hogar? Desde tu Smart TV transmitiendo hábitos de consumo hasta aplicaciones móviles y navegadores que cargan megabytes de scripts publicitarios antes de mostrar el contenido real.

Aunque extensiones de navegador como uBlock Origin son excelentes, tienen una limitación fundamental: solo protegen el navegador donde están instaladas. No protegen la aplicación de YouTube en la tele, los juegos móviles de tus hijos, los dispositivos IoT ni las aplicaciones nativas de escritorio.

Aquí es donde entra en juego Pi-hole: un sumidero DNS (DNS sinkhole) a nivel de red que intercepta las peticiones de todos tus dispositivos y desecha las conexiones hacia servidores de publicidad y rastreo antes de que se descarguen.

En esta guía veremos cómo desplegar Pi-hole en cualquier hardware que tengas disponible, cómo instalarlo paso a paso (vía script directo o con Docker), cómo integrarlo con tu router doméstico (incluso si tu operadora te tiene bloqueadas las opciones de red) y los ajustes esenciales para sacarle el máximo partido.

1. ¿Cómo funciona Pi-hole exactamente? (Y sus limitaciones reales)

Cada vez que un dispositivo de tu red quiere conectarse a internet (por ejemplo, servidor.com), primero le pregunta a un servidor DNS: “¿Cuál es la dirección IP de este dominio?”.

[ Dispositivo ] ──> ¿IP de tracker.ads.com? ──> [ Pi-hole ]
                                                     │
               ¿Está en la lista de bloqueo?        │
               ├── SI ──> Devuelve 0.0.0.0 (Bloqueado)
               └── NO ──> Consulta a DNS upstream (1.1.1.1) y responde con la IP real

Si el dominio solicitado está en las listas negras de Pi-hole, responde con 0.0.0.0. El dispositivo asume que el servidor no existe y ni siquiera descarga el banner publicitario ni envía tus datos de telemetría. Esto no solo aporta privacidad y limpieza, sino que acelera la navegación y ahorra ancho de banda.

⚠️ La pregunta del millón: ¿Bloquea anuncios en YouTube y Twitch?
Respuesta corta: No de forma fiable a nivel DNS. Plataformas como YouTube o Instagram sirven los anuncios publicitarios desde los mismos servidores y nombres de dominio desde los que sirven los vídeos reales. Si Pi-hole bloqueara los dominios de anuncios de YouTube, rompería la reproducción del vídeo completo. Para YouTube en PC, la mejor combinación sigue siendo Pi-hole a nivel de red + extensión local de navegador.

2. Hardware recomendado: Cualquier cosa sirve

El nombre hace referencia a la Raspberry Pi, pero Pi-hole consume tan pocos recursos (suele requerir menos de 100 MB de RAM y menos del 2% de CPU) que puedes ejecutarlo prácticamente en cualquier entorno:

  • Raspberry Pi (Zero 2W, 3B, 4, 5): La opción clásica. Muy bajo consumo eléctrico (2-4W). Funciona perfectamente sobre Raspberry Pi OS Lite (64-bit).
  • Mini PC o PC de oficina reacondicionado (ThinkCentre Tiny, Dell OptiPlex Micro, HP ProDesk): Si ya tienes un homelab o un servidor casero con Ubuntu Server o Debian.
  • Máquina Virtual (VM) o Contenedor LXC en Proxmox VE: Si usas Proxmox, un contenedor LXC basado en Debian con 512 MB de RAM y 1 núcleo es la opción más limpia y eficiente.
  • Portátil viejo con la pantalla rota: Si quieres darle una segunda vida a hardware que ya no utilizas.

⚠️ Recomendación de oro: Conecta el dispositivo por cable Ethernet a tu router en lugar de Wi-Fi si es posible. El DNS es el servicio más crítico de tu red; si la conexión Wi-Fi tiene microcortes, tu navegación se resentirá.

3. Preparación: Asignar una IP estática

Antes de instalar nada, tu servidor debe tener una dirección IP fija para que el router y el resto de dispositivos siempre sepan dónde encontrarlo.

Puedes reservarla mediante DHCP Reservation en tu router, o configurarla estáticamente en tu sistema Linux editando la configuración de red.

  • IP del Pi-hole: 192.168.1.50
  • Puerta de enlace (Router): 192.168.1.1

4. Método de instalación: Elige tu camino

Opción A: Instalación nativa con el script oficial (Rápido y directo)

Ideal si dedicas el dispositivo exclusivamente a Pi-hole o estás en un contenedor LXC en Proxmox:

# 1. Actualizar el sistema
sudo apt update && sudo apt upgrade -y
sudo apt install curl -y

# 2. Ejecutar instalador guiado oficial
curl -sSL https://install.pi-hole.net | bash

El instalador abrirá una interfaz azul en terminal. Confirma tu interfaz de red, selecciona tu DNS upstream (Cloudflare 1.1.1.1 o Quad9 9.9.9.9) e instala la interfaz web. Al finalizar, personaliza tu contraseña con:

sudo pihole -a -p

Opción B: Despliegue con Docker y Docker Compose (Moderno y portable)

Ideal si ya tienes una máquina donde corren otros servicios o prefieres mantener tus aplicaciones aisladas en contenedores:

services:
  pihole:
    container_name: pihole
    image: pihole/pihole:latest
    ports:
      - "53:53/tcp"
      - "53:53/udp"
      - "67:67/udp" # Solo necesario si vas a usar Pi-hole como servidor DHCP
      - "80:80/tcp" # O cambia a "8080:80/tcp" si el puerto 80 ya está ocupado
    environment:
      TZ: 'America/Caracas'
      WEBPASSWORD: 'TuPasswordSeguraAqui'
      FTLCONF_LOCAL_IPV4: '192.168.1.50'
      PIHOLE_DNS_: '1.1.1.1;1.0.0.1'
    volumes:
      - './etc-pihole:/etc/pihole'
      - './etc-dnsmasq.d:/etc/dnsmasq.d'
    restart: unless-stopped

Levanta el contenedor con docker compose up -d y accede a tu panel en http://192.168.1.50/admin.

5. Conectando Pi-hole a tu Red Doméstica

Tener Pi-hole funcionando no sirve de nada si tus dispositivos no le envían las peticiones DNS. Aquí tenemos dos caminos según la libertad que te dé el router de tu proveedor de internet (ISP):

Escenario A: Configuración estándar en el Router (El método recomendado)

Si tu router te permite editar la configuración del servidor DHCP:

  1. Entra a la web de tu router (habitualmente http://192.168.1.1).
  2. Ve a los ajustes de LAN o DHCP Server.
  3. Busca el campo DNS Primario y pon la IP de tu Pi-hole: 192.168.1.50.
  4. En DNS Secundario: ¡Déjalo vacío o pon la misma IP del Pi-hole! Si pones Google (8.8.8.8) como secundario, la mitad de las peticiones se saltarán el filtro.
  5. Guarda los cambios y reconecta tus equipos.

Escenario B: Plan de contingencia cuando el router del ISP está “capado”

Muchos routers de operadora bloquean la modificación de los servidores DNS. En ese caso, la solución más limpia es pasar el rol de servidor DHCP a Pi-hole:

  1. En el panel de administración de Pi-hole, ve a Settings > DHCP y marca DHCP server enabled.
  2. Define el rango de IPs a repartir (ej. 192.168.1.100 a 192.168.1.200) y la puerta de enlace (192.168.1.1).
  3. Entra a la administración de tu router y desactiva por completo el servidor DHCP.
  4. A partir de ahora, Pi-hole entregará las IPs y configurará automáticamente el DNS correcto a todos tus dispositivos.

Ojo con IPv6: Si tu router asigna DNS IPv6 automáticamente, desactívalo o introduce la IPv6 estática de tu Pi-hole en los campos DNSv6 del router para evitar fugas.

6. Configuración Pro: Listas de bloqueo y DNS local

  • Añadir mejores listas de bloqueo: Agrega las listas marcadas en verde de The Firebog o la lista integral de OISD para una cobertura masiva sin romper páginas bancarias ni ecommerce.
  • Registros DNS locales (.lan o .home): En Local DNS > DNS Records asigna nombres amigables a tus máquinas locales (ejemplo: nas.lan hacia 192.168.1.20).
  • Gestión de excepciones (Whitelist): En caso de falsos positivos con links de afiliados o newsletters, puedes permitir el dominio al instante desde el Query Log con un solo clic.

Resumen y próximos pasos

Montar Pi-hole es uno de los proyectos introductorios más satisfactorios para cualquier aficionado a la tecnología y el self-hosting. Obtienes una mejora inmediata de privacidad en cada rincón de tu casa (Smart TVs, móviles, consolas) y visibilidad total de tu red.

El siguiente salto natural es añadir Unbound como servidor DNS recursivo local (para no depender de ningún proveedor externo) y enlazarlo con una VPN como WireGuard o Tailscale para llevarte la protección de Pi-hole a tu smartphone cuando estés fuera de casa.


Posted

in

,

by

Tags:

Comments

Leave a Reply

Your email address will not be published. Required fields are marked *