VMware Horizon Community
adam6371
Contributor
Contributor
Jump to solution

View Composer and Mac Addresses

Hello,

We have recently setup views using the Linked-Clone Pools feature in the View Manager. However, the views we created need to have software installed that requires a MAC address to authenticate with the software's server. I see no problems happening until we need to roll out any updates, and have to recompose the view pools. Does anyone know if recomposing a view will change the MAC address of the view, or does it stay the same? Any feedback will be greatly appreciated. I tried searching for the answer on the boards here, but I can only find results where enhancement requests are being made to manually configure the MAC addresses. That would be nice, but is not neccessary for us at this moment.

Thanks,

Adam

0 Kudos
1 Solution

Accepted Solutions
mittim12
Immortal
Immortal
Jump to solution

I think what they are saying is that in a persistent pool scenerio where the machine is assigned to a user then the MAC will stay the same after a recompose. The ones not assigned to users would not keep the same one.






If you found this or any other post helpful please consider the use of the Helpful/Correct buttons to award points

Twitter: http://twitter.com/mittim12

View solution in original post

0 Kudos
9 Replies
mclark
Expert
Expert
Jump to solution

A recompose does not delete the virtual desktop if it has been used, so the MAC address would not change. The address is given to the virtual desktop/VM at VM create time and is constant after that, unless you change it manually with the VM settings.

mikebarnett
VMware Employee
VMware Employee
Jump to solution

The MAC address will not change if the VMs have been assigned to users when they are recomposed. Any VM that is still unassigned at the time of the recompose will have their MAC changed.

Hope that helps!

-Mike

Twitter: @MikeBarnett_
adam6371
Contributor
Contributor
Jump to solution

When the View Pools were setup, user aissgnments were setup as "floating" instead of "dedicated". Is this what you are referring to when you mention "unassigned views"?

thanks,

Adam

0 Kudos
mittim12
Immortal
Immortal
Jump to solution

I think what they are saying is that in a persistent pool scenerio where the machine is assigned to a user then the MAC will stay the same after a recompose. The ones not assigned to users would not keep the same one.






If you found this or any other post helpful please consider the use of the Helpful/Correct buttons to award points

Twitter: http://twitter.com/mittim12

0 Kudos
adam6371
Contributor
Contributor
Jump to solution

I have noticed that all of the views in the pool have nearly identical MAC addresses, except for the last two numbers. Also, the last two numbers are in consecutive order for each view (eg. 41-44). I am assuming these are based off of the parent image used to create the pool. Do you know if it will use these same addresses and randomly assign them, everytime the view pool is recomposed? Or will it generate completely new MAC addresses in consecutive order picking up where it left off? The MAC address being attached to a certain machine is not neccessary. As long as the MAC addresses stay the same, it does not matter which machine it gets assigned to for the software to work. Again, I appreciate all of the feedback.

Thanks,

Adam

0 Kudos
mclark
Expert
Expert
Jump to solution

I don't know the inside scoop on how MAC addresses are given out, but on my View deployment, like yours, the MAC addresses are sequential (sort of). I don't think they are based in any way on the parent image, they are assigned by View somehow. They are also not sequential by desktop number (i.e. VM-001, VM-002, VM-003), but rather in the order that they were created by the View Composer, which makes sense. The first few sections of the MAC address will not change, because the first few bits are allocated to VMware. Like you say, once the desktop is used by a user, the MAC won't ever change unless you change it manually (the exception is if you delete their desktop and let them get a new one generated or grab an exising free one for some reason - like a virus, some sort of O/S corruption, etc.).

0 Kudos
gerald145
Contributor
Contributor
Jump to solution

So does anyone know if there is a way to keep the mac address on a linked clone floating desktop after a desktop refresh?

0 Kudos
adam6371
Contributor
Contributor
Jump to solution

Hey Gerald,

On our cluster, we were able to refresh and/or recompose the floating linked clone pools and the MAC Adresses all stayed the same.  However, if you delete the entire pool, and recreate it, I'm not 100% sure that the MAC Adresses will stay the same.  Hope this helps.

Thanks,

Adam

0 Kudos
Linjo
Leadership
Leadership
Jump to solution

How VMware ESX Server Generates MAC Addresses

Each virtual network adapter in a virtual machine gets its own unique  MAC address. ESX Server attempts to ensure that the network adapters  for each virtual machine that are on the same subnet have unique MAC  addresses. The algorithm used by ESX Server puts a limit on how many  virtual machines can be running and suspended at once on a given  machine. It also does not handle all cases when virtual machines on  distinct physical machines share a subnet.

A MAC address is a six-byte number. Each network adapter manufacturer  gets a unique three-byte prefix called an OUI - organizationally unique  identifier - that it can use to generate unique MAC addresses. VMware  has two OUIs - one for automatically generated MAC addresses and one for  manually set addresses.

The VMware OUI for automatically generated MAC addresses is 00:05:69.  Thus the first three bytes of the MAC address that is automatically  generated for each virtual network adapter have this value. ESX Server  then uses a MAC address generation algorithm to produce the other three  bytes. The algorithm guarantees unique MAC addresses within a machine  and attempts to provide unique MAC addresses between ESX Server  machines.

The algorithm that ESX Server uses is the following:

When the algorithm generates the last 24 bits of the MAC address, the  first 16 bits are set to the same values as the last 16 bits of the  console operating system's primary IP address.

The final eight bits of the MAC address are set to a hash value based on the name of the virtual machine's configuration file.

ESX Server keeps track of all MAC addresses that have been assigned  to network adapters of running and suspended virtual machines on a given  physical machine. ESX Server ensures that the virtual network adapters  of all of these virtual machines have unique MAC addresses.

The MAC address of a powered-off virtual machine is not remembered.  Thus it is possible that when a virtual machine is powered on again it  can get a different MAC address.

For example, if a machine had IP address 192.34.14.81 (or in hex,  0xc0220e51) and the configuration file hashed to the value 95, the MAC  address would have the following value:

00:05:69:0e:51:95

Since there are only eight bits that can vary for each MAC address on  an ESX Server machine, this puts a limit of 256 unique MAC addresses  per ESX Server machine. This in turn limits the total number of virtual  network adapters in all powered-on and suspended virtual machines to  256. This limitation can be eliminated by using the method described in  the next section entitled "Setting MAC Addresses Manually".

Note: The use of parts of the console operating system's IP  address as part of the MAC address is an attempt to generate MAC  addresses that are unique across different ESX Server machines. However,  there is no guarantee that different ESX machines with physical network  adapters that share a subnet always generate mutually exclusive MAC  addresses.

Best regards, Linjo Please follow me on twitter: @viewgeek If you find this information useful, please award points for "correct" or "helpful".
0 Kudos