Ir al contenido
Avanet

Configurar y probar un servidor DHCPv6 en Sophos Firewall

Un servidor DHCPv6 en Sophos Firewall distribuye direcciones IPv6 y parámetros de red a los clientes. La configuración comienza en Network > DHCP > Add > IPv6. Sin embargo, a diferencia de DHCPv4, el servidor por sí solo no proporciona una red de clientes completa: los clientes aprenden la puerta de enlace IPv6 predeterminada mediante Router Advertisement en Sophos Firewall, no mediante DHCPv6.

Procedimiento rápido: Comprobar primero el prefijo IPv6 y Router Advertisement, elegir después la interfaz y un rango dinámico en el mismo /64, establecer Preferred time por debajo de Valid time, definir DNS de forma consciente y probar con un cliente real. Una asignación estática utiliza el DUID del cliente, no simplemente su dirección MAC.

⚠️ Sophos Firewall no puede ejecutar al mismo tiempo un servidor DHCPv6 y un DHCPv6 Relay. Antes de activar el servicio debe estar claro qué función abastece el entorno. Un prefijo IPv6 o un lease visible tampoco demuestra que exista una puerta de enlace, que DNS funcione ni que el tráfico de aplicación esté permitido.

Separar Router Advertisement de DHCPv6

En IPv4, DHCP suele proporcionar conjuntamente la dirección, la máscara de subred y la puerta de enlace. IPv6 separa estas tareas. Router Advertisement, o RA, anuncia el prefijo y el router. DHCPv6 puede proporcionar una dirección de un rango gestionado, además de servidores DNS y otras opciones.

Por tanto, deben coincidir tres niveles:

  • La interfaz tiene el prefijo IPv6 previsto.
  • Router Advertisement indica el comportamiento de cliente planificado y proporciona el router predeterminado.
  • DHCPv6 distribuye el rango de concesiones adecuado y los valores adicionales necesarios.

Si el proveedor delega un prefijo dinámico al firewall, la planificación comienza en Configurar IPv6 Prefix Delegation en Sophos Firewall. Compatibilidad IPv6 de Sophos Firewall en SFOS 22 explica los límites generales para interfaces, routing, VPN, reglas y DNS.

Planificar la red de ejemplo

La siguiente red de laboratorio utiliza el rango IPv6 2001:db8::/32, reservado para documentación. Estos valores no funcionan como direcciones productivas de Internet y deben sustituirse por el prefijo estático o delegado real:

  • Interfaz de clientes: VLAN20 - 2001:db8:20::1/64
  • Rango dinámico: 2001:db8:20::100 a 2001:db8:20::1ff
  • Asignación estática: 2001:db8:20::20
  • Servidor DNS interno: 2001:db8:10::53
  • Nombre de ejemplo: dhcpv6-vlan20-clients

La interfaz y el rango dinámico se encuentran en el mismo /64. Las direcciones estáticas existentes del firewall, los servidores y la infraestructura no deben formar parte del rango dinámico. Antes de activar el servicio se identifican los Router Advertisements, servidores DHCPv6 y agentes relay existentes en el segmento para que los clientes no reciban información contradictoria.

Configurar el servidor DHCPv6

  1. En Network > DHCP, hacer clic en Add y después en IPv6.
  2. Introducir dhcpv6-vlan20-clients como Name.
  3. En Interface, seleccionar VLAN20 - 2001:db8:20::1.
  4. Dejar Accept client request via relay desactivado para clientes conectados directamente.
  5. En Dynamic IP lease, añadir el rango 2001:db8:20::100 a 2001:db8:20::1ff.
  6. Definir Preferred time y Valid time de acuerdo con el ciclo de vida del prefijo y de los clientes.
  7. Como DNS server, introducir el servidor DNS interno previsto o seleccionar de forma consciente Use device’s DNS settings.
  8. Añadir únicamente las DHCP options y asignaciones DUID estáticas necesarias.
  9. Guardar con Save.

El rango elegido debe corresponder a la subred de los clientes. Para clientes detrás de un relay, el rango pertenece a la subred de la interfaz del relay. Accept client request via relay solo se activa si el servidor acepta realmente solicitudes de un agente DHCPv6 Relay verificado.

Según Sophos, cuando se selecciona Accept client request via relay para un servidor DHCPv6 en una interfaz física con un prefijo IPv6 delegado, el archivo de configuración DHCPv6 no muestra ningún cambio. Este caso especial no debe evaluarse solo mediante el archivo; topología, ruta del relay, lease y flujo de paquetes deben coincidir.

