Script Powershell para cambiar de dirección IP estática a dinámica

Hola geeks ! Aquí Matias en un nuevo artículo para ustedes !
Espero que les sirva y nos vemos en el próximo tutorial

He estado trabajando en la validación de un plan de migración de servidores de correo electrónico que ha requerido utilizar servidores de prueba aislados de la red de producción. Como son fuera de red, tengo que cambiar con frecuencia mi portátil de producción en redes de prueba, lo que implica reconfigurar mi tarjeta de red de direcciones IP dinámicas a estáticas.

Podría utilizar la capacidad de dirección IP alternativa de Windows XP para cambiar las direcciones IP, pero creo que tarda varios minutos a XP para hacer el cambio automático. Quería crear un script de configuración que hiciera los cambios deseados para poder guardar accesos directos a estos scripts en mi escritorio, que permitirían modificaciones rápidas de la configuración de la NIC.

Originalmente, intenté utilizar el comando netsh para especificar la configuración de la NIC, pero a pesar de toda la sintaxis de ejemplo que encontré en línea, sólo pude hacer funcionar los cambios estáticos en dinámicos, no los dinámicos a estáticos.

Finalmente decidí utilizar Powershell para hacer estos cambios. He encontrado los siguientes scripts en PowerShell Pro y los he modificado ligeramente para mi propio uso.

### set static IP addressing - save as setstatic.ps1
 $NICs = Get-WMIObject Win32_NetworkAdapterConfiguration `
 | where$_.IPEnabled -eq "TRUE"
 Foreach($NIC in $NICs) 
   $NIC.EnableStatic("192.168.1.5", "255.255.255.0")
   $NIC.SetGateways("192.168.1.254")
   $DNSServers = "198.168.1.1","198.168.1.1"
   $NIC.SetDNSServerSearchOrder($DNSServers)
   $NIC.SetDynamicDNSRegistration("FALSE")
 
 ###
### set dynamic addressing - save as setdynamic.ps1
 $NICs = Get-WMIObject Win32_NetworkAdapterConfiguration `
 | where$_.IPEnabled -eq "TRUE"
 Foreach($NIC in $NICs) 
  $NIC.EnableDHCP()
  $NIC.SetDNSServerSearchOrder()
 
 ###

Después he creado accesos directos a los dos archivos .ps1 con los objetivos siguientes:

%windir%system32WindowsPowerShellv1.0powershell.exe c:scriptssetdynamic.ps1

%windir%system32WindowsPowerShellv1.0powershell.exe c:scriptssetstatic.ps1

He guardado cada atajo a mi escritorio y ahora puedo cambiar las direcciones IP en unos 15 segundos.

Deja un comentario