WilliamLam.com

  • About
    • About
    • Privacy
  • VMware Cloud Foundation
  • VKS
  • Homelab
    • Resources
    • Nested Virtualization
  • VMware Nostalgia
  • Apple
You are here: Home / Apple / VMXNET3 driver now included in Mac OS X 10.11 (El Capitan)+

VMXNET3 driver now included in Mac OS X 10.11 (El Capitan)+

10.01.2016 by William Lam // 15 Comments

Yesterday I received a pretty interesting comment from one of my Twitter followers @NTmatter who wrote:

@lamw Just noticed that OSX has a VMXNET3 driver. Have to edit the vmx file to actually use it, but it's there! AppleVmxnet3Ethernet.kext

— Thomas Johnson (@NTmatter) September 30, 2016

This is a pretty neat find because currently today, the only network adapter that is functional with an Apple Mac OS X guest running on either VMware vSphere or Fusion is the e1000{e} driver. This update was definitely news to me and after sharing it internally to see if I could find some more details, it turns out this news also came as surprise to the folks internally. Darius, one of the Engineers who I frequently reach out to on Apple related topics did some digging and found out that Apple started to bundle this VMXNET3 driver starting with Mac OS X 10.11 (El Capitan) release. You can find the driver located in /System/Library/Extensions/IONetworkingFamily.kext/Contents/PlugIns/AppleVmxnet3Ethernet.kext

Disclaimer: Given that this VMXNET3 Mac OS X driver was not developed by VMware nor has it been tested by VMware, it currently would not be officially supported by VMware.

If you wish to try out the VMXNET3 driver, you will need to install Mac OS X 10.11 or newer on a VM running on vSphere or Fusion. By default, the only available network adapter type is e1000{e}. To add a VMXNET3 network adapter, you can either manually tweak the .VMX file or you can easily add it by using either the vSphere Web/C# Client or ESXi Embedded Host Client. Below are the instructions on configuring the VMXNET3 network adapter for your Mac OS X guests.

Step 1 - Remove the existing network adapter and then temporarily change the GuestOS type to "Other" (no need to save setting, just update it in VM reconfigure wizard) so that you will be allowed to add a VMXNET3 network adapter. Once you have added it to the VM reconfigure wizard, go ahead and toggle back the GuestOS type to Mac OS X 10.10 and then save the settings as shown in the screenshots below.

mac-os-x-el-capitan-10-11-vmxnet3-driver-0
mac-os-x-el-capitan-10-11-vmxnet3-driver-1
Step 2 - Open a terminal inside of the Mac OS X guest and run the following command to load the VMXNET3 driver:

sudo kextload /System/Library/Extensions/IONetworkingFamily.kext/Contents/PlugIns/AppleVmxnet3Ethernet.kext

Step 3 - You can verify that the VMXNET3 driver was successfully loaded by running the following command:

kextstat | grep -i vmxnet3

mac-os-x-el-capitan-10-11-vmxnet3-driver-2
Once the driver has been loaded, you should now have networking connectivity to your Mac OS X VM using the VMXNET3 network adapter. Below is a screenshot of the system info showing the VMXNET3 network adapter.

mac-os-x-el-capitan-10-11-vmxnet3-driver-3
In addition to having an optimized networking when using the VMXNET3 driver, the other benefit is being able to get a link speed of 10GbE which is something customers have been inquiring about when virtualizing Mac OS X guests. Below is a screenshot of the media link shown in this Mac OS X 10.11 guests.

mac-os-x-el-capitan-10-11-vmxnet3-driver-4
Although this a great development for Apple customers who uses VMware vSphere and Fusion, it also does raise an interesting question on whether Apple would be officially supporting this VMXNET3 driver going forward? If I do receive any more details on this, I will update the article. Until then, you can play with this new capability if you are running Mac OS X 10.11 or greater on VMware. Big thanks to Thomas for this great find and sharing it with the VMware Community!

