Spesso mi capitano nuove aziende che adottano sui propri PC gli IP statici, e quindi ho creato questi script per evitare di passare per ogni computer e cambiare la configurazione della scheda di rete.
Ecco come fare…
Nel vostro server create, in una share condivisa raggiungibile da tutti i client di un dominio, il file AbilitaDHCP.vbs.
Lo script sarà eseguito da remoto su ogni PC tramite l’utility PSEXEC (quindi scaricate i e scompattate il file psexec.exe nella cartella c:\windows\system32 del server da cui lancerete gli script).
Ecco lo script VBS da creare e condividere:
strComputer = "."
Set objWMIService = GetObject(_
"winmgmts:\\" & strComputer & "\root\cimv2")
Set colNetAdapters = objWMIService.ExecQuery _
("Select * from Win32_NetworkAdapterConfiguration " _
& "where IPEnabled=TRUE")
For Each objNetAdapter In colNetAdapters
errEnable = objNetAdapter.EnableDHCP()
errEnable = objNetAdapter.SetDNSServerSearchOrder()
Next
Ora create lo script DHCP-DNS-auto-da-remoto.ps1 come di seguito indicato. Quando lo lancerete vi sarà chiesto di inserire il nome del PC;
lo script quindi verificherà su tutte le schede di rete abilitate del PC se il client DHCP è già attivo e poi chiederà se volete abilitarlo.
$PC = read-host "Inserire il nome del PC da controllare"
$test=Get-WmiObject win32_networkadapterconfiguration -computername $PC -erroraction silentlycontinue | where {($_.IPenabled)}
if ($test) {
$test|ft ipaddress, dhcpenabled, dhcpserver ,DNSServerSearchOrder -AutoSize
if ($test.dhcpenabled) {
write-host "L'host"$PC "ha gia' il DHCP attivo"
}
else {
$Risposta = read-host "Vuoi abilitare DHCP/DNS automatici su"$PC"? (S/N)"
if ($Risposta -eq "S") {
psexec -accepteula \\$PC cscript /B /NoLogo \\server\condivisione\AbilitaDHCP.vbs
psexec -accepteula \\$PC ipconfig /all
read-host
}
}
}
else {
write-host Host $PC non raggiungibile
}

Devi effettuare l'accesso per postare un commento.