UT01 · DHCP en Windows Server 2025
Administrar la misma política DHCP del RA2 con Windows Server, GUI y PowerShell.
☰ Contenido de la unidad
Introducción · segundo laboratorio obligatorio de la UT01
Misión: demostrar el mismo protocolo y RA2 con otra plataforma: DHCP con Kea en Debian 13 → DHCP con Windows Server 2025. Aquí no «inventamos otro DHCP»: cambiamos la forma de administrarlo, comprobarlo y respaldarlo.
| Aspecto | Kea / Debian | Windows Server 2025 |
|---|---|---|
| Configuración | JSON Dhcp4, subnet4, pools |
Ámbitos, exclusiones, opciones y reservas |
| Herramienta | Terminal y servicio | GUI DHCP + PowerShell |
| Lease | CSV memfile y logs | Concesiones del ámbito y registros |
| Protocolo | DORA, UDP 67/68 | El mismo DORA, UDP 67/68 |
| Repetibilidad | Fichero validado / API | Cmdlets DhcpServer |
Ruta mínima obligatoria: VM Windows Server → NIC/IP fija por GUI → rol DHCP → ámbito y exclusión → reserva → cliente DHCP → prueba DORA → comparación. Ruta avanzada: reproducción automatizada, relay/segunda LAN, copias e incidencias. El uso de PowerShell es parte de la competencia, pero no se mezclan dos métodos de creación de ámbitos sobre la misma configuración existente.
RA2: administra servicios de configuración automática y verifica parámetros recibidos. Evidencias: RA2.a manual/automático; b DORA; c instalación/gestión del rol; d ámbito/cliente; e reserva; f opciones/relay; g logs, copia e incidencia.
1. Preparar Windows Server y las tarjetas · clic a clic
1.1 Máquinas necesarias
| VM | SO | Adaptadores | Cuándo encenderla |
|---|---|---|---|
wdhcp-pXX-lYY |
Windows Server 2025 Desktop Experience | NAT para instalación; Red Interna SRI-W-Pxx |
Toda la práctica |
wcli-pXX-lYY |
Windows 11 | Red Interna SRI-W-Pxx |
Desde la prueba cliente |
| Cliente Debian opcional | Debian 13 | Red Interna SRI-W-Pxx |
Por turnos con Windows 11 |
| Relay opcional | Debian 13 | LAN A y LAN B internas | Solo fase de ampliación |
El laboratorio base requiere dos VM simultáneas. Sugerencia inicial: Windows Server 2 vCPU, 4–6 GB RAM y 60 GB de disco dinámico, según el hardware del aula.
1.2 Instalación de la VM
- Descarga Windows Server 2025 desde Microsoft Evaluation Center o usa la licencia proporcionada por el centro. La evaluación tiene condiciones y duración limitadas.
- VirtualBox → Nueva → selecciona la ISO, recursos y disco. Si la instalación guiada te impide elegir edición, revisa la instalación desatendida de VirtualBox.
- En el instalador de Windows selecciona edición con Desktop Experience (experiencia de escritorio). Server Core no ofrece la misma GUI; lo estudiaremos como ampliación.
- Establece la contraseña de la cuenta Administrador solo para el laboratorio. Accede al escritorio del servidor.
- Apaga y entra en VirtualBox → Configuración → Red: Adaptador 1 NAT; Adaptador 2 Red interna, nombre exacto
SRI-W-Pxx. No uses Adaptador puente para el DHCP del centro. - Crea snapshot
20_WIN_BASE.
SRI-W-P07es otro switch virtual: no esSRI-P07de Kea. Así evitamos que ambos DHCP contesten a los mismos clientes accidentalmente.
1.3 Identificar las dos NIC ANTES de asignar IP
En Windows Server, pulsa Windows+R, escribe ncpa.cpl y pulsa Enter. Se abre Conexiones de red.
- Verás dos adaptadores (nombres como
EthernetyEthernet 2pueden variar). - En VirtualBox, compara la dirección MAC del adaptador NAT e Interno. En Windows, clic derecho → Estado → Detalles o usa PowerShell:
Get-NetAdapter | Format-Table Name, MacAddress, Status
- Clic derecho en la NIC interna → Cambiar nombre →
SRI-LAN. Si quieres, renombra NAT aEthernet-NATpara reconocerla. - Nunca decidas solo por “Ethernet 2”: comprueba primero la MAC/modo VirtualBox.
2. Variante individual Windows · misma dificultad, red diferente
P = puesto 01–40; L = inicial del primer apellido A=01 … Z=26. La red 10.39.P.0/24 corresponde al Windows Server, distinta de Kea (10.37.P.0/24).
| Concepto | Fórmula | Ejemplo docente P07-L03 |
|---|---|---|
| Red VirtualBox | SRI-W-Pxx |
SRI-W-P07 |
| Servidor | 10.39.P.(20+L) |
10.39.7.23/24 |
| Dirección dinámica deseada | . (100+P) … . (129+P) |
.107–.136 |
| Reserva | . (180+L) |
.183 |
| Ámbito total en Windows | . (100+P) … . (180+L) |
.107–.183 |
| Exclusión | . (130+P) … . (180+L) |
.137–.183 |
| Lease | 1800+60×L segundos |
1980 s = 33 min |
| Segunda red (ampliación) | 10.40.P.0/24 |
10.40.7.0/24 |
| Relay LAN A / B | .254 en cada subred |
10.39.7.254 / 10.40.7.254 |
Por qué hacemos un ámbito más amplio que el pool dinámico: Windows Server exige que la IP reservada esté dentro del intervalo total del ámbito. La excluimos de las asignaciones ordinarias, pero permitimos que el cliente reservado la reciba. Referencia: Microsoft Learn · reserva fuera de intervalo y exclusiones.
2.1 Poner IP fija al servidor por GUI · PASOS COMPLETOS
Este es el camino para empezar. PowerShell viene después. Trabaja en Windows Server, no en el cliente.
- Pulsa
Windows+R→ncpa.cpl→ Enter. - Clic derecho en la NIC
SRI-LAN→ Propiedades. - Selecciona Protocolo de Internet versión 4 (TCP/IPv4) → Propiedades.
- Marca «Usar la siguiente dirección IP» e introduce tu variante:
| Campo | P07-L03 |
|---|---|
| Dirección IP | 10.39.7.23 |
| Máscara de subred | 255.255.255.0 |
| Puerta de enlace predeterminada | Dejar en blanco |
| DNS preferido en NIC interna | Dejar en blanco en esta fase |
- Pulsa Aceptar → Cerrar. No has configurado la tarjeta NAT: debe conservar su configuración.
- Abre PowerShell y comprueba:
Get-NetAdapter
Get-NetIPAddress -InterfaceAlias 'SRI-LAN' -AddressFamily IPv4
Get-NetRoute -AddressFamily IPv4
ipconfig /all
Resultado esperado: la NIC SRI-LAN tiene tu IP /24; no aparece una segunda ruta por defecto creada por la LAN interna. La NAT puede seguir proporcionando salida para actualizar. Si modificaste por error NAT, recupérala desde su configuración/instantánea antes de continuar.
- Reinicia Windows Server y repite
ipconfig /all: la IP debe seguir presente. Crea snapshot21_WIN_RED_OK.
2.2 Alternativa de IP con PowerShell · solo en NIC limpia o snapshot
No añadas una segunda IP sin comprobar las existentes. Para una NIC SRI-LAN aún en DHCP y sin IP manual, PowerShell como Administrador:
Get-NetIPAddress -InterfaceAlias 'SRI-LAN' -AddressFamily IPv4
New-NetIPAddress -InterfaceAlias 'SRI-LAN' -IPAddress '10.39.7.23' -PrefixLength 24
Get-NetIPAddress -InterfaceAlias 'SRI-LAN' -AddressFamily IPv4
New-NetIPAddress cambia la configuración según el estado de la NIC. Si ya la configuraste por GUI, no repitas el alta; usa Get-NetIPAddress para verificarla. En una interfaz con configuración manual errónea, identifica primero la IP concreta antes de modificarla: no elimines direcciones de NAT indiscriminadamente.
3. Instalar el rol DHCP · primero la GUI
3.1 Administrador del servidor, clic a clic
- Inicia Administrador del servidor (Server Manager). Si no se abre, búscalo desde Inicio.
- Pulsa Administrar → Agregar roles y características.
- «Antes de comenzar» → Siguiente.
- «Instalación basada en características o en roles» → Siguiente.
- Selecciona el propio servidor Windows → Siguiente.
- Activa Servidor DHCP → acepta «Agregar características»/herramientas solicitadas → Siguiente.
- Avanza por características y confirmación → Instalar. Espera a ver instalación correcta.
- Abre Herramientas → DHCP.
No instalamos Active Directory solo para esta práctica. En grupo de trabajo y red interna aislada, no ejecutes
Add-DhcpServerInDC; la autorización AD corresponde a servidores unidos a dominio y se estudiará al disponer de ese escenario.
3.2 Comprobación por PowerShell elevado
Get-WindowsFeature DHCP
Get-Service DHCPServer
Get-DhcpServerv4Binding
Esperado: rol instalado, servicio disponible y binding DHCP habilitado únicamente sobre la NIC de laboratorio. Si DHCP aparece vinculado también a NAT, usa el alias que devuelve Get-DhcpServerv4Binding:
Set-DhcpServerv4Binding -InterfaceAlias 'Ethernet-NAT' -BindingState $false
Get-DhcpServerv4Binding
No copies Ethernet-NAT si la tuya se llama de otra forma. Deshabilitar el binding DHCP no equivale a deshabilitar la NIC NAT de Windows.
La instalación alternativa del rol, cuando corresponda a un snapshot limpio:
Install-WindowsFeature DHCP -IncludeManagementTools
Referencia: Microsoft Learn · instalación DHCP Windows Server.
4. Crear el ámbito, la exclusión y la reserva por GUI
Antes de empezar: en el servidor ya existe SRI-LAN = 10.39.7.23/24; cliente aún apagado; tenemos snapshot 21_WIN_RED_OK.
4.1 Crear ámbito pero NO activarlo todavía
- Administrador del servidor → Herramientas → DHCP.
- En el árbol izquierdo expande el nombre del servidor → IPv4.
- Clic derecho IPv4 → Ámbito nuevo (New Scope).
- Nombre P07-L03:
SRI-W-P07-L03. Descripción: «DHCP laboratorio Windows». - En «Intervalo de direcciones IP» introduce:
| Campo | P07-L03 |
|---|---|
| Inicio | 10.39.7.107 |
| Final | 10.39.7.183 |
| Máscara | 255.255.255.0 |
- En «Agregar exclusiones» introduce inicio
10.39.7.137, final10.39.7.183→ Agregar → Siguiente. - En duración de concesión: 0 días, 0 horas, 33 minutos para P07-L03. Todos los valores de nuestra fórmula son minutos enteros:
30+Lminutos. No hace falta adivinar segundos en la GUI. - Configurar opciones ahora: no declares puerta de enlace en la LAN base. Si el asistente requiere datos DNS que no tienes, omite lo que permita omitir y revisa después «Opciones de ámbito». No escribas
8.8.8.8ni la IP de un BIND que todavía no hemos instalado solo para completar una pantalla. - WINS: omitir, salvo que el ejercicio indique lo contrario.
- En «Activar ámbito», elige No, lo activaré más adelante. Finaliza.
4.2 Inspeccionar el resultado antes de activarlo
En el árbol IPv4 → Ámbito SRI-W-P07-L03, visita:
- Grupo de direcciones / Address Pool: intervalo y exclusión correctos.
- Concesiones / Address Leases: aún puede estar vacío.
- Reservas / Reservations: aún vacías.
- Opciones de ámbito / Scope Options: no deben aparecer un router o DNS inventados.
4.3 Crear la reserva para un cliente concreto
- Arranca el cliente Windows 11 para consultar su identidad.
Windows+R→cmd→ipconfig /all. - Localiza dirección física de la NIC conectada a
SRI-W-Pxx, no la Wi-Fi del anfitrión ni una NIC NAT. Anota la MAC real. - En servidor → DHCP → IPv4 → tu ámbito → clic derecho Reservas → Nueva reserva.
- Introduce nombre
Reserva-P07-L03, IP10.39.7.183y MAC real del cliente; tipo DHCP o ambos si la interfaz lo ofrece. - Comprueba que aparece en Reservas.
- Clic derecho sobre el ámbito → Activar. Desde este momento puede distribuir concesiones.
Importante: .183 está dentro del intervalo total .107–.183 y en el tramo excluido .137–.183: la exclusión evita reparto dinámico ordinario, no impide la reserva de ese cliente.
Resultado esperado: 30 direcciones dinámicas normales .107–.136, reserva .183, servidor .23 fuera del ámbito y opción router ausente hasta que exista uno real.
5. PowerShell · inventariar primero, reproducir después
Primero aprender GUI, luego automatizar. No ejecutes Add-DhcpServerv4Scope sobre el ámbito que acabas de crear: dará conflicto o duplicidad. Para recrear por PowerShell, recupera snapshot posterior a rol/IP, anterior al ámbito, o elimina el ámbito de ensayo solo si sabes que no contiene trabajo que necesites conservar.
5.1 Inspeccionar lo que has creado por GUI (seguro para empezar)
Abre PowerShell como Administrador en servidor:
Get-Service DHCPServer
Get-DhcpServerv4Binding
Get-DhcpServerv4Scope
Get-DhcpServerv4ExclusionRange -ScopeId 10.39.7.0
Get-DhcpServerv4Reservation -ScopeId 10.39.7.0
Get-DhcpServerv4OptionValue -ScopeId 10.39.7.0
Los tres últimos necesitan que ya exista tu ámbito; sustituye 10.39.7.0 por tu red. Compara cada salida con las ventanas GUI.
5.2 Crear ámbito desde cero con PowerShell · P07-L03
Ejecutar únicamente en entorno limpio después de completar IP y rol. Sustituye la MAC por la del cliente real antes de invocar la reserva.
$P = 7
$L = 3
$Scope = "10.39.$P.0"
$PoolStart = 100 + $P
$PoolEnd = 129 + $P
$Reserved = 180 + $L
$LeaseSeconds = 1800 + 60 * $L
$Suffix = ('p{0:D2}-l{1:D2}.sri.test' -f $P,$L)
# 1) Ámbito total, primero INACTIVO
Add-DhcpServerv4Scope `
-Name ('SRI-W-P{0:D2}-L{1:D2}' -f $P,$L) `
-StartRange "10.39.$P.$PoolStart" `
-EndRange "10.39.$P.$Reserved" `
-SubnetMask 255.255.255.0 `
-LeaseDuration (New-TimeSpan -Seconds $LeaseSeconds) `
-State InActive
# 2) Excluir de reparto ordinario desde 1 IP después del pool hasta la reserva
$ExclusionStart = $PoolEnd + 1
Add-DhcpServerv4ExclusionRange -ScopeId $Scope `
-StartRange "10.39.$P.$ExclusionStart" `
-EndRange "10.39.$P.$Reserved"
# 3) MAC REAL de la tarjeta interna del cliente; sustituir el ejemplo
$ClientMAC = '08-00-27-AA-BB-CC'
Add-DhcpServerv4Reservation -ScopeId $Scope `
-IPAddress "10.39.$P.$Reserved" -ClientId $ClientMAC `
-Name ('Reserva-P{0:D2}-L{1:D2}' -f $P,$L)
# 4) Solo sufijo de laboratorio; BIND9 real llegará en UT02
Set-DhcpServerv4OptionValue -ScopeId $Scope -DnsDomain $Suffix
# 5) Activar solo cuando comprobamos el diseño
Set-DhcpServerv4Scope -ScopeId $Scope -State Active
5.3 Verificar tras PowerShell
Get-DhcpServerv4Scope
Get-DhcpServerv4ExclusionRange -ScopeId $Scope
Get-DhcpServerv4Reservation -ScopeId $Scope
Get-DhcpServerv4OptionValue -ScopeId $Scope
Get-DhcpServerv4Binding
Si falla un cmdlet a mitad: no repitas todo el bloque sin mirar qué objetos ya se crearon. Consulta estado real y ejecuta solo el paso pendiente; para una reconstrucción desde cero, recupera el snapshot previsto.
6. Cliente Windows + Debian · demostrar concesión y DORA
6.1 Windows 11 (segundo equipo)
- VirtualBox del cliente → NIC interna llamada exactamente
SRI-W-Pxx. - Windows del cliente →
Windows+R→ncpa.cpl→ clic derecho NIC interna → Propiedades → IPv4 → Propiedades. - Activa Obtener una dirección IP automáticamente y DNS automático → Aceptar.
- CMD cliente:
ipconfig /all
- Si necesitas una solicitud nueva:
ipconfig /release
ipconfig /renew
ipconfig /all
Cliente reservado: debe recibir .180+L (P07-L03 → 10.39.7.183); cliente no reservado debe recibir una IP dinámica en .100+P … .129+P. Para comprobar dinámica usa otro cliente, o realiza una prueba de identidad controlada en un snapshot; no cambies MAC al azar en el equipo que ya tiene concesión.
Si aparece 169.254.x.x: no ha obtenido IPv4 útil por DHCP; revisa si llega Discover, rol/binding, ámbito activo, exclusión y SRI-W-Pxx antes de cambiar DNS.
6.2 Debian 13 (cliente alternativo por turnos)
Conecta el cliente Linux a SRI-W-Pxx, ajusta su NIC a DHCP mediante su gestor real (UT00), no instales NetworkManager solo porque veas nmcli en otro tutorial.
ip -br address
ip route
command -v dhcpcd
command -v dhclient
Comienza captura antes de encender el cliente para ver su primera solicitud. Compara la IP con el ámbito de Windows y la información obtenida por el servidor.
6.3 Prueba en Windows Server
$Scope = '10.39.7.0' # sustituye por tu red
Get-DhcpServerv4Lease -ScopeId $Scope -AllLeases
Get-DhcpServerv4Reservation -ScopeId $Scope
Una lease en la consola no sustituye la PCAP. Para observar tráfico puedes usar Wireshark en un cliente/lab autorizado o capturarlo desde un equipo Linux conectado a la red interna. Busca DHCPDISCOVER, DHCPOFFER, DHCPREQUEST, DHCPACK, xid, yiaddr, opción 54 y duración. Windows puede utilizar temporizadores de renovación efectivos distintos de los que fijaste expresamente en Kea: observa el paquete, no los inventes.
7. Segunda LAN y relay · ampliación posterior al núcleo
Windows DHCP 10.39.7.23/24 ── LAN A SRI-W-P07 ── Debian RELAY ── LAN B SRI-WB-P07 ── Cliente automático
10.39.7.254 | 10.40.7.254
No lo hagas el primer día: antes debes tener una LAN A que funcione, una reserva demostrada y una captura DORA. En la fase avanzada se necesitan tres VM simultáneas: Windows Server, Debian relay con dos interfaces internas y cliente B.
7.1 Preparar el relay Debian
- Apaga la VM relay. VirtualBox → NIC a
SRI-W-Pxxy otra NIC aSRI-WB-Pxx. Si necesita instalar paquetes, usa NAT temporal en una tercera NIC, pero no confundas sus rutas. - En relay
ip -br link; identifica las dos NIC. Configura IP fija10.39.P.254/24y10.40.P.254/24usando tu gestor (consulta UT00); sin gateway ficticio en esas NIC. - Verifica con
ip -br a. Activa forwarding en relay:
sudo sysctl -w net.ipv4.ip_forward=1
printf 'net.ipv4.ip_forward=1\n' | sudo tee /etc/sysctl.d/90-sri-relay.conf
sudo sysctl --system
- Instala en relay, usando NAT temporal si lo necesita:
sudo apt update
sudo apt install isc-dhcp-relay
- Para demostración en primer plano, evita dos instancias de relay simultáneas y sustituye nombres NIC reales (ejemplo servidor P07-L03):
sudo systemctl stop isc-dhcp-relay 2>/dev/null || true
sudo dhcrelay -4 -d -id NIC_LAN_B -iu NIC_LAN_A 10.39.7.23
isc-dhcp-relay está deprecado en Debian: se utiliza como herramienta de laboratorio, no como propuesta automática de despliegue nuevo corporativo.
7.2 Ruta y segundo ámbito en Windows Server
En PowerShell elevado del servidor Windows, ejemplo P07-L03:
New-NetRoute -DestinationPrefix '10.40.7.0/24' `
-InterfaceAlias 'SRI-LAN' -NextHop '10.39.7.254'
Get-NetRoute -DestinationPrefix '10.40.7.0/24'
Add-DhcpServerv4Scope -Name 'LAN-B-P07-L03' `
-StartRange 10.40.7.107 -EndRange 10.40.7.136 `
-SubnetMask 255.255.255.0 `
-LeaseDuration (New-TimeSpan -Seconds 1980)
Set-DhcpServerv4OptionValue -ScopeId 10.40.7.0 -Router 10.40.7.254
Get-DhcpServerv4Scope
Comprueba antes de cada Add-: si ya existe ruta/ámbito, inspecciónalo y corrige solo el elemento incorrecto; no crees duplicados.
7.3 Cliente de LAN B y evidencia
Cliente conectado únicamente a SRI-WB-Pxx, IPv4 automático. Resultado esperado: IP 10.40.7.107–136, gateway existente 10.40.7.254, servidor DHCP Windows 10.39.7.23. La captura muestra giaddr de LAN B. Si la oferta llega pero no vuelve ACK, revisa rutas y forwarding en ambas direcciones.
La ampliación corporativa puede utilizar RRAS/relay en Windows Server en vez de Debian, pero no lo mezclamos con la ruta mínima mientras aprendemos los conceptos.
8. Logs, copias, incidencias y vuelta atrás
En servidor, PowerShell elevado:
Get-Service DHCPServer
Get-DhcpServerv4Binding
Get-DhcpServerv4Scope
Get-DhcpServerv4Lease -ScopeId 10.39.7.0 -AllLeases
Get-WinEvent -LogName System -MaxEvents 100 |
Where-Object ProviderName -Match 'DHCP'
Consulta también Visor de eventos → Registros de aplicaciones y servicios → Microsoft → Windows → DHCP-Server (según canales disponibles) y los registros de auditoría configurados en tu instalación. No presupongas que todas las versiones presentan rutas idénticas.
Copia del servicio, distinta del snapshot
New-Item -ItemType Directory -Path 'C:\SRI-Backup' -Force
Backup-DhcpServer -Path 'C:\SRI-Backup'
Export-DhcpServer -File 'C:\SRI-Backup\dhcp-export.xml' -Leases -Force
Un snapshot recupera toda la VM; una copia DHCP sirve para guardar/exportar configuración y datos del rol. No importes una copia antigua sobre concesiones activas sin un plan de recuperación.
| Síntoma | ¿Qué mirar primero? |
|---|---|
Cliente sin IP, 169.254.x.x |
Red interna, ámbito activo, binding, DHCP Server, DORA |
| Cliente con IP inesperada | ¿Está en SRI-Pxx de Kea por error?, Option 54, exclusión |
| Reserva no se aplica | MAC de NIC interna, ClientId, lease existente |
| GUI y PowerShell difieren | Ámbito que se consulta, ScopeId, snapshot, tiempo de lease |
| LAN B no recibe | Relay NIC-A/B, giaddr, ruta Windows a LAN B, IP forwarding |
| IP correcta, nombres no resuelven | No confundir: en UT01 todavía no hay BIND9 interno |
9. Cierre · comparar Kea y Windows, enlazar con UT02
El mismo diseño final: 30 direcciones dinámicas, una reserva por cliente, tiempo de concesión calculado, cliente Linux/Windows, prueba DORA y registro de concesiones. La diferencia técnica importante es que Windows utiliza intervalo total del ámbito + exclusión + reserva, mientras Kea permite reservar .183 fuera del pool dinámico.
Al terminar debes explicar qué hiciste, qué comprobó cada comando o captura, qué harías si no hay Offer, por qué no anunciamos un router falso, y cómo recuperarías el servicio. Las prácticas, tickets, entregas y rúbricas individuales se encuentran en Moodle, no en la web pública.
Siguiente: UT02 DNS. Cuando haya servidores DNS reales, vuelve a Kea y Windows DHCP para configurar opción 6 con IPs de servidores que realmente existen y demostrar resolución desde un cliente; solo entonces tiene sentido profundizar en DDNS.
Referencias oficiales
- Microsoft · instalar y configurar DHCP
- Microsoft · ámbitos DHCP
- Microsoft · reservas fuera de intervalo total
- Microsoft · exclusiones y reservas
- Microsoft · Set-DhcpServerv4Binding
- Microsoft · desplegar DHCP con PowerShell
- Debian 13 · isc-dhcp-relay (legado)
Material público para el alumnado · Fco. Javier Cano Granado · versión 2.1 · 23/09/2026.