bhyve code question, pci_virtio_net.c
grehan at freebsd.org
Sat May 16 19:02:04 UTC 2015
> 1) According to the comment, the mac address should be based on the md5
> of the DEVICE name, not the VM name. Which is correct? Which is more
The comment may not be specific enough - dev name meant
/dev/vmm/<devname>, which is the same as the VM name.
> Would it make sense to include more unique information in this hash?
> like the host's UUID or something, to prevent the chance of more than 1
> VM on the same LAN having the same MAC if they have the same VM Name?
Yes: see the discussion at
The issue was the changing the algorithm breaks existing Linux VMs
which base configuration on MAC addresses.
Using the host fixes one issue but creates another in that starting a
VM on another host then gives a different MAC.
However, there is always the option to set the MAC address manually if
you feel there will be issues with collisions, using VMs on different
> 2) Should bhyve instead use the FreeBSD assigned OUI for these MAC
Yes, though switching to that would have had the same issue with
breaking Linux guests.
My rough plan to move forward with this is that any new non-virtio NIC
emulation will get the FreeBSD OUI and perhaps a different default
algorithm. virtio-net will continue to use the existing one, but maybe
in the future a "legacy-mac" option will be required to use the old
algorithm, and then it can be phased out.
Yet another option is an auto-generated MAC is placed in a config file
on first boot, ala VMWare. That could be the solution when config file
More information about the freebsd-virtualization