Sigue leyendo para descubrir cómo desplegar un servicio DHCP failover en Windows Server 2022 mediante PowerShell.
Este tutorial, en cierto modo, cierra el ciclo de tutoriales y artículos en los que hemos tratado acerca de DHCP, artículos como “qué es el DHCP y para qué sirve”, donde tratamos de explicar la importancia de el servicio Dynamic Host Configuration Protocol o Protocolo de Configuración Dinámica de Host (DHCP).
Este servicio nos permite gestionar de manera centralizada, sencilla y rápida la asignación de distintas configuraciones de red, entre las que se incluyen las siguientes:
- Dirección IP: Dirección de la máquina.
- Máscara de red: Usada para operaciones de red e identificar la red a la que pertenece este dispositivo.
- Puerta de enlace: Es el GW al que enviará el equipo los paquetes para que viajen fuera de la red.
- Servidores DNS: Son los servidores a los que consultará la máquina para saber qué IP corresponde a un servidor o a qué servidor corresponde una IP.
- Nombre de dominio: Es básicamente el nombre de dominio completo de la organización de la que depende.
- Dirección WINS: Dirección IP de los servidores WINS que consultará el cliente para la resolución de nombres NetBIOS.
También pueden existir otros parámetros, pero estos son menos comunes.
Las explotaciones que usan este servicio son mucho más adaptables a los cambios y mucho más eficientes, pero tienen una total dependencia del servicio.
Para evitar situaciones adversas se debe tener el servicio redundado, desplegando un servidor adicional para que de esta manera no se pueda interrumpir el servicio, al menos en condiciones normales.
Existen dos configuraciones para el DHCP failover:
- Load balancing: O Balanceo de Carga. Consiste en repartir las peticiones con el servidor principal, inicialmente el 50% de las peticiones para cada uno, aunque podemos adaptarlo a nuestras preferencias.
- Hot Standby: O Espera Activa. Consiste en mantener el servidor en ejecución, a la espera de que se produzca una caída en el servidor principal.
En este tutorial vamos a usar la configuración “Hot Standby”, partiendo de que ya tenemos un servidor de DHCP desplegado.
Nota: El proceso sirve para servidores Windows Server 2016, Windows Server 2019 o Windows Server 2022.
En caso de no tener ese servidor, se puede seguir uno de estos tutoriales para instalarlo:
En este caso, va a parecer más corta la explicación de la instalación que el preámbulo a la misma.
¿Cómo desplegar un servicio DHCP failover en Windows Server 2022?
Pre-requisitos o pre-configuración
Para completar de forma satisfactoria este tutorial y desplegar un servicio DHCP failover en Windows Server 2022 mediante PowerShell se necesitará:
- Por un lado, estar dado de alta en la Plataforma Jotelulu con una organización y estar registrado en la misma tras hacer Log-in.
- Por otro lado, haber dado de alta una suscripción de Servidores.
NOTA: Cuidado con el copy/paste, se debe validar que los guiones y comillas están tal como se ven en este tutorial.
Paso 1. Instalación del segundo servidor
Partimos, tal como hemos dicho previamente, de que el primer servidor ya está instalado, por lo que vamos a hacer la instalación del segundo servidor.
Deberemos validar que ambos servidores pueden comunicarse, por lo que se debe ejecutar un ping entre servidores desde cada extremo para ver que está todo ok.
NOTA: Por razones de seguridad, es recomendable abrir solo los puertos necesarios para la comunicación del DHCP y no abrir todo como se suele hacer para ahorrar tiempo.
A continuación, vamos a ver como desplegar el segundo servidor mediante PowerShell usando el comando “Install-WindowsFeature” (1).
# Install-WindowsFeature DHCP -IncludeManagementTools
Donde:
- Install-WindowsFeature: Es el comando para instalar las funcionalidades de Windows Server.
- DHCP: Es el servicio que desplegaremos.
- IncludeManagementTools: Instala las herramientas administrativas del servicio.
Después de la ejecución, se tiene que revisar que se ve la cadena “Success” (2) como “Exit Code”.
Con esto ya se tendrá la instalación básica del servidor.
Paso 2. Adición del segundo servidor al clúster DHCP failover
Para completar la instalación, se deben seguir una serie de pasos adicionales, que si los comparamos con la versión gráfica de la misma operación nos parecerán extremadamente pocos.
Lo primero que se debe hacer, desde la consola de PowerShell es lanzar el siguiente comando para agrega grupos de seguridad al servidor (3).
# netsh dhcp add securitygroups
Se debe comprobar que aparece el comando “Command completed successfully” (4).
Este comando, si se prefiere, se puede cambiar por la ejecución de:
# Add-DhcpServerSecurityGroup -ComputerName «<FQDN_DHCP_Server>»
Donde:
- <FQDN_DHCP_Server>: Es el nombre completamente cualificado del servidor de DHCP que estamos registrando.
Como, por ejemplo:
# Add-DhcpServerSecurityGroup -ComputerName «SW22DHCPSERVER2.pruebasnacho.int»
Lo siguiente es agregar el servidor a la lista de servicios de servidor de Protocolo de configuración dinámica de host (DHCP) autorizados en Active Directory. Para ello ejecutaremos el cmdlet “Add-DhcpServerInDC” (5):
# Add-DhcpServerInDC -DnsName «<FQDN_DHCP_Server>» -IPAddress <Direccion_IP>
Donde:
- <FQDN_DHCP_Server>: Es el nombre completamente cualificado del servidor de DHCP que estamos registrando.
- <Direccion_IP>: Es la dirección IP del servidor de DHCP que estamos registrando.
Un ejemplo sería:
# Add-DhcpServerInDC -DnsName «SW22DHCPSERVER2.pruebasnacho.int» -IPAddress 10.0.0.89
Tras esto, se debe cambiar la clave del registro para notificar al administrador del servidor que la configuración de DHCP posterior a la instalación está completa (6).
# Set-ItemProperty –Path registry::HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\ServerManager\Roles\12 –Name ConfigurationState –Value 2
NOTA: Es posible que intentemos ejecutar este comando y dé un fallo en el registro, concretamente el fallo “Add-DhcpServerInDC : Failed to initialize directory service resources for domain xxxxxxxx.xxx”. Si esto sucede, hay que desinstalar el servicio de DHCP y volver a instalarlo, y normalmente, este error remite.
Y ahora llegamos a configurar un montón de opciones, que en consola gráfica es un lío y que aquí es muy sencillo, mediante la ejecución de un pequeño comando de tipo one-line (7).
# Add-DhcpServerv4Failover –ComputerName «<Computer_Name>» –PartnerServer «<Servidor>» –Name «<Nombre_Balanceador>» –LoadBalancePercent <Porcentaje> -MaxClientLeadTime 1:00:00 -StateSwitchInterval 00:45:00 -ScopeId <Ámbito_Sincronizado> -SharedSecret “<Contraseña>“
Donde todas estas configuraciones muestran opciones del servidor failover:
- Relationship Name: Hace referencia al servidor.
- Maximun Client Lead Time:
- Mode: (Explicados al principio del tutorial).
- Load balancing: Repartir las peticiones con el servidor principal, normalmente en igualdad de condiciones.
- Hot Standby: Mantener el servidor en ejecución, pero sin atender peticiones, a la espera de que se produzca una caída en el servidor principal para tomar el servicio.
- Load Balance Percentaje: El tanto por ciento que lleva cada servidor y que normalmente será de 50% para cada nodo.
- Sigle Switchover Interval:
- Enable Message Authentication:
- Shared Secret: Es la contraseña del servicio para las comunicaciones.
Un ejemplo de ejecución podría ser:
# Add-DhcpServerv4Failover –ComputerName «SW22DHCPSERVER01» –PartnerServer «SW22DHCPSERVER2» –Name «DHCP_LoadBalance» –LoadBalancePercent 50 -MaxClientLeadTime 1:00:00 -StateSwitchInterval 00:45:00 -ScopeId 10.0.1.0 -SharedSecret “<Contraseña>“
Cuando se ejecute el comando, se mostrará un prompt que nos pide seleccionar una opción, se debe pulsar <Enter> o “Y” (8).
Con esto, ya se puede ir a la consola de administración de DHCP y ver los cambios reflejados.
NOTA: Es posible que, si la consola de DHCP estaba abierta, no se haya refrescado la información, así que, si todo está marcado como “Successful” y no se ven los cambios, se deberá reiniciar la consola de DHCP, siendo bastante con salir y volver a entrar.
Conclusiones y próximos pasos:
El proceso descrito en este tutorial, cómo desplegar un servicio DHCP failover en Windows Server 2022 mediante PowerShell, nos permite realizar el despliegue del rol en dos servidores Windows Server 2022 para mantener la alta disponibilidad, aunque es también válido para 2016, o 2019.
Este proceso se realiza mediante la ejecución de muy pocos comandos, tal como se ha podido ver en este tutorial.
Si ya has provisionado tu servicio de DHCP es posible que quieras leer también estos artículos relacionados:
Esperamos que con esta pequeña guía no tengas problemas, pero si los tuvieras, no dudes en contactar con nosotros para que podamos echarte una mano.
¡Gracias por tu confianza!