VPNSmith
VPS Contabo
self-host-vpn-headINFO

Tailscale Exit Node: listo en 20 minutos (¿y se pueden tener dos?)

Exit node funcionando en Ubuntu 24.04 en 20 minutos: IP forwarding, comandos CLI exactos, aprobación en la consola admin, clientes Mac/iOS/Android. ¿Varios a la vez? Sí, incluso con el plan gratuito.

Por Eric Gerard · Fundador · VPNSmith - Especialista en VPN self-host y VPS GDPR11 min de lecturaFoto: Kvistholt Photography - Unsplash

Esta guía monta un exit node Tailscale en un VPS pequeño, por ejemplo un Contabo Cloud VPS 4 o un Hetzner CX23 en Alemania: un túnel cifrado con WireGuard que controlas línea por línea. Da los comandos exactos, no un resumen de documentación ni capturas de pantalla borrosas. La latencia y el throughput dependen de tu ruta, así que la guía enseña a medirlos en lugar de citar cifras.

Si lo que necesitas es lo contrario, alcanzar los equipos de tu LAN desde fuera en lugar de enrutar todo tu tráfico a través de ella, es otra función: mira nuestra guía del subnet router de Tailscale.

Atajo: nuestro generador de exit node de Tailscale gratuito crea el script exacto para tu VPS a partir de unas pocas opciones (Tailscale o Headscale, clave de autenticación o URL de inicio de sesión, autoaprobación por etiqueta, ufw o firewalld) y da los comandos de aprobación y del cliente. Esta guía explica cada paso.

Qué es un exit node Tailscale y por qué es diferente a una VPN clásica

Un exit node Tailscale es un nodo de tu mesh Tailscale configurado para enrutar todo el tráfico de Internet de los demás nodos a través de su propia conexión. En la práctica: activas esta opción en tu VPS de Frankfurt, y todos tus dispositivos (portátil en París, iPhone, iPad) salen a Internet con la IP de ese VPS.

La diferencia con una VPN comercial como NordVPN es arquitectural:

  • VPN comercial: infraestructura compartida entre miles de usuarios. No controlas nada - ni el servidor, ni la política de logs, ni la configuración.
  • WireGuard desnudo self-host: túnel punto a punto entre cada cliente y el servidor. Excelente para un túnel, pero con 4 dispositivos gestionas manualmente 4 pares de claves.
  • Tailscale exit node: mesh WireGuard gestionado automáticamente. El plano de control Tailscale orquesta claves, NAT traversal y ACLs. Designas cualquier nodo como exit node con un comando - todos los demás lo usan sin reconfiguración.

¿Solo quieres aparecer desde otro país, sin mantener un servidor? Una VPN comercial lo hace sin configuración: Proton VPN (enlace de afiliado) tiene un plan gratuito, y sus planes de pago permiten elegir el país. El exit node es mejor opción cuando quieres una IP que sea tuya y acceso a tus propios dispositivos en la misma red.

El plano de datos es WireGuard puro - ninguna empresa ve tu tráfico payload. Solo Tailscale Inc. ve los metadatos de tu mesh (quién habla con quién, cuándo), documentado en su política de privacidad.

Para una comparativa exhaustiva de los enfoques de autoalojamiento, ver nuestro artículo mejor VPN auto-alojado 2026 y para el análisis en profundidad Tailscale vs WireGuard desnudo, Tailscale vs WireGuard self-host.

Si todavía dudas de si necesitas Tailscale, Tailscale vs WireGuard: lo que Tailscale añade, lo que quita compara WireGuard puro (claves, rutas y NAT gestionados por ti) con el plano de control gestionado de Tailscale.

Requisitos previos

Antes de empezar, necesitas:

  1. Una cuenta Tailscale - el plan gratuito incluye exit nodes, sin límite de número indicado. Regístrate en tailscale.com.
  2. Un servidor Linux - Ubuntu 24.04 LTS recomendado (soporte 5 años). También funciona en Mac o Raspberry Pi.
  3. Conexión estable >= 100 Mbps - para uso personal o familiar.
  4. IP pública dedicada - incluida en Contabo y OVH, 0,50 €/mes extra en Hetzner desde 2026.
  5. Acceso root o sudo en el servidor.

Esta guía asume Ubuntu 24.04 LTS. Los comandos son idénticos en Debian 12, ligeramente diferentes en CentOS/RHEL (dnf en lugar de apt).

Elegir la plataforma exit node

Racks de servidores iluminados en azul en un centro de datos
Racks de servidores iluminados en azul en un centro de datos

