Network Information with IP Adddress

This topic contains 4 replies, has 3 voices, and was last updated by  Helder Guzman 2 years, 2 months ago.

  • Author
    Posts
  • #30093

    Helder Guzman
    Participant

    Hi I need your help

    Creating a report where I need the information of each network adapter that is enabled and within this network the IP information of that adapter.

    here what I have so far

    $ComputerName = "wfcp5606i.wf.local"
    $cred = Get-Credential -Message "User Info for Domain Server is in" -UserName "wf\u413628-a"

    $data = Get-WmiObject -Computer $ComputerName Win32_Networkadapter -Credential $cred -Filter "NetEnabled=True"
    $data | select *

    $adapter = 0

    foreach($network in $data){

    $adapter += 1

    $obj = New-Object -TypeName psobject

    $props = [ordered]@{ Adapter = $adapter
    Manufacturer = $network.Manufacturer
    AdapterDescription = $network.Description
    Connection = $network.NetConnectionID
    'Speed GB' = $network.Speed/1000/1000/1000 }

    $obj = New-Object -TypeName psobject -Property $props

    $ipdata = Get-WmiObject win32_networkadapterconfiguration -ComputerName $ComputerName -Credential $cred -Filter "IPEnabled=True"

    foreach ($IPinfo in $ipdata){
    Add-Member -InputObject $obj -MemberType NoteProperty -Name 'IPAddress' -Value $IPinfo.IPAddress
    Add-Member -InputObject $obj -MemberType NoteProperty -Name 'Submask' -Value $IPinfo.IPSubnet
    Add-Member -InputObject $obj -MemberType NoteProperty -Name 'Gateway' -Value $IPinfo.DefaultIPGateway
    Add-Member -InputObject $obj -MemberType NoteProperty -Name 'DNSServers' -Value $IPinfo.DnsServerSearchOrder
    Add-Member -InputObject $obj -MemberType NoteProperty -Name 'WinServers' -Value $IPinfo.WinsPrimaryServer
    Add-Member -InputObject $obj -MemberType NoteProperty -Name 'DaomainSuffixes' -Value $IPinfo.DNSDomainSuffixSearchOrder

    }

    }

    Write-Output $obj

    $adapter

    $obj |ConvertTo-Html -as list |out-file C:\Scripts\nic.html

    ii "C:\Scripts\nic.html"

    As you can see, I started with for each adapter pull information and add it to a new object. then Pull the IP information for that adapter.

    here is the output

    TypeName: System.Management.Automation.PSCustomObject

    Name MemberType Definition
    —- ———- ———-
    Equals Method bool Equals(System.Object obj)
    GetHashCode Method int GetHashCode()
    GetType Method type GetType()
    ToString Method string ToString()
    Adapter NoteProperty System.Int32 Adapter=1
    AdapterDescription NoteProperty System.String AdapterDescription=vmxnet3 Ethernet Adapter
    Connection NoteProperty System.String Connection=Local Area Connection 6
    DaomainSuffixes NoteProperty System.String[] DaomainSuffixes=System.String[]
    DNSServers NoteProperty System.String[] DNSServers=System.String[]
    Gateway NoteProperty System.String[] Gateway=System.String[]
    IPAddress NoteProperty System.String[] IPAddress=System.String[]
    Manufacturer NoteProperty System.String Manufacturer=VMware, Inc.
    Speed GB NoteProperty System.UInt64 Speed GB=10
    Submask NoteProperty System.String[] Submask=System.String[]
    WinServers NoteProperty System.String WinServers=10.1.30.130

    Adapter : 1
    Manufacturer : VMware, Inc.
    AdapterDescription : vmxnet3 Ethernet Adapter
    Connection : Local Area Connection 6
    Speed GB : 10
    IPAddress : {10.222.161.175}
    Submask : {255.255.255.0}
    Gateway : {10.222.160.1, 10.222.161.1}
    DNSServers : {10.222.160.26, 10.224.160.157}
    WinServers : 10.1.30.130
    DaomainSuffixes : {wf.local, wfroot.local, westcorp.com}

    But I need to expand the properties of the ip setting.

    can anyone help

    thanks

  • #30096

    Curtis Smith
    Participant

    Can you explain more about what you mean about expanding the properties of the IP settings? Looking at what you have put as your output I see what I would think is the properties of the IP settings like the IP address and Gateway, etc. Need a little more understanding of what you are trying to accomplish.

  • #30100

    Helder Guzman
    Participant

    Yes, I need to expand the properties of the IP Setting.

    specially, for extra ip address for Dns, Wins.

    How can I expand all the setting at one time. Instead of expanding 1 by 1.

    like

    | select -expandproperty DNSServers, Wins, DNSSearchorder

    how do i used the add-member in this situation.

  • #30101

    Max Kozlov
    Participant

    this way for example

    Add-Member -InputObject $obj -MemberType NoteProperty -Name 'IPAddress' -Value ($IPinfo.IPAddress -join ',')

  • #30199

    Helder Guzman
    Participant

    Thanks Max That work Like a charm

You must be logged in to reply to this topic.