Following on from my last post talking about How to update mpt2sas driver on ESXi 5? today we are going to look at updating network drivers for Broadcom and Intel NICs on VMware ESXi host. Procedure documented below will work with any version of ESXi 4.x and 5.x
Lets start by listing all network interfaces in “Up” state:
esxcfg-nics -l | grep Up
As you can see there are 10 network adapters in “Up” state which happens to be total as well on this host – 4 Broadcom 5709s and 6 Intel 82576s. Portion of the screenshot that we’re particularly interested in is just before the “Up” word i.e. bnx2 and igb – these are driver names that ESXi is using for our network cards. Now that we have this established lets look at the version of said drivers:
ethtool -i vmnic0
ethtool -i vmnic4
From the screenshot we can tell that bnx2 is at version 2.0.7d-6vmw and igb is currently at 2.1.11.1 – now, how that relates to what’s the latest from Intel and Broadcom you may ask? Lets check. VMware Compatibility Guide is where we want to be, selecting I/O devices in What are you looking for: field is next. Information required at this point is rather cryptic as we need to provide VID, DID, SVID and SSID! To obtain this, back in our SSH session type:
vmkchdev -l | grep “vmnic”
To further decrypt what each abbreviation means:
VID = Vendor ID
DID = Device ID
SVID = Sub-Vendor ID
SDID = Sub-Device ID
Back on VMware Compatibility Guide we need to enter this information (I will use vmnic4 i.e. Intel):
and bang on here is our card:
Drilling down we need to find matching driver to our exact version of ESXi, in my case:
build number tells us exact version i.e. 4.1.0 U3 Patch 11. On VMware Compatibility Guide we need to expand ESX / ESXi 4.1 U3 to get to the download link:
Latest available version of Intel drivers is 3.2.10 and our host with latest patches from VMware is running 2.1.11.1 so way behind! Not to my surprise links to download them drivers were all broken (thanks VMware!) Quickest (if you can call it that) way to get to the drivers is via MyVMware, All Downloads, All Products, VMware vSphere and Drivers & Tools (make sure to select correct version from the dropdown!) I had to search for 82576 to filter the, quite extensive, list:
Once vmware-esx-drivers-net-igb_400.3.2.10-1vmw.2.17.249663.493750.iso is downloaded we need to extract INT-intel-lad-ddk-igb-3.2.10-offline_bundle-493750.zip which sits in offline-bundle folder and upload to the datastore.
At this point I went ahead and downloaded Broadcom drivers too (procedure is virtually the same) so my datastore has both drivers which I want to update:
With host in Maintenance Mode its time to finally update the drivers:
esxupdate –bundle=BCM-bnx2-2.2.3m.v41.2-offline_bundle-1073189.zip update
esxupdate –bundle=INT-intel-lad-ddk-igb-3.2.10-offline_bundle-493750.zip update
Reboot is required to actually use the updated drivers so fast forward some time and:
All done, both Broadcom and Intel drivers are updated to the lastest version available for ESXi 4.1 U3!
Happy days.
We did more or less the same thing on ESXi 5.1 however like this:
/tmp # esxcli software vib update -v /tmp/Broadcom_bootbank_net-bnx2x_1.78.79.v50.2-1OEM.500.0.0.472560.vib
[DependencyError] VIB Broadcom_bootbank_net-bnx2x_1.78.79.v50.2-1OEM.500.0.0.472560 requires com.broadcom.cnic_register-9.2.0.0, but the requirement cannot be satisfied within the ImageProfile. Please refer to the log file for more details.
and then tried the same thing AGAIN with “–force” on the end of the command. This comes back fine, but like in your case it needs a reboot. After reboot however, vmnic[01]s have disappeared! Thus far we cannot re-enable vmnic[01], so ESXi needs to be reinstalled. Go figure.
wow – thanks – very helpful article – esp the bit on how to identify the EXACT hardware versions – used it pretty much verbatim but chickened out at the end and used Update Manager to deploy the downloaded zip file
Simon Trangmar / Adelaide | Oz
Feb 2015
Why does this particular adapter require the use of the entire offline bundle? Intel adapters can be upgraded by simply installing the vib file.