Migrazione DHCP e DNS da Windows Server 2008 a 2022: guida completa passo‑passo senza downtime

Guida pratica e completa per migrare DHCP e DNS da Windows Server 2008 a Windows Server 2022 con downtime minimo: come esportare, importare, autorizzare in Active Directory e validare la continuità di servizio senza perdere lease o record.

Indice

Scenario e obiettivo

Molte infrastrutture ospitano ancora servizi core (DHCP e DNS) su Windows Server 2008/2008 R2. L’obiettivo è trasferire in modo sicuro ambiti, prenotazioni, opzioni e lease DHCP e tutte le zone e i record DNS verso una nuova VM Windows Server 2022, decommissionando la vecchia macchina senza interruzioni significative né perdita di configurazioni.

Panoramica della strategia

La migrazione si basa su tre principi operativi:

  1. Preparare il nuovo server con i ruoli necessari, disabilitando temporaneamente l’erogazione di lease.
  2. Eseguire un export coerente della configurazione/DB DHCP e delle zone DNS dal 2008, quindi importare sul 2022.
  3. Tagliare il punto unico di verità spostando le fonti (autorizzazione AD per DHCP, IP helper sui router/relay, zona primaria DNS) sul nuovo server e validare con test mirati.

Piano di migrazione sintetico

PassoAzioneNote importanti
0. Finestra di manutenzioneEseguire le operazioni in orario di basso traffico; se esiste una relazione di failover DHCP tra due server moderni, rimuoverla temporaneamente.Riduce il rischio di conflitti e richieste di IP durante lo switch.
1. Preparazione nuovo serverInstallare i ruoli DHCP Server e DNS Server su Windows Server 2022, ma non avviare ancora il servizio DHCP.Verificare NIC/binding e firewall; non autorizzare ancora in AD.
2. Backup & export DHCP sul vecchio serverIn PowerShell con privilegi elevati:
Backup-DhcpServer -Path C:\DHCPBackup
Export-DhcpServer -File C:\dhcpexport.xml -Leases
Il primo comando crea un backup del DB; il secondo esporta configurazione + lease attivi.
3. Arresto DHCP sul vecchio servernet stop dhcpserverEvita doppie assegnazioni mentre si importa e si autorizza il nuovo server.
4. Import su Windows Server 2022Copiare dhcpexport.xml e poi:
Import-DhcpServer -File C:\dhcpexport.xml -BackupPath C:\DHCPBackup -Leases
Ricrea ambiti, opzioni e lease esistenti.
5. Riavvio/avvio servizioRiavviare il servizio DHCP (o il server) e autorizzare il nuovo server in Active Directory.Convalida che il servizio sia authorized e in ascolto sull’interfaccia corretta.
6. Aggiornare relay/IP helperSe in rete sono presenti relay agent o switch/router con IP helper, puntarli al nuovo indirizzo del server DHCP.Indispensabile in reti routed/VLAN multiple.
7. Ripristino failoverRicreare la relazione di failover tra il nuovo server e l’eventuale partner supportato (2012+).Stabilizza il servizio e riduce tempi di disservizio futuri.
8. DNSSe le zone sono AD‑integrated: basta installare il ruolo DNS; le zone si replicano automaticamente via AD. Se stand‑alone: esportarle (dnscmd /zoneexport) o usare il classico secondary → transfer → primary sul nuovo server, poi decommissionare quello vecchio.Verificare forwarder, conditional forwarder e scavenging.

Prerequisiti e checklist pre‑migrazione

  • Permessi: diritti da Enterprise Admin/Domain Admin per autorizzare DHCP in AD e gestire DNS. Per server membri, privilegi locali da amministratore.
  • Membro del dominio: il 2022 deve essere joinato al dominio. Se ospiterà zone AD‑integrate, deve essere (o diventare) Domain Controller.
  • Spazio disco: directory DHCP (%SystemRoot%\System32\dhcp) e log; directory DNS per file-based zones.
  • Finestre di manutenzione e comunicazione agli stakeholder; approccio change & rollback definito.
  • Inventario:
    • Elenco ambiti IPv4/IPv6, prenotazioni e opzioni (003 gateway, 006 DNS, 015 suffix, 066/067 PXE, eventuale 252 WPAD).
    • Zone DNS: AD‑integrate vs standard, forwarder, conditional forwarder, stub zone, reverse lookup zone.
    • Relay/IP helper per ogni VLAN e apparecchiature coinvolte.