Entender Preferred time y Valid time

Preferred time indica en minutos cuánto tiempo una dirección conserva el estado preferido para conexiones nuevas. Después pasa a estar deprecated. Las conexiones existentes pueden seguir utilizándola, pero las nuevas deben elegir una dirección que siga siendo preferida.

Valid time determina cuánto tiempo sigue siendo válida la dirección en total. Después, el cliente ya no puede utilizarla. Por ello, SFOS exige que Preferred time sea inferior a Valid time.

No existe un valor ideal universal. Con prefijos dinámicos delegados por el proveedor, los tiempos de DHCPv6 no deben planificarse como si el prefijo permaneciera siempre igual. En redes internas estables pueden resultar útiles valores más largos. Las migraciones o los prefijos que cambian con frecuencia necesitan valores más cortos, pero operativamente realistas, y una prueba de renovación controlada.

Distribuir DNS de forma consciente

Con Use device’s DNS settings, el firewall proporciona a los clientes sus servidores DNS configurados. Solo resulta adecuado si estos servidores resuelven correctamente los nombres internos y externos de la red de clientes. Como alternativa se introducen las direcciones IPv6 reales de los servidores DNS previstos.

Un lease correcto sin resolución de nombres no representa un éxito completo de DHCPv6. Después de comprobar la dirección se realiza una prueba DNS interna y otra externa. Configurar DNS Request Routes en Sophos Firewall sigue siendo relevante para zonas internas y Split DNS.

Gestionar opciones DHCPv6 propias en Device Console

Device Console gestiona una opción DHCPv6 propia en dos fases. Primero se define la opción de forma global y después se vincula a un servidor DHCPv6 seleccionado por nombre. Antes de modificar nada, estos comandos muestran las definiciones existentes y los vínculos del servidor de destino:

system dhcpv6 dhcpv6-options list
system dhcpv6 dhcpv6-options binding show dhcpname <nombre-del-servidor-DHCPv6>

La ayuda de SFOS 22 admite sintácticamente valores de 1 a 65535 para optioncode. Esto no significa que SFOS admita todos los códigos ni que el cliente pueda interpretarlos. La tabla correspondiente de Sophos enumera los códigos 21, 22, 24 y del 27 al 34. Antes de crear la definición se comprueban conjuntamente el código, el tipo de dato, el RFC y la compatibilidad del cliente.

⚠️ La ayuda en línea solo muestra una gramática abreviada y no explica por completo los valores y tipos de datos necesarios para crear una opción. En el firewall afectado se utiliza la finalización con Tab después de system dhcpv6 dhcpv6-options add y system dhcpv6 dhcpv6-options binding add. No se copia a ciegas un comando de otra compilación de SFOS.

Después de vincular la opción se ejecuta de nuevo binding show y se renueva el lease de un cliente de prueba. La captura de paquetes debe mostrar la opción esperada con el valor correcto en la respuesta del servidor. Para revertir el cambio se elimina primero el vínculo y solo después una definición global que ya no se utilice. Como la sintaxis de borrado publicada por Sophos solo indica dhcpname, se trata como una acción de ámbito de servidor y nunca se ejecuta sin registrar antes los vínculos existentes.

Crear una asignación DUID estática

DHCPv6 identifica un cliente mediante su DHCP Unique Identifier, o DUID. En Static IP DUID mapping, la dirección IPv6 se asigna al DUID real del cliente. Una dirección MAC leída del chasis no es un sustituto fiable.

Primero se permite que el cliente de prueba obtenga un lease dinámico y se identifica su DUID en el cliente, la vista de leases o la captura de paquetes. Después se introduce la dirección estática 2001:db8:20::20 fuera del rango dinámico. Tras una nueva solicitud de lease, exactamente ese cliente debe recibir la dirección prevista.

Después de cambiar el sistema operativo, generar un DUID nuevo o clonar un sistema desde una plantilla, la asignación puede dejar de coincidir con el cliente. En ese caso no se amplía la regla de firewall, sino que se comprueba primero el DUID que se envía realmente.

Probar el lease y la ruta de datos

Después de guardar, se vuelve a conectar un cliente controlado en la VLAN prevista o se renueva su configuración IPv6. En Network > DHCP > IPv6 lease debe aparecer la dirección esperada junto al cliente correcto.

