--- title: "Cómo configurar una red virtual ZeroTier en Ubuntu 24.04" description: "Instala ZeroTier en Ubuntu 24.04, une el servidor a una red virtual, autoriza miembros con IP fija y enruta una subred privada con NAT hacia otros nodos." category: "Acceso Remoto" language: es source: https://cubepath.com/es/docs/acceso-remoto/configuracion-de-red-virtual-zerotier updated: 2026-09-25 --- # Cómo configurar una red virtual ZeroTier en Ubuntu 24.04 ZeroTier crea redes virtuales de capa 2 sobre Internet: los equipos que se unen a la misma red se ven como si estuvieran en la misma LAN, con conexiones cifradas punto a punto entre ellos. En este tutorial instalarás ZeroTier en un servidor Ubuntu 24.04, lo unirás a una red gestionada desde ZeroTier Central, autorizarás miembros con IP fija y configurarás el servidor como router hacia una subred privada. ## Requisitos previos Para seguir esta guía necesitas: - Un servidor con Ubuntu 24.04 LTS, por ejemplo un VPS de CubePath, y un usuario no root con privilegios `sudo`. - Una cuenta en [ZeroTier Central](https://my.zerotier.com). El plan gratuito permite un número limitado de dispositivos, suficiente para seguir la guía. - Al menos otro equipo (tu portátil, por ejemplo) con el cliente de ZeroTier instalado, para probar la conexión. - Para el paso 5, una subred privada a la que llegue el servidor, por ejemplo la red privada de tus servidores. En esta guía se usa `10.10.0.0/24`. ## Paso 1: Instalar ZeroTier ZeroTier distribuye sus paquetes mediante un script que detecta la distribución, añade su repositorio firmado e instala el paquete `zerotier-one`. Descárgalo primero para poder revisarlo antes de ejecutarlo con privilegios de root: ```bash curl -fsSL https://install.zerotier.com -o zerotier-install.sh less zerotier-install.sh ``` Si el contenido es correcto, ejecútalo: ```bash sudo bash zerotier-install.sh ``` El paquete activa y arranca el servicio `zerotier-one`. Comprueba su estado y la identidad del nodo: ```bash systemctl status zerotier-one sudo zerotier-cli info ``` ```output 200 info 8a3c1f5e92 1.14.2 ONLINE ``` El valor de 10 caracteres (`8a3c1f5e92` en el ejemplo) es el **ID de nodo**. Lo necesitarás para autorizar el servidor. `ONLINE` indica que el nodo llega a la infraestructura de ZeroTier. ## Paso 2: Crear una red en ZeroTier Central Inicia sesión en ZeroTier Central y pulsa **Create A Network**. La red recibe un **ID de red** de 16 caracteres hexadecimales, por ejemplo `a09acf02337b1c5e`. Abre la red y revisa dos ajustes: - **Access Control**: déjalo en **Private**. Así cada equipo que se una necesitará tu aprobación. - **IPv4 Auto-Assign**: elige un rango que no choque con tus redes existentes, por ejemplo `10.147.17.*`. ZeroTier asignará a cada miembro una IP de ese rango. ## Paso 3: Unir el servidor a la red Une el servidor a la red con su ID. Sustituye `your_network_id` por el tuyo: ```bash sudo zerotier-cli join your_network_id ``` ```output 200 join OK ``` Consulta el estado de la red. Como aún no está autorizado, verás `ACCESS_DENIED` y ninguna IP asignada: ```bash sudo zerotier-cli listnetworks ``` ```output 200 listnetworks 200 listnetworks a09acf02337b1c5e mi-red 7a:1b:2c:3d:4e:5f ACCESS_DENIED PRIVATE ztabcdef12 - ``` La columna `` muestra el nombre de la interfaz virtual, que empieza por `zt`. ## Paso 4: Autorizar miembros En ZeroTier Central, abre la red y baja hasta **Members**. El servidor aparece con su ID de nodo. Marca la casilla **Auth** y, si quieres una IP fija, escríbela en el campo de IP del miembro. También puedes autorizar desde la API de ZeroTier Central, útil al desplegar muchos servidores. Crea un token de API en **Account > API Access Tokens** y exporta las variables. Sustituye los valores de ejemplo por los tuyos: ```bash export ZT_TOKEN="your_api_token" export ZT_NETWORK="your_network_id" export ZT_NODE="your_node_id" ``` Autoriza el miembro y asígnale la IP `10.147.17.10`: ```bash curl -s -X POST \ -H "Authorization: token $ZT_TOKEN" \ -H "Content-Type: application/json" \ -d '{"name": "vps-router", "config": {"authorized": true, "ipAssignments": ["10.147.17.10"]}}' \ "https://api.zerotier.com/api/v1/network/$ZT_NETWORK/member/$ZT_NODE" ``` Unos segundos después, el servidor recibe la configuración. Comprueba que el estado ha pasado a `OK` y que la interfaz tiene la IP: ```bash sudo zerotier-cli listnetworks ``` ```output 200 listnetworks a09acf02337b1c5e mi-red 7a:1b:2c:3d:4e:5f OK PRIVATE ztabcdef12 10.147.17.10/24 ``` Une y autoriza de la misma forma tu portátil. Desde él, haz ping al servidor por su IP de ZeroTier: ```bash ping -c 3 10.147.17.10 ``` En el servidor, `zerotier-cli peers` muestra si la conexión con cada equipo es directa (`DIRECT`) o pasa por un relay (`RELAY`): ```bash sudo zerotier-cli peers ``` ## Paso 5: Enrutar una subred privada a través del servidor Para que los miembros de ZeroTier lleguen a equipos que no tienen ZeroTier instalado, el servidor debe reenviar su tráfico hacia la subred privada. Activa el reenvío de paquetes de forma permanente: ```bash echo 'net.ipv4.ip_forward = 1' | sudo tee /etc/sysctl.d/99-zerotier.conf sudo sysctl -p /etc/sysctl.d/99-zerotier.conf ``` ```output net.ipv4.ip_forward = 1 ``` Identifica la interfaz del servidor conectada a la subred privada: ```bash ip -br addr ``` ```output lo UNKNOWN 127.0.0.1/8 ::1/128 eth0 UP 203.0.113.20/24 eth1 UP 10.10.0.4/24 ztabcdef12 UNKNOWN 10.147.17.10/24 ``` En este ejemplo la subred privada está en `eth1` y la interfaz de ZeroTier es `ztabcdef12`. Los equipos de la subred no conocen la red `10.147.17.0/24`, así que el servidor hará NAT (masquerade) del tráfico que sale hacia ellos. Añade las reglas con tus nombres de interfaz: ```bash sudo iptables -t nat -A POSTROUTING -s 10.147.17.0/24 -o eth1 -j MASQUERADE sudo iptables -A FORWARD -i ztabcdef12 -o eth1 -j ACCEPT sudo iptables -A FORWARD -i eth1 -o ztabcdef12 -m conntrack --ctstate RELATED,ESTABLISHED -j ACCEPT ``` Instala `iptables-persistent` para que las reglas sobrevivan a un reinicio. Durante la instalación responde **Yes** a guardar las reglas IPv4 actuales: ```bash sudo apt install iptables-persistent ``` Si más adelante cambias las reglas, guárdalas de nuevo con `sudo netfilter-persistent save`. Por último, publica la ruta a todos los miembros. En ZeroTier Central, en **Advanced > Managed Routes**, añade una ruta con destino `10.10.0.0/24` y **Via** `10.147.17.10` (la IP de ZeroTier del servidor). Los clientes aceptan las rutas gestionadas por defecto. Desde el portátil, haz ping a un equipo de la subred privada: ```bash ping -c 3 10.10.0.5 ``` ## Paso 6: Ajustar el firewall ZeroTier usa el puerto UDP 9993. No necesita tenerlo abierto para funcionar, pero permitir la entrada facilita que los demás nodos establezcan conexiones directas en lugar de pasar por relay: ```bash sudo ufw allow 9993/udp ``` Si UFW está activo en el servidor router, también bloquea por defecto el tráfico reenviado. Permite el reenvío desde ZeroTier hacia la subred privada: ```bash sudo ufw route allow in on ztabcdef12 out on eth1 sudo ufw status ``` ```output To Action From -- ------ ---- 9993/udp ALLOW Anywhere Anywhere on eth1 ALLOW FWD Anywhere on ztabcdef12 ``` ## Solución de problemas **El estado se queda en `REQUESTING_CONFIGURATION`.** El nodo no llega al controlador de la red. Comprueba que `sudo zerotier-cli info` devuelve `ONLINE` y que no hay un firewall bloqueando el UDP saliente. Revisa los logs: ```bash sudo journalctl -u zerotier-one -n 50 ``` **El estado es `ACCESS_DENIED`.** El miembro no está autorizado. Marca **Auth** en ZeroTier Central o repite la llamada a la API del paso 4. **Hay IP de ZeroTier pero no llegas a la subred.** Verifica, en este orden, que la ruta gestionada existe y apunta a la IP correcta, que `sysctl net.ipv4.ip_forward` devuelve `1`, y que las reglas NAT y de reenvío están cargadas: ```bash sudo iptables -t nat -S POSTROUTING sudo iptables -S FORWARD ``` ## Conclusión Tienes un servidor Ubuntu 24.04 unido a una red virtual ZeroTier, con miembros autorizados e IP fija, que además da acceso a una subred privada a todos los nodos de la red. Como siguientes pasos, puedes definir reglas de flujo (**Flow Rules**) en ZeroTier Central para limitar qué tráfico se permite entre miembros, automatizar el alta de servidores con la API, o desplegar un controlador propio como ZTNET si no quieres depender de ZeroTier Central.