Preparazione del nuovo Windows Server 2022

Installare i ruoli senza ancora erogare lease.

# Eseguire su Windows Server 2022 (PowerShell)
Install-WindowsFeature -Name DHCP -IncludeManagementTools
Install-WindowsFeature -Name DNS -IncludeManagementTools

Assicurarsi che il servizio DHCP sia arrestato e disabilitato temporaneamente

Stop-Service -Name DhcpServer -ErrorAction SilentlyContinue
Set-Service -Name DhcpServer -StartupType Manual

Verificare i binding di rete (scegliere la NIC corretta)

Get-DhcpServerv4Binding

Esempio: abilitare solo la scheda "LAN"

Set-DhcpServerv4Binding -InterfaceAlias "LAN" -BindingState $true 

Consigli:

  • Assegnare al nuovo server lo stesso DNS suffix del dominio, impostare primary DNS verso un DC autorevole (o se il 2022 diventerà DC, impostare loopback + un DC).
  • Pre‑creare la cartella per i backup (es. C:\DHCPBackup).

Export del DHCP dal 2008: due metodi sicuri

Metodo con PowerShell remoto (consigliato)

Se il vecchio server è 2008/2008 R2, non dispone nativamente dei cmdlet DHCP. È però possibile usare una postazione di gestione (2012 o successivo, o direttamente il 2022) con gli strumenti RSAT per puntare in remoto al 2008:

$OldDhcp = "SRV-2008"
$ExportPath = "C:\temp\dhcpexport.xml"
$BackupPath = "C:\temp\DHCPBackup"

Esegui dal nuovo 2022 (o da una postazione con RSAT DHCP)

Backup-DhcpServer -ComputerName $OldDhcp -Path $BackupPath
Export-DhcpServer -ComputerName $OldDhcp -Leases -File $ExportPath

Copia i file sul 2022 (esempio semplice)

Copy-Item $ExportPath -Destination "C:\temp"
Copy-Item -Path $BackupPath -Destination "C:" -Recurse 

Metodo con NETSH direttamente sul 2008

Alternativa pienamente supportata per ogni edizione di 2008:

rem Eseguire sul 2008 con prompt elevato
netsh dhcp server export C:\temp\dhcp-2008.txt all
rem Opzionale: backup del database
netsh dhcp server backup C:\DHCPBackup

Il file dhcp-2008.txt contiene configurazioni e lease; sarà importabile sul 2022.

Arresto del servizio DHCP sul 2008

Per evitare doppie assegnazioni durante lo switch:

net stop dhcpserver

Best practice: disabilitare l’avvio automatico finché la migrazione non è chiusa.

Import del DHCP sul 2022 e autorizzazione in AD

Import con file XML (cmdlet)

# Assicurarsi che i file siano in C:\temp sul 2022
Import-DhcpServer -File C:\temp\dhcpexport.xml -BackupPath C:\DHCPBackup -Leases

Autorizzare il server in Active Directory

Add-DhcpServerInDC -DnsName "SRV-2022.domain.local" -IpAddress 10.10.10.10

Avviare e mettere in Automatico

Start-Service DhcpServer
Set-Service DhcpServer -StartupType Automatic

Verifiche iniziali

Get-DhcpServerInDC
Get-DhcpServerv4Scope
Get-DhcpServerv4OptionValue -All 

Import con NETSH (da dump del 2008)

rem Eseguire sul 2022 con prompt elevato
netsh dhcp server import C:\temp\dhcp-2008.txt all

DNS dynamic updates: dopo l’import, aprire le proprietà IPv4 del server DHCP (scheda DNS) e impostare Aggiorna sempre dinamicamente i record DNS e Elimina i record quando la concessione scade. In ambienti con aggiornamenti DNS sicuri, configurare le credenziali dedicate:

# Opzionale: impostare un account dedicato per gli aggiornamenti DNS sicuri
$cred = Get-Credential  # es. DOMINIO\dhcpdns-updater
Set-DhcpServerDnsCredential -Credential $cred

Aggiornamento dei relay/IP helper

Se la rete usa router/switch L3 come relay, ogni SVI/interfaccia VLAN punta a uno o più DHCP server mediante IP helper. Dopo l’avvio del 2022, aggiornare gli helper al nuovo IP. Esempio generico in sintassi Cisco:

interface Vlan10
 ip helper-address 10.10.10.10  ! nuovo DHCP
 no ip helper-address 10.10.10.5 ! vecchio DHCP (rimuovere quando chiuso)

Eseguire la modifica per tutte le VLAN che ricevono IP dal DHCP. In ambienti con relay software, aggiornare la configurazione equivalente.

Ripristino o creazione del failover DHCP

Il failover nativo DHCP è supportato da Windows Server 2012 in avanti. Dopo aver reso operativo il 2022, è consigliato abilitare un partner per alta affidabilità:

# Esempio: creare failover in modalità load-balance 50/50 per tutti gli ambiti
Add-DhcpServerv4Failover `
  -ComputerName "SRV-2022" `
  -PartnerServer "SRV-2022B" `
  -Name "FO-DHCP" `
  -ScopeId (Get-DhcpServerv4Scope).ScopeId `
  -LoadBalancePercent 50 `
  -SharedSecret (Read-Host -AsSecureString "Shared Secret")

In alternativa, usare hot-standby con percentuale riserva (es. 5–10%) per il partner.

Migrazione del DNS

Zone AD‑integrate

Se il nuovo server è (o diventerà) Domain Controller e si installa il ruolo DNS, le zone AD‑integrate si replicano via Active Directory. Verificare l’avvenuta replica:

Get-DnsServerZone
Get-DnsServerZone -Name "dominio.local" | Format-List *

Controllare inoltre forwarder e conditional forwarder:

Get-DnsServerForwarder
Get-DnsServerZone -ZoneType Forwarder

Zone standard (file‑based)

Per zone non integrate in AD sono possibili due percorsi.

Opzione export → import (rapida)

rem Sul 2008
dnscmd /zoneexport dominio.local dominio.local.dns
dnscmd /zoneexport 10.in-addr.arpa 10.in-addr.arpa.dns

Copiare i file sul 2022 e creare le zone primarie:

Add-DnsServerPrimaryZone -Name "dominio.local" -ZoneFile "dominio.local.dns" -DynamicUpdate Secure
Add-DnsServerPrimaryZone -NetworkId "10.0.0.0/8" -ZoneFile "10.in-addr.arpa.dns"

Opzione secondary → transfer → primary (quasi zero‑downtime)

  1. Creare sul 2022 una secondary zone che punti al 2008:
Add-DnsServerSecondaryZone -Name "dominio.local" -ZoneFile "dominio.local.dns" -MasterServers 10.10.10.5
  1. Attendere il completamento del zone transfer e validare i record.
  2. Convertire a primaria sul 2022 e, se desiderato, AD‑integrare la zona:
# Promuovi la zona a primaria
ConvertTo-DnsServerPrimaryZone -Name "dominio.local" -PassThru

Opzionale: memorizza in AD e definisci l'ambito di replica (dominio o foresta)

Set-DnsServerPrimaryZone -Name "dominio.local" -ReplicationScope Domain 

Alla fine, aggiornare SOA e NS per riflettere il nuovo server autorevole, abilitare aging & scavenging coerenti e rimuovere la vecchia autorità dal 2008.

Elementi da non dimenticare

  • Reverse lookup zone per ogni subnet; garantiscono risoluzione PTR.
  • Conditional forwarder verso domini partner; se AD‑integrati, si replicano tra DC, altrimenti ricrearli manualmente.
  • Root hints e forwarder generali (es. DNS pubblici o firewall DNS).
  • Scavenging: impostare no‑refresh/refresh interval adeguati (tipicamente 7/7 giorni) e abilitarli sia a livello server sia zona.

Verifica post‑migrazione

Eseguire una batteria di controlli tecnici subito dopo lo switch.

Controlli DHCP

# Ambiti e stato
Get-DhcpServerv4Scope | Sort-Object ScopeId

Lease correnti

Get-DhcpServerv4Lease -AllLeases | Select-Object IPAddress,ClientId,HostName,ScopeId | Format-Table -Auto

Opzioni a livello server e per ambito

Get-DhcpServerv4OptionValue -All | Format-Table OptionId,Value,PolicyName,ScopeId

Statistiche veloci

Get-DhcpServerv4Statistics 