A continuación se comprueba cada nivel por separado:

  1. El cliente recibe una dirección del rango planificado o la dirección DUID estática.
  2. El cliente tiene una puerta de enlace IPv6 procedente de Router Advertisement.
  3. Los servidores DNS previstos están visibles y resuelven nombres internos y externos.
  4. El cliente alcanza la dirección del firewall y un destino IPv6 de prueba elegido de forma consciente.
  5. Log Viewer muestra la regla de firewall IPv6 esperada para el tráfico de aplicación.
  6. Una prueba negativa confirma que los servicios IPv6 no permitidos siguen bloqueados.

Una regla IPv4 no permite IPv6 automáticamente. Las reglas necesarias basadas en zonas se planifican por separado y se validan mediante Rule ID y tráfico real. Configurar reglas de Sophos Firewall explica el procedimiento.

Sin lease o con configuración IPv6 incompleta

El cliente no recibe una dirección DHCPv6

Primero se comparan el prefijo de la interfaz, el estado del servidor DHCPv6 y el rango dinámico. Después se comprueba si el cliente solicita una dirección DHCPv6 gestionada en este modo y si hay otro servidor o relay activo en el segmento.

Una captura de paquetes con este filtro BPF muestra los mensajes de cliente y servidor mediante UDP 546 y 547:

udp port 546 or udp port 547

Si se ven mensajes del cliente pero no hay respuesta, se revisan la configuración del servidor y dhcpd6.log. Si no aparece ningún mensaje del cliente, son más probables el modo RA, el comportamiento del cliente, la VLAN o la ruta de red local. Utilizar Packet Capture en Sophos Firewall WebAdmin explica los campos de la captura.

El cliente tiene una dirección, pero no una puerta de enlace

DHCPv6 no distribuye una puerta de enlace predeterminada. Este síntoma conduce directamente a Router Advertisement, la interfaz y el segmento del cliente. Añadir un segundo servidor DHCPv6 o cambiar los tiempos de lease no restaura la información de router que falta.

Faltan DNS u opciones

Primero se comprueba qué solicita el cliente en su mensaje DHCPv6 y qué responde realmente el firewall. Después se revisan el tipo de dato, el valor y el servidor DHCPv6 utilizado. Una entrada de Opciones DHCP en Sophos Firewall no debe copiarse sin más de DHCPv4 a DHCPv6; el código de opción, el RFC y la compatibilidad del cliente deben ser adecuados para DHCPv6.

No se asigna la dirección estática

Se compara el DUID transmitido con Static IP DUID mapping. Si no coinciden, el firewall no puede aplicar la asignación. Si coinciden, se comprueban el rango de direcciones, los servidores duplicados y la nueva solicitud de lease.

Relay y servidor entran en conflicto

Un servidor DHCPv6 y un DHCPv6 Relay no pueden estar activos al mismo tiempo en Sophos Firewall. Si se ha previsto un servidor externo central, el servidor DHCPv6 local no se mantiene en paralelo como supuesto fallback. Configurar DHCP Relay en Sophos Firewall explica la ruta del relay.

El archivo dhcpd6.log y otros logs de red se describen en Comprobar servicios y logs de Sophos Firewall mediante CLI. Una sola entrada de log no sustituye la vista de leases, la captura y la prueba del cliente.

Revertir el cambio

Antes de activar el servicio en producción se documentan el estado RA anterior, la función DHCPv6 o relay y la configuración actual de los clientes. Para el rollback se desactiva o elimina el nuevo servidor DHCPv6, se restaura la lógica anterior de relay o direccionamiento y se establece una nueva conexión de cliente.

Después se vuelven a probar la dirección, la puerta de enlace, DNS y una ruta de datos IPv6 real. Los servidores antiguo y nuevo no deben permanecer activos en paralelo sin coordinación solo para que el rollback parezca más sencillo.

Preguntas frecuentes

¿Sustituye DHCPv6 a Router Advertisement?

No. La puerta de enlace IPv6 procede de Router Advertisement. DHCPv6 puede proporcionar direcciones y parámetros adicionales, pero no sustituye a RA.

¿Por qué utiliza un DUID una asignación DHCPv6 estática?

DHCPv6 identifica al cliente mediante el DHCP Unique Identifier. Por ello, la asignación debe coincidir con el DUID enviado realmente por el cliente y no puede derivarse de forma fiable solo de una dirección MAC.