I have zero interest in running iMessage within a VM, as I use real Macs for work and play, but do understand that others are interested in doing this in a VM. There is a very good post on “How to Fix iMessage” which explains the issues of how complex Apple’s authentication of genuine Apple hardware. VMware Fusion also had issues running iMessage within OS X guest but this was fixed in Fusion 7. Details of the issue are documented in this thread from the VMware Community forums, https://communities.vmware.com/thread/483521. Hopefully the Fusion 7 changes will make it into Workstation 11 and ESXi 6.

What VMware needed to do was pass through two additonal uniqiue identifiers from the NVRAM variables called “MLB” and “ROM”. Fusion 7 has some new settings which manage the visibility of those NVRAM variables:

would pass through the genuine variables from a real Mac host machine. I also think it is possible to set a value in the VMX file with these 2 settings:

Whilst I am not going to try iMessage out, I can test those settings in Fusion and get back with a definitve answer on whether those variables can be manually set.

Tried the settings with these tests:
1. Reflect the host settings works as expected:

  1. Set values manually works and use 6 digits for ROM and 16 for MLB:

Finally I did check ESXi6 and found the settings were available.

Pass real Mac details to VM Part 2