NetCmdlets: Getting the MAC address using the Get-SNMP Cmdlet
Getting the MAC address of an SNMP agent can be accomplished using the Get-SNMP cmdlet.
By default the MAC address will automatically be encoded in the format “00:0C:29:C6:31:07″. If you are using an older version of the cmdlet that does not do this automatically, or you have set -Config “HexMACAddress=false” the code below can be used to manually convert the MAC address to hex.
The following code is a PowerShell script that uses our NetCmdlets product allowing for simple access to SNMP OIDs in PowerShell.
#This approach is only necessary if using an old version (V3 or earlier) or HexMACAddress=false #In current versions this is done automatically by the cmdlet $oid = Get-SNMP -OID 1.3.6.1.2.1.2.2.1.6.2 -Agent $hostname -community public $Encode = new-object "System.Text.UTF8Encoding" $bytearray = $Encode.GetBytes($oid.OIDValue) $res = "" Foreach ($i in $bytearray) { $res = $res + $i.ToString("X").PadLeft(2,"0") + ":" } $res = $res.Substring(0,$res.Length - 1) Write-Host($res)
We appreciate your feedback. If you have any questions, comments, or suggestions about this article please contact our support team at kb@nsoftware.com.