More from my site

  • Using vSphere Guest Operations API on macOS Guests? 
  • Automating installation of VMware Tools for Mac OS X
  • ESXi 6.0 on Apple Xserve 3,1
  • Heads Up - Workaround for changing Mac OS X VM display resolution in vSphere & Fusion
  • ESXi 6.0 on Apple Xserve 2,1

Categories // Apple, vSphere 6.0 Tags // apple, el capitan, osx, vmware tools, vmxnet3

Comments

  1. *protectedMarc Huppert says

    10/02/2016 at 5:19 am

    This is absolutely awesome. I have requested a vmxnet3 vNIC since years. Now I am able to use my 10GbE Infrastructure at home. Many of my customers will love that hidden feature, too.

    Reply
  2. *protectedBrendan says

    10/03/2016 at 5:09 pm

    Interestingly, the copyright in the Info.plist file (at least on a 10.11.6 system) is:

    Copyright © 2014 Francesco DiMambro. All rights reserved.

    Who is that? Maybe the Apple employee who wrote it and forgot to replace the placeholder Xcode project copyright with the standard Apple one (more like "Copyright © 2002-2013 Apple Inc. All rights reserved.")

    Reply
    • *protectedJosh says

      10/04/2016 at 1:57 pm

      Looks like you're probably right. http://patents.justia.com/search?q=Francesco+DiMambro

      Reply
  3. *protectedvikrant says

    10/06/2016 at 8:21 am

    I am using Mac OS X 10.6 on my virtual machine but I can't use VMXNET3 driver on this Mac OS X 10.6 virtual machine because it does not support but now it is possible I can use vmxnet3 with Mac OS X 10.11 . Thanks for this update.

    Reply
  4. *protectedJayce Piel says

    10/18/2016 at 8:36 am

    i tried to just add a new network interface instead of replacing the existing one and it worked without needing to manually load the kext.
    i think the load of the kext is needed only because en0 was already linked to standard driver.
    if the vmnet3 type is selected at installation, it should work directly.

    since i now have both interface i will stress them both to see how it goes.

    Reply
  5. *protectedAlan Gordon says

    10/21/2016 at 12:45 am

    I get a strange behaviour ... can add a vnic with the vmxnet3 driver....can ping the VM ... but strangely the VM does not resolve .... no DNS resolving works .... the VM can ping..........anyone seen that ?.... (and yes DNS is correctly configured 😉

    Reply
    • *protectedEd Agoff says

      10/11/2017 at 2:00 pm

      I have this problem also. Virtual macOS 10.12.6. Switched to vmxnet3 and I can access IP addresses OK but DNS queries get no response. I can see queries arriving at DNS server in a packet capture, but there's no response from server. Weird, and I will likely not spend any further time on this. I'll just switch back to e1000

      Reply
  6. *protectedMark Guertin says

    10/25/2016 at 7:23 am

    Has anyone actually gotten 10G speeds doing this? I get full 10G connect but can't get anything beyond standard 1G network speed ...

    Reply
  7. *protectedCraig Munro says

    11/24/2016 at 8:50 am

    Upgraded to ESXi 6.5 on Mac Pro4,1. Could not get the VMXNET3 to show up in the drop down list until I would save the OS config change. Saving the VMXNET3 option and changing back to Mac OS X resulted in the network interface resetting to default. I am using the VMWare ESXi Web portal. Manually Loading the kext worked from the terminal in the VM while it was on.

    Reply
    • *protectedJeff Goodwin says

      01/14/2017 at 12:59 pm

      Craig, I am experiencing the same problem. Can you provide more details on "manually loading the kext" within terminal ?

      Thanks

      Reply
  8. *protectedgolfleep says

    03/12/2017 at 8:43 am

    I was only able to successfully access and add the vmxnet3 driver by first saving the OS config change in vSphere, and then switching OS config back to afterwards. Otherwise manually loading the kext worked perfectly, and system info shows 10 GbE link.

    However as with Mark a few posts up, only able to achieve 1GbE network speeds through the interface

    Reply
  9. *protectedbawa says

    07/31/2017 at 1:05 pm

    HI:

    i appreciate if you can help me to setup

    I am trying to add VMXNET as suggested in Step1 so i can run VMware fusion using wifi.

    I am running El Captian on my mac and have below file in /System/Library/Extensions/IONetworkingFamily.kext/Contents/PlugIns

    AppleVmxnet3Ethernet.kext

    can you please help so i can goto Step 1 as suggested.
    but i am not sure how do i go that screen as provided. Can you please provide me steps for how to go there.

    thanks

    Reply
  10. *protectedbikebasics0 says

    10/22/2019 at 5:19 am

    Hi There,

    Thanks for your wonderful webpages about running OSX under ESXi. For us everything has worked very well, however, since OSX Catalina 10.15, "vmxnet3" does not work anymore, as the OSX guest mentions "No Ethernet" and "No Network PCI Card". The command "kextstat | grep -i vmxnet3" does show that vmxnet3 is running... Setting the network to "e1000e" does work. Could you help us in getting "vmxnet3" working again like OSX < 10.15 did? Thanks so much.
    Dennis Gaastra

    Reply
  11. *protectedmacvmsareweird says

    01/30/2020 at 11:46 am

    vmxnet3 works in high sierra 10.13.6, but iperfs between VMs have much worse performance.
    iperf3 TCP VM-A > vmxnet3 > vswitch > vmxnet3 > VM-B
    seems to top out at 2.06Gbit/s
    Using Parallel flag to force 2, 4, 8 streams still tops at 2.06Gbits

    the exact same test from on the same hardware WIn10 1909 > Win10 1909
    P1 5.6Gbit
    P4 12.3Gbit
    P6 15.5Gbit

    Reply
  12. *protectedGreg Christopher says

    05/07/2022 at 3:50 pm

    I think there is something amuck.

    I have been installing vmware tools into the mac VMs including Big Sur. When I set the VM's hardware to use VMXNET3, the kext loads to autonegotiate speed- seems correct.

    What is confusing is that I'm seeing the same "unsupported" VMXNET driver mentioned above by William as "Given that this VMXNET3 Mac OS X driver was not developed by VMware nor has it been tested by VMware, it currently would not be officially supported by VMware."

    When we install vmware tools what VMXNET kext gets installed? The Info.plist inside this kext contains "Copyright @2017 Apple Inc. All rights reserved."

    So it appears on the surface that vmware tools does not install a vmxnet3 driver.

    Reply

Leave a Reply to macvmsareweirdCancel reply

This site uses Akismet to reduce spam. Learn how your comment data is processed.

Search

Thank Author

Author

William is Distinguished Platform Engineering Architect in the VMware Cloud Foundation (VCF) Division at Broadcom. His primary focus is helping customers and partners build, run and operate a modern Private Cloud using the VMware Cloud Foundation (VCF) platform.

Connect

  • Bluesky
  • Email
  • GitHub
  • LinkedIn
  • Mastodon
  • Reddit
  • RSS
  • Twitter
  • Vimeo

Recent

  • Programmatically accessing the Broadcom Compatibility Guide (BCG) 05/06/2025
  • Quick Tip - Validating Broadcom Download Token  05/01/2025
  • Supported chipsets for the USB Network Native Driver for ESXi Fling 04/23/2025
  • vCenter Identity Federation with Authelia 04/16/2025
  • vCenter Server Identity Federation with Kanidm 04/10/2025

Advertisment

Privacy & Cookies: This site uses cookies. By continuing to use this website, you agree to their use.
To find out more, including how to control cookies, see here: Cookie Policy

Copyright WilliamLam.com © 2025

 

Loading Comments...