How to Manage SCCM duplicate hardware identifiers

This post is all about how to manage SCCM duplicate hardware identifiers. A lot of organizations today are replacing the laptops with devices such as Microsoft Surfaces, DELL XPS devices and tablets. While these devices are imaged and sent out to customers, re-imaging them is another big task. You as an SCCM admin would want to reimage such devices using SCCM. So you provide these devices to employees, they are installed with company specific apps and OS.

If you have imaged devices such as Surface pro 3, you know the pain of using USB to Ethernet adapters. Because the devices do not include on-board Ethernet port, the technicians have to use adapters to get the OSD working. Not only these adapters are expensive they are difficult to get one when you need. I mean the adapter that works all the time.

Devices such as Surface pro 3, dell tablets come with a unique MAC address. When you want to re-image the same device using SCCM, you have to remove the old devices to add new devices for deployment. May be it’s fine if you have less devices but it becomes difficult when you have got lot of such devices. SCCM uses the hardware identifier to identify clients that might be duplicates and alert you about conflicting records.

So how did admins manage this earlier ?. Suppose you reinstall a computer, the hardware identifier would be the same but the GUID used by Configuration Manager might be changed. While the SMBIOS attribute should be unique, some hardware devices have duplicate identifiers. The simple solution here is to exclude its MAC address. Before Configuration Manager current branch version 1610 you could manually add MAC addresses of devices to the registry. With this you exclude duplicate identifier and rely on the unique MAC address of each device.

How to Manage SCCM duplicate hardware identifiers

We will now look at steps to manage SCCM duplicate hardware identifiers. In the Configuration Manager console, go to Administration > Overview > Site Configuration > Sites. On the Home tab, select the site and choose Hierarchy Settings.

Manage SCCM duplicate hardware identifiersOn the Client Approval and Conflicting Records tab, under Duplicate hardware identifiers section, click Add button. Here is where you add new hardware identifiers.

Manage SCCM duplicate hardware identifiersEnter the hardware ID and click OK. If you have multiple mac addresses to add, repeat the step.

Manage SCCM duplicate hardware identifiersThere you go, add the mac addresses and click OK once you are done.

Manage SCCM duplicate hardware identifiers Snap4


  1. Avatar photo Patrick Robinson says:

    Having a weird issue where I can image using a dock that falls under the unknown computers group. Added the docks mac address to the conflicting records location. When I attempt to boot I’m receiving the error that nothing is being advertised most likely because the computer is showing in a group other than unknown computers. If I remove the previously imaged machine from devices, it will then work. It appears the conflicting records entries are not working. Anyone else have this issue?

  2. Avatar photo Robert A Hatcher says:

    I have noticed that the GUI picture radio button is in “automatically resolve conflicting records” yet the only way you can put in a mac address is having the radio button in “manually resolve conflicting records” mode. Are we supposed to type in the mac addresses in manual mode and then switch back to automatic?

  3. I wrote a very basic powershell script to do this with multiple MACs at once since the GUI is, to be honest, kind of crap.

    Place this somewhere accissible from the server, run Powershell from the Configuration Manager Console (upper left corner, the little blue down arrow next to the Home tab, “Connect via Windows Powershell), make sure the executionpolicy is set to allow scripts and run the full path of the script (for example
    “PS P01:\> C:\Temp\Macs\ImportMacException.ps1”)

    Just make sure all Mac Addresses you want is in a csv file in the same folder as the script and it worked for me!

    $scriptpath = $MyInvocation.MyCommand.Path
    $dir = Split-Path $scriptpath
    $macs = import-csv $dir\mac.csv
    foreach ($mac in $macs.mac){
    New-CMDuplicateHardwareIdMacAddress -MacAddress $mac

    In this case the csv file is named mac.csv and has a single header named mac and all the addresses under that.

  4. Thanks mate, every week some post of you save me from the frustration of browsing the Microsoft documentation

  5. Avatar photo Alberto Maero says:

    I would like to use the same adapter to deploy many different laptops. I have a specific collection where is deployed my os task sequences so I usually have to add computer name and mac address for each pc. anyone know how to do that without create and delete object and create again ?
    is there a way to create a generic computer name with mac add adapter (in my provisioning collection) ready to use again and again?

    …without deploy task sequence on Unknown computers

    thanks for anyone can help me

  6. Avatar photo Jarkko Mattinen says:

    Anyone here know where these values are stored?
    I do not have 400 adapters as one other user here has to deal with, but I do have quite a few – and just now this minute I finished adding 20+ new adapters.
    It would be nice to add a whole bunch of them using either PS or editing som config file.

  7. I just wanted to say as school district with over 400 usb adapters this has been a major PITA…

Leave a Reply

Your email address will not be published. Required fields are marked *