ProveedorPrecio (consultado el 18/10/2026)RedUbicaciónVeredicto
Contabo Cloud VPS 45,50 €/mes, IPv4 incluidapuerto de 200 Mbit/s, tráfico ilimitado (uso justo)Núremberg / NYC / Singapur / TokioMás RAM por euro (4 vCPU, 8 GB); mide el puerto con iperf3
Hetzner CX235,49 €/mes + 0,50 € de IPv4 desde la subida del 15 de junio de 202620 TB incl.Falkenstein / Núremberg / HelsinkiMuy buena red y consola, pero la gama CX compartida aparecía como «no disponible actualmente» el 18/10
OVH VPS-14,49 €/mes sin IVASin límite de tráficoGravelines / EstrasburgoBuena latencia hacia Francia
Plan gratuito de AWScréditos, cuenta limitada a 6 meses (cuentas creadas desde julio de 2025)tráfico de salida de pago al agotar los créditosCualquier regiónSirve para una prueba, no para un exit node permanente
Raspberry Pi 5 (doméstico)~0 € (solo hardware)Enlace ISPTu red domésticaIdeal para acceso LAN, pero la IP de casa suele ser dinámica o estar detrás de CGNAT

Una elección razonable por defecto: un VPS en el país desde el que quieres salir, más una Raspberry Pi 5 en casa si también quieres tu IP doméstica cuando viajas. Para el VPS, Hetzner era la opción habitual, hasta que sus subidas de 2026 dejaron el CX23 en 5,99 € con IPv4 por 4 GB de RAM; el Cloud VPS 4 de Contabo cuesta ahora más o menos lo mismo con 8 GB, suficiente para ejecutar Headscale u otros servicios en la misma máquina. La contrapartida: un puerto de 200 Mbit/s, donde Hetzner da más margen. El historial completo de precios está en nuestra comparativa Contabo vs Hetzner vs OVH.

Por qué un VPS y no el router de casa: un exit node en casa solo te da la IP de tu propio operador, y si tu línea está detrás de CGNAT cada conexión pasa por un relay. Un VPS en un centro de datos tiene una IPv4 pública fija, así que Tailscale consigue una ruta WireGuard directa desde casi cualquier sitio.

Nota sobre Contabo: la gama de entrada anuncia un puerto de 200 Mbit/s. Basta para la navegación y el streaming de una persona; para toda una familia con fibra, mídelo con iperf3 (sección Rendimiento más abajo) antes de confiar en él.

★ Datacenter Núremberg GDPR · ✓ IPv4 dedicada incluida · puerto de 200 Mbit/s

Tu propio exit node con IP pública fija → Contabo Cloud VPS 45,50 €/mes (consultado el 18/10/2026) · 4 vCPU, 8 GB de RAM · Ubuntu 24.04 listo para los pasos de abajo→

Instalación paso a paso en Ubuntu 24.04 LTS

1. Instalar Tailscale

Tailscale publica un instalador oficial a través de su repositorio APT:

# Añadir la clave GPG y el repositorio
curl -fsSL https://pkgs.tailscale.com/stable/ubuntu/noble.noarmor.gpg \
  | sudo tee /usr/share/keyrings/tailscale-archive-keyring.gpg >/dev/null

curl -fsSL https://pkgs.tailscale.com/stable/ubuntu/noble.tailscale-keyring.list \
  | sudo tee /etc/apt/sources.list.d/tailscale.list

# Instalar
sudo apt-get update
sudo apt-get install -y tailscale

# Verificar versión (junio 2026: v1.68+)
tailscale version

2. Habilitar el IP forwarding

Sin este paso, el nodo no puede enrutar el tráfico de los clientes hacia Internet. Es el equivalente del masquerade de WireGuard:

echo 'net.ipv4.ip_forward = 1' | sudo tee /etc/sysctl.d/99-tailscale.conf
echo 'net.ipv6.conf.all.forwarding = 1' | sudo tee -a /etc/sysctl.d/99-tailscale.conf
sudo sysctl -p /etc/sysctl.d/99-tailscale.conf

Verificación:

sysctl net.ipv4.ip_forward
# Debe devolver: net.ipv4.ip_forward = 1

3. Autenticar y anunciar el exit node

sudo tailscale up --advertise-exit-node

Tailscale muestra una URL en el terminal:

To authenticate, visit:
  https://login.tailscale.com/a/xxxxxxxxxxxxxxxx

Abre esta URL en tu navegador e inicia sesión con tu cuenta Tailscale. El nodo aparece en tu lista de máquinas.

Tip: para pre-autenticación sin interacción (scripts CI/CD), usa una auth key: sudo tailscale up --advertise-exit-node --authkey=tskey-auth-xxxxx.

4. Aprobar en la consola de administración

Por defecto, Tailscale requiere aprobación manual para los exit nodes (medida de seguridad). En login.tailscale.com/admin/machines:

  1. Encuentra tu nodo (ej: hetzner-cx23-fra)
  2. Haz clic en (...) → Edit route settings
  3. Marca Use as exit node
  4. Haz clic en Save