Testare da un client: ipconfig /release seguito da ipconfig /renew e verificare che il server DHCP indicato sia il nuovo 2022.

Controlli DNS

# Record critici
Resolve-DnsName -Server 10.10.10.10 dc01.dominio.local
Resolve-DnsName -Server 10.10.10.10 -Type SRV ldap.tcp.dc._msdcs.dominio.local
Resolve-DnsName -Server 10.10.10.10 -Name www.esempio.it

Zone presenti e stato aging

Get-DnsServerZone | Select-Object ZoneName,ZoneType,IsAutoCreated,IsDsIntegrated

Forwarder configurati

Get-DnsServerForwarder 

Piano di rollback

Conservare la VM 2008 spenta ma non dismessa per alcuni giorni. In caso di anomalie:

  1. Arrestare subito il servizio DHCP sul 2022 (Stop-Service DhcpServer), rimuovere l’autorizzazione in AD se necessario.
  2. Riaccendere il 2008 e avviare il DHCP (net start dhcpserver), ripuntare temporaneamente gli IP helper al vecchio server.
  3. Per il DNS, riportare la zona primaria/autorità sul 2008 o ri‑attivare la primaria precedente.

Pulizia finale

  • Quando tutto è stabile, rimuovere l’autorizzazione DHCP del 2008:
    Remove-DhcpServerInDC -DnsName "SRV-2008.dominio.local" -IpAddress 10.10.10.5
    oppure via NETSH:
    netsh dhcp delete server SRV-2008 10.10.10.5
  • Disinstallare i ruoli dal 2008 (DHCP e DNS), spegnere e decommissionare la VM secondo le policy.

Buone pratiche e accortezze

  • Allineamento orario/NTP sui server coinvolti per evitare problemi Kerberos e aggiornamenti DNS sicuri.
  • Lease time adeguato: durante la finestra di migrazione si può temporaneamente ridurre il lease time degli ambiti per velocizzare l’allineamento.
  • Interfacce multiple: verificare i binding DHCP, abilitando solo la NIC corretta (niente binding sulla DMZ se non necessario).
  • PXE/WDS: se si usano opzioni 066/067, ricontrollare i valori dopo l’import e testare un boot PXE.
  • IPv6: se presenti ambiti v6, replicare i passaggi con i cmdlet Get/Set/Add/Remove-DhcpServerv6* e validare RA/DHCPv6.
  • Logging: i log DHCP si trovano in %SystemRoot%\System32\dhcp (DhcpSrvLog-*.log); per DNS controllare anche Event Viewer → DNS Server.
  • Sicurezza: usare un account dedicato a privilegi minimi per gli update DNS del DHCP (no admin del dominio), efficace contro HTTP/LLMNR spoof e collisioni record.

Diagnostica rapida dei problemi comuni

SintomoPossibile causaRisoluzione
I client non ricevono IPServer DHCP non autorizzato o servizio non avviato; relay non aggiornatiVerificare Get-DhcpServerInDC, avviare il servizio, aggiornare IP helper
Conflitti di IPDHCP attivo su entrambi i serverArrestare DHCP sul 2008 e su eventuali server non previsti
DNS non risolve alcuni hostZone non trasferite o forwarder mancantiControllare Get-DnsServerZone e Get-DnsServerForwarder, completare il transfer
Record SRV AD mancantiDNS non AD‑integrato o aggiornamenti sicuri fallitiIntegrare in AD, verificare credenziali DHCP per update sicuri
PXE non funzionaOpzioni 066/067 non migrate o cambiateReimpostare 066/067 e testare un avvio rete

Esempio di runbook end‑to‑end

  1. Pre‑change: snapshot/backup VM 2008, creare C:\temp su entrambi i server, aprire la finestra di manutenzione, notificare utenti.
  2. Preparazione 2022: installare ruoli, arrestare DHCP, verificare NIC/binding.
  3. Export DHCP (PowerShell remoto o NETSH) e backup DB.
  4. Stop DHCP 2008: net stop dhcpserver.
  5. Import DHCP 2022: Import-DhcpServer ... o netsh ... import ....
  6. Autorizzazione AD: Add-DhcpServerInDC ..., avvio servizio.
  7. Relay/IP helper: aggiornare verso il nuovo IP.
  8. DNS: replicare o trasferire le zone; aggiornare SOA/NS e forwarder.
  9. Validazione: test lease e risoluzione, controlli log/eventi, monitoraggio.
  10. Pulizia: rimuovere autorizzazione del 2008, disinstallare ruoli, spegnere la VM.

