Windows Identifier that is not duplicate even if imaged and not shared

Looking for a way to identify machines based on some windows GUID. This GUID should be very unique. I understand there could be a slim chance that they could be duplicated which I am ok with.  
The question is, what would that identifier be?
Things to consider:  1. what happens if the machine is imaged, do new images get new GUIDs?
2) Do domain controllers share the same GUID too?

Hardware serial is not going work because some of these machines are on amazon cloud which means when they boot up the hardware serial changes.

I just need something that is different from each machine and not based on hardware.
Thank you
Who is Participating?

[Product update] Infrastructure Analysis Tool is now available with Business Accounts.Learn More

I wear a lot of hats...

"The solutions and answers provided on Experts Exchange have been extremely helpful to me over the last few years. I wear a lot of hats - Developer, Database Administrator, Help Desk, etc., so I know a lot of things but not a lot about one thing. Experts Exchange gives me answers from people who do know a lot about one thing, in a easy to use platform." -Todd S.

Jacques Bourgeois (James Burger)PresidentCommented:
Would it be possible for you to generate the GUID and store it somewhere on the machine?
onlinerackAuthor Commented:
Nope. we cannot due to other restriction.  It is for a client and such requirst would take 9 months to get approval :(
good suggestion
Cliff GaliherCommented:
A properly created image will have a 99.9999999999% chance of having a unique GUID.  That includes domain controllers.  An *improperly* created image will have the GUID assigned to the image when it was first captured.   That's what sysprep is for. It generalizes the image before capture and the first time a new machine boots with that image, because it was generalized, it generates itself a new GUID.

Experts Exchange Solution brought to you by

Your issues matter to us.

Facing a tech roadblock? Get the help and guidance you need from experienced professionals who care. Ask your question anytime, anywhere, with no hassle.

Start your 7-day free trial
Acronis True Image 2019 just released!

Create a reliable backup. Make sure you always have dependable copies of your data so you can restore your entire system or individual files.

Jacques Bourgeois (James Burger)PresidentCommented:
Have you asked the client if they do not already have something do on their machines. Some companies have set a way to ID the computers in some way in order to automatize inventory and licensing control.
onlinerackAuthor Commented:
@Cliff Galiher  That is great. wha tis the GUID name you are referring to?  if two machines have the same GUID, do they produce issues with network?  trying to see the chances of companies creating an image with same GUID and if it would have major issues.

@Jacques Bourgeois (James Burger)   they do not have anything that is "standard" many different locations that have their own settings so no standard.
Cliff GaliherCommented:
That depends. AD won't really care as each computer account in Active Directory gets a GUID that is unrelated to the computer's GUID. And the GUID isn't used in networking. That's all MAC addresses, which even in a virtualized environment such as Amazon or Azure, are generated by the host, not the image of the guest.  So that won't cause problems But some other programs do look at the computer GUID and can cause conflicts.  Particularly inventory control programs, such as System Center.  Duplicate GUIDs are definitely a problem in SCCM, for example.

So really, it depends on the environment *and* the applications in use.  Although realistically, it is just best practice to only install from a sysprepped image and then it never is even a concern.  Most good hosting providers that offer VMs generate their images from generalized templates (including amazon and azure), but if you are uploading a custom image, you should be sysprepping it before upload.
onlinerack, read here for additional information.  This is exactly what Sysprep is intended for (as Cliff has explained):

onlinerackAuthor Commented:
Thank you guys.
It's more than this solution.Get answers and train to solve all your tech problems - anytime, anywhere.Try it for free Edge Out The Competitionfor your dream job with proven skills and certifications.Get started today Stand Outas the employee with proven skills.Start learning today for free Move Your Career Forwardwith certification training in the latest technologies.Start your trial today
Microsoft Server OS

From novice to tech pro — start learning today.