[adinserter name="Despues de Cabecera"]

Obtener dirección IP, Subnet, Gateway, Servidor DNS y MAC de todos los equipos en la Red

Tener la información completa de la configuración de Red de cada equipo es primordial para tener un buen control la Red local de una empresa, asi que para obtener dirección IP, Subnet, Gateway, Servidor DNS y MAC tenemos varias opciones para obtener información remotamente y obtener esta en un archivo Excel, el cual esto simplifica bastante nuestro trabajo y optimiza el tiempo de elaboración, tenemos varias herramientas que Windows nos ofrece, en este caso hablamos de PowerShell, veamos como nos ayuda a realizar esta tarea.

 

Script Powershell

[cmdletbinding()]
param (
 [parameter(ValueFromPipeline=$true,ValueFromPipelineByPropertyName=$true)]
    [string[]]$ComputerName = $env:computername
)            

begin {}
process {
 foreach ($Computer in $ComputerName) {
  if(Test-Connection -ComputerName $Computer -Count 1 -ea 0) {
   $Networks = Get-WmiObject Win32_NetworkAdapterConfiguration -ComputerName $Computer | ? {$_.IPEnabled}
   foreach ($Network in $Networks) {
    $IPAddress  = $Network.IpAddress[0]
    $SubnetMask  = $Network.IPSubnet[0]
    $DefaultGateway = $Network.DefaultIPGateway
    $DNSServers  = $Network.DNSServerSearchOrder
    $IsDHCPEnabled = $false
    If($network.DHCPEnabled) {
     $IsDHCPEnabled = $true
    }
    $MACAddress  = $Network.MACAddress
    $OutputObj  = New-Object -Type PSObject
    $OutputObj | Add-Member -MemberType NoteProperty -Name ComputerName -Value $Computer.ToUpper()
    $OutputObj | Add-Member -MemberType NoteProperty -Name IPAddress -Value $IPAddress
    $OutputObj | Add-Member -MemberType NoteProperty -Name SubnetMask -Value $SubnetMask
    $OutputObj | Add-Member -MemberType NoteProperty -Name Gateway -Value ($DefaultGateway -join ",")
    $OutputObj | Add-Member -MemberType NoteProperty -Name IsDHCPEnabled -Value $IsDHCPEnabled
    $OutputObj | Add-Member -MemberType NoteProperty -Name DNSServers -Value ($DNSServers  -join ",")
    $OutputObj | Add-Member -MemberType NoteProperty -Name MACAddress -Value $MACAddress
    $OutputObj
   }
  }
 }
}            

end {}

 Instrucciones de Uso

  • Para hacer uso de Powershell debemos tener instalado Windows Management Framework.
  • Copiamos el script anterior, lo pegamos en un notepad y lo guardamos con extensión NombreArchivo.ps1 o descargamos el archivo ya creado a continuación.
[wpfilebase tag=file id=71 /]
  • Ahora crearemos el listado en un archivo TXT (notepad) de todos los equipos de nuestra red o de los equipos que deseamos obtener la información, el archivo debe contener los nombres de los equipos como se muestra en la imagen y guardamos este  [Ver como crear inventario de red automático]. Ejemplo TXT Inventario
  • Una vez creados guardamos los archivos en una carpeta de fácil acceso por medio de comando por ejemplo alguna carpeta en el C:\ en mi caso tengo una carpeta en el C:\  llamada Scripts.
  • Ahora abrimos Powershell donde ejecutaremos el script con el siguiente comando [Posible error al ejecutar ver aquí como solucionarlo]:
Leer:  SQL - Buscar tabla o columna en una base de datos de SQL Server

get-Content C:\NombreArchivoListaPCs.txt | C:\Scripts\NombreArchivoScript.ps1

  • Si lo queremos exportar a un documento Excel ejecutamos la siguiente linea:

get-Content C:\NombreArchivoListaPCs.txt | C:\Scripts\NombreArchivoScript.ps1 | Export-csv C:\Equipos_IP_FIJA_DINAMICA.csv -notype

  • El cual obtendremos la información que deseamos obtener de la siguiente forma.Archivo Exportado Ejemplo
  •  A este punto solo queda verificar algunos datos, como verificar si pudo obtener todos los datos de los equipos.
Fernando O.

Fernando O.

Soy analista de sistemas actualmente trabajo en una empresa con mas de 200 empleados que utilizan equipo de computo al cual se les da soporte en el departamento.
Uno de mis pasatiempos fuera de la empresa es escribir artículos para PortalMasTips donde documento los problemas, inquietudes y detalles interesantes que se presentan.
Fernando O.

Latest posts by Fernando O. (see all)

Deja una respuesta

avatar
 
Archivos de fotos e imágenes
 
 
 
Archivos de audio y video
 
 
 
Otros tipos de archivos
 
 
 

Este sitio usa Akismet para reducir el spam. Aprende cómo se procesan los datos de tus comentarios.

  Suscribir  
Notificar de
Compartir
Twittear
Pin
Leer entrada anterior
Logo tips powershell 2
PowerShell – Solución error cannot be loaded because running scripts is disabled on this system

Logo tips powershell
PowerShell – Script para saber que computadoras tienen IP fija y dinámica en la red

Crear respaldo de archivos automático con Freefilesync 3
Crear respaldo de archivos automático con Freefilesync

Cerrar