Domande frequenti

È possibile migrare i lease senza far cadere le sessioni dei client?
Sì: l’uso di -Leases nell’export/import (o il dump NETSH) trasferisce lo stato dei lease, consentendo ai client di mantenere l’IP fino alla scadenza o al rinnovo.

Il 2022 deve avere lo stesso indirizzo IP del 2008?
Non è necessario. L’importante è aggiornare gli IP helper/relay e, se utilizzati, i riferimenti statici (es. stampanti che puntano al server DHCP come informazione).

Le zone AD‑integrate compaiono automaticamente sul 2022?
Solo se il 2022 è un Domain Controller con ruolo DNS. Un server membro non può ospitare zone AD‑integrate.

Come verifico che non ci siano server DHCP “rogue”?
Eseguire Get-DhcpServerInDC per l’elenco dei server autorizzati; sui router, filtrare gli helper verso i soli server desiderati.

Posso passare direttamente da file‑based a AD‑integrated?
Sì: una volta creata la zona primaria sul 2022, convertirla a AD‑integrata e scegliere l’ambito di replica appropriato (Domain o Forest), quindi validare la replica.

Checklist finale di convalida

  • Gli ambiti mostrano In attesa/In esecuzione senza errori e le percentuali di utilizzo sono attese.
  • I client rinnovano correttamente e i nuovi lease provengono dal 2022.
  • Le zone forward/reverse risolvono correttamente record A/PTR, SRV e CNAME critici.
  • Forwarder e conditional forwarder sono presenti e operativi.
  • DHCP autorizzato in AD, vecchio server rimosso da Authorized Servers.
  • Event viewer pulito da errori critici per DHCP/DNS nelle ultime ore.

Note operative avanzate

  • Opzioni differenziate per VLAN: dopo l’import, ricontrollare le policy per ambito (se presenti in ambienti più moderni) e i link‑layer filters.
  • SOA/NS: portare il primary server del record SOA al 2022 e aggiungere/rimuovere i name server coerenti.
  • TTL: durante il cutover, TTL più brevi su record sensibili (es. vpn, mail, web) facilitano il cambio rapido.
  • Monitoraggio: abilitare Audit su DHCP e impostare alert per soglie di esaurimento pool (80/90%).

Conclusioni

Seguendo il percorso qui descritto si ottiene una migrazione ordinata e ripetibile con impatto minimo per gli utenti. La copia dei lease, il controllo dell’autorizzazione AD e l’aggiornamento degli IP helper garantiscono continuità, mentre la strategia secondary → primary per DNS consente di ridurre praticamente a zero il downtime dei servizi di risoluzione nomi.


Comandi rapidi riassuntivi

# 1) Nuovo server (2022)
Install-WindowsFeature DHCP,DNS -IncludeManagementTools
Stop-Service DhcpServer; Set-Service DhcpServer -StartupType Manual

2) Export dal 2008 (da postazione RSAT)

Backup-DhcpServer -ComputerName SRV-2008 -Path C:\temp\DHCPBackup
Export-DhcpServer -ComputerName SRV-2008 -Leases -File C:\temp\dhcpexport.xml

3) Stop sul 2008

sc \SRV-2008 stop dhcpserver

4) Import sul 2022

Import-DhcpServer -File C:\temp\dhcpexport.xml -BackupPath C:\DHCPBackup -Leases
Add-DhcpServerInDC -DnsName SRV-2022.dominio.local -IpAddress 10.10.10.10
Start-Service DhcpServer; Set-Service DhcpServer -StartupType Automatic

5) DNS (AD-integrato: automaticamente)

Get-DnsServerZone

6) DNS (file-based: secondary -> primary)

Add-DnsServerSecondaryZone -Name "dominio.local" -ZoneFile "dominio.local.dns" -MasterServers 10.10.10.5
ConvertTo-DnsServerPrimaryZone -Name "dominio.local" 

Questa procedura consente una transizione ordinata con downtime minimo e preserva sia le configurazioni DHCP che i record DNS. Tenere il vecchio server spento ma non dismesso per qualche giorno consente un rollback veloce in caso di necessità.

Indice