How to list all MAC address of all VMs on Hyper-V, this tip shows you how to list MAC addresses on local or remote Hyper-V servers.
A media access control address (MAC address) of a computer is a unique identifier assigned to network interfaces for communications at the data link layer of a network segment. MAC addresses are used as a network address for most IEEE 802 network technologies, including Ethernet and WiFi. Logically, MAC addresses are used in the media access control protocol sublayer of the OSI reference model.
A MAC address can be assigned manually by you, or automatically by Hyper-V. If you ever need to list all MAC addresses, use the Get-VM
and Get-VMNetworkAdapter
PowerShell cmdlets as shown in the following example:
On your local Hyper-V host, list the MAC addresses of all virtual machines (VM's):
Get-VM | Get-VMNetworkAdapter | ft VMName, MacAddress
To list MAC addresses of all virtual machines on all Hyper-V servers, run the following code in your PowerShell console:
$HypervServers = @("HyperV-01", "HyperV-02", "HyperV-03")
foreach ( $HypervServer in $HypervServers ) {
Get-VM -Computername $HyperVServer | Get-VMNetworkAdapter | ft VMName, MacAddress
}
List MAC addresses on a per remote Hyper-V server basis:
Get-VM -Computername hyper-v_server | Get-VMNetworkAdapter | ft VMName, MacAddress
More neat PowerShell Hyper-V tricks:
- Get Hyper-V guest serial number with PowerShell
- Get current number of FTP client connections (NonAnonymous) with PowerShell and Get-Counter