> ## Knowledge Base Index
> Fetch the complete knowledge base index at: https://helpdesk.ggcircuit.com/sitemap.xml
> Use this file to discover available pages before exploring further.
> Pure-Markdown content can be obtained by appending a '.md' suffix to the content URLs listed in the sitemap (without the trailing slash).

# 🌐 [Avanzado] PXE Boot a través de subnets

## 🧩 Descripción general

Esta guía cubre un escenario más avanzado de arranque PXE de ggRock que involucra clientes ubicados en múltiples subredes, VLAN o segmentos de red.

---

## 🛠️ Problema

En entornos de red complejos, los dispositivos cliente pueden residir en diferentes subredes. Por defecto, los broadcasts de PXE **no** atraviesan límites de subred — lo que significa que se necesita configuración adicional para el arranque PXE de múltiples subredes.

---

## ✅ Solución

![](https://ggcircuit.atlassian.net/wiki/download/attachments/15860649/image-20250408-224407.png?version=1&modificationDate=1744152250748&cacheVersion=1&api=v2)

### 1. Deshabilitar el manejo de puerta de enlace predeterminada

Edita el archivo de configuración de ggRock para evitar enrutar el tráfico de arranque a través de una puerta de enlace predeterminada.

```
nano /opt/ggrock/app/App_Data/config.json
```

Añade el siguiente contenido:

```
{
"ServerConfiguration": {
"BootDefaultGateway": "None"
}
}
```
> 💾 Presiona `CTRL+X`, luego `Y`, luego `Enter` para guardar y cerrar.

---

### 2. Definir rangos de subred para PXE

Crea un archivo de configuración `dnsmasq` personalizado:

```
nano /etc/dnsmasq.d/vlan.conf
```

Añade la siguiente línea, reemplazando el rango de IP y la máscara de red con los valores correctos para definir el alcance completo de clientes PXE en tu red. El objetivo es cubrir el **rango de direcciones más amplio posible** que incluya todos los clientes PXE potenciales:

```
dhcp-range=10.0.0.0,proxy,255.255.255.0
```

**Ejemplos:**

* Si tus clientes PXE están en `10.0.0.0 – 10.0.0.255`, usa:

```
  dhcp-range=10.0.0.0,proxy,255.255.255.0
```
* Si tus clientes PXE abarcan `10.0.0.0 – 10.0.1.255`, usa:

```
  dhcp-range=10.0.0.0,proxy,255.255.254.0
```
* Si estás cubriendo `10.0.0.0 – 10.0.255.255`, usa:

```
  dhcp-range=10.0.0.0,proxy,255.255.0.0
```

📌 **Nota:** Usa solo una línea `dhcp-range` por subred o supernet que incluya tus clientes PXE. La palabra clave `proxy` asegura que dnsmasq proporcionará opciones de PXE sin asignar direcciones IP (se usa cuando otro servidor DHCP está proporcionando las direcciones).

---

### 3. Reiniciar servicios

Reinicia ggRock y el servidor web para aplicar los cambios:

```
systemctl restart ggrock
systemctl restart nginx
```

---

## 💡 Notas adicionales

* Una **configuración** `dnsmasq` **personalizada** puede ser necesaria dependiendo de tu topología de red.
* Asegúrate de que las **direcciones de IP Helper** (o **relé DHCP**) estén configuradas en **cada dispositivo de capa 3** (p. ej., enrutadores o conmutadores L3) entre el cliente y el servidor PXE.

---

## 🧠 Cómo funciona: PXE entre subredes

1. **Broadcast del cliente:** Un cliente envía un broadcast DHCP/PXE a la subred local.
2. **IP Helper:** El enrutador intercepta y reenvía el broadcast como un **unicast** al servidor PXE.
3. **Enrutamiento de múltiples saltos:** Si existen más enrutadores entre el cliente y el servidor, cada uno también debe reenviar a través de IP Helper.

---

### 🖼️ Diagrama de ejemplo

```
Client ---[Switch]---[Router 1]---[Router 2]---[PXE Server]
^ ^
IP Helper IP Helper
Configured Configured
```
> ✅ **Cada enrutador** en la ruta debe estar configurado para reenviar paquetes de PXE/DHCP para garantizar un arranque exitoso.

---

## 🆘 ¿Necesitas ayuda?

Si aún tienes problemas para arrancar entre subredes, ¡no te preocupes — ¡nosotros te respaldaremos!  
Comunícate con nosotros a través de nuestro [💬 chat de soporte web](https://ggcircuit.com/) o envíanos un correo electrónico a [**support@ggcircuit.com**](mailto:support@ggcircuit.com).