The vmxnet driver is no longer supported on kernels 3.3 and greater. Please upgrade to a newer virtual NIC. (e.g., vmxnet3 or e1000e)
which does not necessarily mean that the Ethernet drivers are not vmxnet3 or e1000e. My experience indicates that it sometimes complains about the Ethernet driver's not being vmxnet3 or e1000e even if the driver is one of the two.
First, we can determine what Ethernet driver is loaded by using
lspcicommand on the Linux virtual machine as follows,
lspci | grep "Ethernet controller"
As the example below, if the output indicates that the Ethernet driver is vmxnet3 or e1000e, we can safely ignore the complain.
$ lspci | grep "Ethernet controller" 03:00.0 Ethernet controller: VMware VMXNET3 Ethernet Controller (rev 01)
However, if the Ethernet driver is not one of the two, it is better to change the virtual Ethernet driver to be one of the two. VMWare has a Knowledge Base article on how to manually configure Ethernet adapter for a virtual machine. Following the article, we can configure the Ethernet driver in the steps below,
- Power off the virtual machine
- Locate and open the virtual machine configuration file (.vmx) for editing on the host
- Look for Ethernet configuration, by searching "ethernet" in the configuration file
- If you find a configuration entry as follows,
ethernet0.virtualDev = "vmxnet"
you should replace "vmxnet" or "e1000" by "vmxnet3" or "e1000e".
ethernet0.virtualDev = "e1000"
Be aware that the above shows an example for the first Ethernet adapter, i.e., "ethernet0". If you have multiple Ethernet adapters, you should repeat the above steps for all Ethernet adapters.
If you do not find a configuration entry as such, you need to add the entry to the configuration file, i.e.,
ethernet0.virtualDev = "vmxnet3"
Repeat the step all Ethernet adapters.
ethernet0.virtualDev = "e1000e"
- Save the configuration file and reboot the Linux guest
lspcion the Linux guest to confirm that desired Ethernet driver is loaded.
You may wonder among "vmxnet3" or "e1000e", which one you should choose. According to this article, it appears that the better choice is "vmxnet3".