DHCP e aggiornamento dinamico record DNS

Se di installa il servizio DHCP su un Domain Controller all’avvio del servizio DHCP viene registrato il seguente avviso nel registro Sistema:

Tipo evento: Avviso
Origine evento: DhcpServer
Categoria evento: Nessuno
ID evento: 1056
Descrizione:
Il servizio DHCP ha rilevato di essere in esecuzione su un controller di dominio e di non disporre di credenziali configurate per l’uso con le registrazioni DNS dinamiche  iniziate dal servizio DHCP.  Questa non è una configurazione di protezione consigliata.   Le credenziali per le registrazioni DNS dinamiche si possono configurare utilizzando la riga di comando “netsh dhcp server set dnscredentials” o tramite lo  strumento di amministrazione DHCP

Il motivo è dovuto al fatto che per impostazione predefinita il servizio DHCP è configurato per eseguire l’aggiornamento dinamico dei record DNS. Per evitare il warnig occore configurare il servizio DHCP come indicato nel seguente Event ID 1056 — DHCP Server DNS Registration (e come suggerito nella descrizione dell’avviso):

  1. Creare un utente che verrà utilizzato per l’aggiornamento dinamico dei record DNS.
  2. Eseguire il seguente comando per impostare sul servizio DHCP l’utilizzo dell’utente creato per l’aggiornamento dinamico dei record DNS:
    netsh dhcp server set dnscredentials username domainname password
  3. Riavviare il servizio DHCP tramite il comando:
    net stop DHCPServer && net start DHCPServer
  4. Per verificare che le credenziali siano state impostare correttamente utilizzare il comando:
    netsh dhcp server show dnscredentials

In Windows Server 2003 l’aggiornamento dinamico dei record DNS può generare un memory leak causato dalla Dnsapi.dll come indicato nel seguente A memory leak occurs if the DNS dynamic update protocol is enabled on a DHCP server that is running Windows Server 2003.

Io l’ho riscontrato nel caso in cui il servizio DHCP venga eseguito sul Domain Controller dove i Private Bytes del processo tcpsvcs.exe erano superiori alla memoria RAM installata sul computer.

le soluzioni sono per evitare tale problema sono quattro:

  1. Disabilitare l’aggiornamento automatico dei record DNS (non sempre questa soluzione può essere adottata a riguardo si veda il post DHCP e aggiornamento dinamico record DNS II) e riavviare il servizio DCHP
  2. Eseguire il servizio DHCP su un server membro e non sul Domain Controller
  3. Riavviare in servizio DHCP ad esempio una volta ogni 24 ore schedulando l’esecuzione del comando:
    net stop DHCPServer && net start DHCPServer
  4. Installare l’hotfix indicata nella KB 939928, che va richiesta al supporto Microsoft e che ha come prerequisiti il Service Pack 1 o 2 di Windows Server 2003, al termine dell’installazione occorre riavviare il sistema.