El nodo ya está disponible como exit node para todos los miembros de tu tailnet.

Alternativa: deshabilitar la aprobación manual globalmente en Admin → Settings → Disable exit node approval requirement. Conveniente para un tailnet personal en solitario.

5. Verificar el estado

tailscale status
# El nodo debe aparecer como "offers exit node"

sudo tailscale ping nombre-del-nodo
# Debe devolver un RTT

Configuración del cliente

macOS

  1. Instalar Tailscale desde el Mac App Store o brew install tailscale
  2. Lanzar Tailscale desde la barra de menús
  3. Iniciar sesión con la misma cuenta
  4. Clic en el icono Tailscale → Exit node → seleccionar tu nodo
  5. Verificar: curl ifconfig.me - la IP mostrada debe ser la del VPS

Acceso LAN: por defecto cuando un exit node está activo, el tráfico local (192.168.x.x) también pasa por el túnel. Para mantener acceso LAN directo: clic Tailscale → Allow LAN access.

Windows

  1. Descargar desde tailscale.com/download/windows
  2. Clic derecho icono systray → Exit node → seleccionar el nodo
  3. Confirmar la solicitud de elevación UAC

iOS y Android

  1. Instalar la app Tailscale desde App Store / Play Store
  2. Iniciar sesión en el tailnet
  3. Ir a Settings (iOS) o icono engranaje (Android) → Use exit node → seleccionar

En iOS, Tailscale se integra mediante Network Extension - no se necesita jailbreak. La conexión sobrevive a las transiciones WiFi/4G.

Linux CLI

# Seleccionar el exit node (por nombre o IP Tailscale)
sudo tailscale set --exit-node=hetzner-cx23-fra

# O por IP Tailscale (100.x.y.z)
sudo tailscale set --exit-node=100.64.0.1

# Desactivar
sudo tailscale set --exit-node=

# Verificar
tailscale status | grep "exit node"

Optimizaciones y resolución de problemas

Rendimiento: verificar el tipo de conexión

Tailscale prefiere el túnel WireGuard directo (NAT traversal). Si dos nodos no pueden verse directamente (NAT estricto, CGNAT), el tráfico pasa por un DERP relay - notablemente más lento:

tailscale netcheck
# Muestra qué relay se usa y si es posible la conexión directa

tailscale ping nombre-del-nodo
# "pong from ... via DERP(fra)" = relay
# "pong from ... via 1.2.3.4:41641" = directo (preferible)

Si estás en relay cuando ambas máquinas tienen IPs públicas, verificar UFW:

sudo ufw allow 41641/udp comment "Tailscale WireGuard"
sudo ufw allow 3478/udp comment "Tailscale STUN"

DNS: fugas tras activar el exit node

Tailscale empuja sus propios DNS (MagicDNS) pero a veces deja filtrar los DNS del sistema. Test:

# Desde el cliente con exit node activo
dig +short whoami.cloudflare.com TXT @1.1.1.1
# La IP devuelta debe ser la del VPS, no tu IP real

Si tu IP real se filtra: en macOS, desactivar y reactivar el exit node. En Linux:

sudo tailscale set --exit-node=hetzner-cx23-fra
sudo resolvectl flush-caches

MTU y fragmentación

WireGuard reduce el MTU efectivo en ~60 bytes (overhead del túnel). En algunos enlaces esto provoca cortes con paquetes grandes (vídeo, sesiones SSH largas). Fix:

# En el servidor exit node
sudo ip link set tailscale0 mtu 1280
# Hacer permanente via /etc/systemd/network/ o script rc.local

Kernel routing: rendimiento avanzado

En el servidor, habilitar BBR congestion control para mejor throughput:

echo 'net.core.default_qdisc = fq' | sudo tee -a /etc/sysctl.d/99-tailscale.conf
echo 'net.ipv4.tcp_congestion_control = bbr' | sudo tee -a /etc/sysctl.d/99-tailscale.conf
sudo sysctl -p /etc/sysctl.d/99-tailscale.conf

Este ajuste suele aportar una ganancia de throughput modesta bajo carga - mide el antes/después en tu propia conexión para confirmarlo.

Seguridad y consideraciones de privacidad

Qué ve Tailscale Inc.

Tailscale ve únicamente metadatos del plano de control:

  • Direcciones IP Tailscale (100.x.y.z) de tus nodos
  • Timestamps de los handshakes WireGuard
  • Nombres de las máquinas registradas en tu tailnet

Tailscale nunca ve:

  • El contenido de tu tráfico (cifrado WireGuard de extremo a extremo)
  • Tus consultas DNS (si MagicDNS desactivado y usando un resolver DNS externo)
  • Los sitios que visitas

El plano de datos es WireGuard puro. El código cliente es open source.

