
La configuración de un servidor real con dirección dinámica en un dispositivo FortiGate es una función clave en escenarios de balanceo de carga o proxy inverso. Esta configuración permite que el firewall dirija el tráfico hacia servidores backend cuya dirección IP puede cambiar dinámicamente, garantizando alta disponibilidad y escalabilidad sin necesidad de modificar constantemente las reglas o políticas de firewall.
Campos principales
A continuación se describen los campos más importantes en la creación de un servidor real con dirección dinámica:
- Type (Tipo): Define el tipo de servidor que se está configurando. En este caso, es una dirección IP con dinámica (Dynamic Address), lo que significa que la IP del servidor backend puede variar con el tiempo.
- Dynamic address (Dirección dinámica): Aquí se selecciona o se crea un objeto de dirección IP dinámica que puede estar asociado a un nombre DNS u otro método para actualizar automáticamente la IP.
- Port (Puerto): El puerto en el servidor real al cual se enviará el tráfico. Es importante que coincida con el servicio que se desea balancear (ejemplo, puerto 80 para HTTP).
- Max connections (Conexiones máximas): Este campo limita la cantidad de conexiones simultáneas que se pueden abrir hacia este servidor real. Un valor de 0 suele interpretarse como ilimitado, pero se debe utilizar con precaución para evitar saturación.
- Mode (Modo): Define el estado o el tipo de balanceo entre servidores. Por ejemplo, «Active» indica que el servidor está activo para recibir tráfico.
Compatibilidad de versiones y modelos
La funcionalidad para crear servidores reales con direcciones dinámicas está disponible en varias versiones del firmware FortiOS, comúnmente desde versiones medias como la 7.4.x,7.6.x en adelante, incluyendo 7.4.x,7.6.x, 7.0 y 7.2. A medida que se avanza en versiones más recientes se han añadido mejoras en la interfaz gráfica y expansión de opciones para la gestión de direcciones dinámicas.
Esta configuración es típicamente utilizada en FortiGate de gama media y alta usados en entornos empresariales para servicios DMZ, WAN o datacenter. Algunos modelos de gama baja pueden no contar con soporte completo para objetos dinámicos o limitaciones en el número de reglas y objetos configurables, afectando el uso eficiente del balanceo dinámico.
Entre las limitaciones usuales se encuentran discrepancias en la terminología o ubicación de opciones dentro de la interfaz web entre versiones antiguas y actuales, además de ciertos parámetros que podrían cambiar de nombre o comportamiento, siendo fundamental revisar las notas de versión para evitar incompatibilidades.
Escenarios de uso y recomendaciones
Esta configuración es idónea para servicios que requieran alta disponibilidad, escalabilidad y balanceo de carga, como servidores web en la nube donde la IP backend puede cambiar frecuentemente o cuando se utilizan nombres DNS dinámicos.
Si no se configura correctamente, por ejemplo especificando una dirección dinámica no actualizada o con un puerto incorrecto, se puede experimentar pérdida de conectividad, fallos en la distribución del tráfico o saturación de los recursos de un servidor.
El fabricante recomienda usar objetos de dirección dinámicos debidamente monitorizados, combinarlos con técnicas de chequeo de salud (health checks) y limitar las conexiones máximas para evitar sobrecarga. Además, es aconsejable validar el correcto funcionamiento después de cualquier cambio.
Comandos de CLI útiles para diagnóstico
diagnose firewall vip list: Muestra las configuraciones actuales de servidores virtuales y reales para verificar si la dirección dinámica y puertos están bien configurados.execute ping hostname_dinamico: Permite comprobar la resolución DNS o disponibilidad de la IP dinámica del servidor real.diagnose debug application lb -1: Activa debugging del balanceador de carga para detectar problemas en la asignación de conexiones.show firewall vip: Visualiza la configuración básica del virtual IP incluyendo los servidores reales asociados.execute traceroute ip_servidor_real: Diagnostica rutas hacia el backend para verificar conectividad.
Buenas prácticas de configuración
- Diligenciar correctamente todos los campos, especialmente puerto y dirección dinámica actualizada para evitar fallos de resolución.
- Implementar límites razonables en conexiones máximas según capacidad del servidor real.
- Utilizar chequeo de salud para detectar automáticamente servidores fuera de línea y evitar desbalanceos.
- Realizar pruebas de conectividad tras cualquier cambio para confirmar que el balanceo funciona adecuadamente.
- Documentar los objetos de dirección dinámica para mantener consistencia en su gestión y actualización.
- Evitar usar configuraciones muy antiguas sin actualización, pues la gestión dinámica puede no estar optimizada o ni siquiera disponible.
- Revisar periódicamente logs y debugging para anticipar inconvenientes en producción.