$esxcli = Get-EsxCli -VMHost MyEsxi
# esxcfg-vmknic -l
foreach($vmk in $esxcli.network.ip.interface.list()){
$esxcli.network.ip.interface.ipv4.get($vmk.Name) |
Select Name,@{N='PortGroup';E={$vmk.Portgroup}},@{N='IP Familiy';E={'IPv4'}},
@{N='IP Address';E={$_.IPv4Address}},
@{N='Netmask';E={$_.IPv4Netmask}},
@{N='Broadcast';E={$_.IPv4Broadcast}},
@{N='MAC';E={$vmk.MACAddress}},
@{N='MTU';E={$vmk.MTU}},
@{N='TSOMSS';E={$vmk.TSOMSS}},
@{N='Enabled';E={$vmk.Enabled}},
@{N='Type';E={$_.AddressType}}
}
# esxcfg-nic -l
$esxcli.network.nic.list() |
where{$_.Name -match 'vmnic'} |
Select Name,@{N='PCI';E={$_.PCIDevice}},
Driver,Link,Speed,Duplex,MACAddress,MTU,Description
# esxcfg-vswitch -l
foreach($vss in $esxcli.network.vswitch.standard.list()){
$vss | Select @{N='Switch Name';E={$_.Name}},
NumPorts,UsedPorts,ConfiguredPorts,MTU,@{N='Uplinks';E={$_.Uplinks -join ','}}
$esxcli.network.vswitch.standard.portgroup.list() |
where{$_.VirtualSwitch -eq $vss.Name} |
Select @{N='Portgroup Name';E={$_.Name}},
VLANID,@{N='Used Ports';E={$_.ActiveClients}},
@{N='Uplinks';E={
($esxcli.network.vswitch.standard.portgroup.policy.failover.get($_.Name) |
Select -ExpandProperty ActiveAdapters) -join ','
}}
}
foreach($vds in $esxcli.network.vswitch.dvs.vmware.list()){
$vds | Select @{N='DVS Name';E={$_.Name}},
NumPorts,UsedPorts,ConfiguredPorts,MTU,@{N='Uplinks';E={$_.Uplinks -join ','}}
$vds.DVPort |
Select DVPortgroupID,InUse,@{N='Client';E={$_.CLient -join ','}}
}