Hi, I cloned a ESXi VM(named origin VM A, newer VM B).
When I boot VM B, I capture DHCP using wireshark. I found that VM B's DHCP packets's source mac is not changed( which belongs to VM A.)
Here is the mac of VM B:
But in wireshark, dhcp's source mac is this:
My workstation version is 16.2.3.
ESXi VM version is 7.0.2-17867351
VMkernel interfaces in ESXi have a MAC address, cloning an ESXi VM won't change that configuration inside ESXi.
This isn't a Workstation-specific issue, it's about ESXi.
I think this article might help you: https://kb.vmware.com/s/article/1031111
How did you do the clone? Have you checked the MAC address in the new VMX file?
I tried link clone and full clone. Both have the same problem.
It doesn't work even I changed vmx's MAC.
I tried to disable vmkernel in VM ESXi and enable it. Then MAC for this ESXi VM is correct now.
I'm confused as to what this has to do with VMware Workstation and also ESXi.
Are you running ESXi in VMs nested on Workstation?
And cloning an instance of ESXi running in a VM to create another instance of ESXi running in a VM?
Are you aware of how ESXi networking works, with the VMkernel network interfaces essentially working like NICs? (ie. with their own MAC addresses created by the ESXi software)
Thanks for your reply.
Yes, VM A and VM B are VM running on Workstation with operation system ESXi.
I capture packets in NAT network of workstation using wireshark. And MAC 00:xxxxxx:b2 is the new MAC generated by workstation automatically. But in wireshark, the packet comes from 00:xxxxx:b2 has MAC 00:xxx:4C. MAC 00:xx:4C should belongs to VM A!
And this weird network works well except VM A and VM B can't connect to each other.
You can reproduce this by following steps:
1. create a ESXi VM on vmware workstation.
2. clone this VM.
3. boot new VM, check this VM network card's MAC.
4. restart new VM's network manager to let it do DHCP operation, and use wireshark to capture DHCP packets.
you will see MAC is weird.
Sorry for this stupid question ... but when you dont like the mac address of a VM why dont you change it yourself ?
Sorry for my poor English, May let you misunderstand, The problem is not what MAC it has. The problem is "a cloned ESXi VM will send packet with origin VM's MAC, even I changed its MAC through UI configuration or editing vmx file or adding new net card.". And its network seems work well, I can connect it by ssh. However, it can't connect to origin VM because they have the same MAC.
This looks really weird, two VM have same MAC, but we can connect to each VM well.
I solved this by deactivate ESXi's network card and restart its network manager, then active its net card and restart again.
VMkernel interfaces in ESXi have a MAC address, cloning an ESXi VM won't change that configuration inside ESXi.
This isn't a Workstation-specific issue, it's about ESXi.
I think this article might help you: https://kb.vmware.com/s/article/1031111