ACLs en el plan gratuito

El plan Free ofrece ACLs JSON básicas para controlar qué nodos pueden comunicarse con cuáles. Ejemplo mínimo para restringir el exit node solo a tus propios dispositivos:

{
  "acls": [
    {
      "action": "accept",
      "src": ["tag:personal"],
      "dst": ["tag:exit-node:*"]
    }
  ],
  "tagOwners": {
    "tag:exit-node": ["autogroup:admin"],
    "tag:personal": ["autogroup:admin"]
  }
}

DERP relays: jurisdicción

Cuando el tráfico pasa por un DERP relay (caso NAT estricto), transita por la infraestructura de Tailscale. Los relays EU están en Alemania y Países Bajos. Si la jurisdicción importa, puedes desplegar tu propio DERP relay - guía en la documentación oficial de Tailscale.

Logs en el servidor

Por defecto Ubuntu genera logs del kernel via journald para las conexiones WireGuard. Para cero logs:

sudo journalctl --vacuum-time=1s

Para profundizar en la arquitectura Tailscale vs plano de control autoalojado, ver nuestra comparativa Tailscale vs Headscale. Y para plantillas WireGuard desnudo sin overhead Tailscale: plantillas WireGuard 2026.


En resumen: un exit node Tailscale en un VPS pequeño (unos 5,50 €/mes) te da un túnel VPN mesh WireGuard completamente bajo tu control, sin cargos por gigabyte. El plan Free es suficiente para uso personal o familiar: según lo indicado el 7 de octubre de 2026, hasta 6 usuarios con dispositivos ilimitados. La configuración lleva 20 minutos - todos los comandos están en esta guía.

Guías relacionadas

★ Datacenter Núremberg GDPR · ✓ IPv4 dedicada incluida · puerto de 200 Mbit/s

Aloja tu VPN en tu propio VPS → ContaboAcceso root completo · IPv4 pública · elige tu región→

Preguntas frecuentes

¿El plan gratuito de Tailscale soporta exit nodes?
Sí. Los exit nodes están incluidos en el plan gratuito Personal, y la página de precios de Tailscale, leída el 24 de octubre de 2026, no indica ningún límite de exit nodes: el único tope relacionado son 50 recursos etiquetados, que Tailscale dice no aplicar por ahora. El plan cubre hasta 6 usuarios con dispositivos ilimitados. Lo que le falta al plan gratuito es la selección automática (exit nodes recomendados), reservada a Standard, Premium y Enterprise o al complemento Mullvad.
¿Qué latencia puedo esperar desde una conexión doméstica típica?
Depende de la distancia y del peering entre tu cliente y el VPS, así que ninguna cifra citada aquí sería la tuya. Un túnel WireGuard directo siempre supera al tráfico retransmitido por DERP. Mide tu propia ruta con `ping`/`mtr` para cifras exactas.
¿Qué throughput pasa por el exit node?
Depende de la velocidad del puerto del VPS, de su CPU y de tu propio enlace. La ruta de datos de WireGuard en el kernel rara vez es el límite en un VPS pequeño: el cuello de botella suele ser el más lento de los dos enlaces. Ejecuta iperf3 a través del túnel para obtener tu propia cifra.
¿Puede Tailscale ver mi tráfico?
No. El plano de datos es WireGuard, cifrado de extremo a extremo. Tailscale (el plano de control) solo ve metadatos: IPs de los nodos y timestamps de handshake. Tu payload nunca se descifra.
¿Se pueden tener múltiples exit nodes?
Sí, también en el plan gratuito. Varios dispositivos pueden anunciarse como exit nodes a la vez, por ejemplo un VPS en Fráncfort, otro en Ámsterdam y una Raspberry Pi en casa. Cada cliente usa un solo exit node a la vez y cambias entre ellos; dejar que Tailscale elija el mejor automáticamente (tailscale set --exit-node=auto:any) requiere Standard o superior, o el complemento Mullvad.
¿Funciona una Raspberry Pi como exit node?
Sí, en Pi 4/5 con Raspberry Pi OS de 64 bits. El throughput está limitado por la CPU del Pi para el cifrado WireGuard (el Cortex-A76 del Pi 5 es más rápido que el Pi 4) y por tu enlace de subida doméstico. Mídelo con iperf3.
¿Hay un kill switch integrado?
Sí: sudo tailscale set --exit-node=nombre --exit-node-allow-lan-access=false corta todo el tráfico si el túnel cae. En macOS/iOS el cliente aplica reglas iptables/PF automáticamente cuando hay un exit node activo.
¿Funciona IPv6 a través del exit node?
Sí si el servidor tiene una IPv6 pública (Hetzner proporciona una por defecto). Activar net.ipv6.conf.all.forwarding = 1 en sysctl es suficiente - Tailscale gestiona el resto.