Obtain information on the Host Bus Adapter
To determine the driver and firmware version of a Host Bus Adapter:
- Open a SSH session to the ESXi host.
- Run this command to list the Host Bus Adapters (HBAs):
esxcfg-scsidevs -a
or
esxcli storage core adapter list
- Run this command to get get the specifics of the device driver version:
vmkload_mod -s HBADriver |grep Version
For Example:
vmkload_mod -s pvscsi | grep Version where the highlighted section is the device driver version.
- You could also run this script to list the device driver versions for all the vmhbas at once:
for a in $(esxcfg-scsidevs -a |awk '{print $2}') ;do vmkload_mod -s $a |grep -i version ;done
- Alternatively, for ESXi versions 6.5 and above, you could run this command to list out the specifics of the physical vmhba adapter set being used (including the firmware version):
esxcli storage san [fc|iscsi|fcoe|sas] list
Example:
esxcli storage san fc list
Adapter: vmhba1
Port ID: 090300
Node Name: 20:00:00:24:ff:4c:51:c2
Port Name: 21:00:00:24:ff:4c:51:c2
Speed: 4 Gbps
Port Type: NPort
Port State: ONLINE
Model Description: QLogic 8Gb Fibr
Hardware Version: CU0210412-01 K
OptionROM Version: 2.13
Firmware Version: 8.05.00 (90d5)
Driver Name: qlnativefc
DriverVersion: 3.0.1.0
Adapter: vmhba2
Port ID: 090300
Node Name: 20:00:00:24:ff:4c:51:c3
Port Name: 21:00:00:24:ff:4c:51:c3
Speed: 4 Gbps
Port Type: NPort
Port State: ONLINE
Model Description: QLogic 8Gb Fibr
Hardware Version: CU0210412-01 K
OptionROM Version: 2.13
Firmware Version: 8.05.00 (90d5)
Driver Name: qlnativefc
DriverVersion: 3.0.1.0
Where the Driver Version and Firmware Version are highlighted.
These commands can also be used:
[root@ESXi:~] /usr/lib/vmware/vmkmgmt_keyval/vmkmgmt_keyval -d
Dumping all key-value instance names:
Key Value Instance: vmhba65/qlogic
Key Value Instance: vmhba64/qlogic
Key Value Instance: MOD_PARM_FCOE/qlogic
Key Value Instance: vmnic7/QLogic
Key Value Instance: vmnic6/QLogic
Key Value Instance: vmnic5/QLogic
Key Value Instance: vmnic4/QLogic
Key Value Instance: vmnic3/QLogic
Key Value Instance: QCNIC/qlogic
Key Value Instance: vmnic2/QLogic
Key Value Instance: vmnic1/QLogic
Key Value Instance: vmnic0/QLogic
[root@ESXi:~] /usr/lib/vmware/vmkmgmt_keyval/vmkmgmt_keyval -l -i vmhba64/qlogic
Listing keys:
Name: ADAPTER
Type: string
value: qfle3f-QLogic Offload FCoE:57840 v2.1.30.0 over vmnic2
ql_fcoe: v1.0.38.0 (Driver)
HBA:0x431205008000 for netdev:0000:37:00.2
Host Device Name vmhba64 (Physical)
Active NPIV Ports : 0
FW version = Storm: 7.13.20.0 MFW: 7.16.3 (Firmware)
Note:
The functionality of the above step is limited to certain Physical Adapter Types/Sets only (Qlogic, lpfc etc).
If the above commands are not listing out the required details of the device driver and firmware versions, you would need to fetch them manually by executing the commands stated earlier (only the details of the Device Driver version can be fetched).For validating/downloading/installing the Firmware Versions, you would need to get in touch with your Hardware Vendor.
- To determine the recommended driver for the card, we must obtain the Vendor ID (VID), Device ID (DID), Sub-Vendor ID (SVID), and Sub-Device ID (SDID) using the vmkchdev command:
vmkchdev -l |grep vmhba1
000:16.0 1000:0030 15ad:1976 vmkernel vmhba1
In this example, the values are:
VID = 1000
DID = 0030
SVID = 15ad
SDID = 1976
- Alternatively, you could fetch the same information by running this command:
- esxcfg-info | less
- Search for vmhbaX by entering "/vmhbaX" where X is the number.
- Upon hitting enter, you would initiate a forward search and result would be show as below:
- Search the VMware Compatibility Guide for the Vendor ID (VID), Device ID (DID), Sub-Vendor ID (SVID), and Sub-Device ID (SDID). In some cases, you may need to do a text search to narrow down the particular card.
Note: You can check the ESXi/ESX host version with the command:
vmware -vl
Obtain information on the Network card
To determine the version information for a physical network interface card in vSphere ESXi:
- Open a console to the ESXi host. For more information, see Unable to connect to ESXi host using SSH.
- Obtain a list of network interface cards and names.
In ESXi, run this command:
esxcli network nic list
For example:
esxcli network nic list
Name PCI Driver Link Speed Duplex MAC Address
vmnic0 00:02:04.00 ACME Up 1000Mbps Full 01:23:45:67:89:AB
vmnic1 00:02:05.00 ACME Up 1000Mbps Full 01:23:45:67:78:AC
- Run this command to display available information for one of the network interfaces, specifying its name from step 2:
esxcli network nic get -n vmnic#
For example, the highlighted lines show the driver:
esxcli network nic get -n vmnic0
Advertised Auto Negotiation: true
Advertised Link Modes: Auto, 100BaseT/Full, 1000BaseT/Full, 10000BaseT/Full
Auto Negotiation: true
Cable Type: Twisted Pair
Current Message Level: -1
Driver Info:
Bus Info: 0000:01:00:0
Driver: ixgben
Firmware Version: 0x8000063b, 19.5.12
Version: 1.7.1.28
Link Detected: true
Link Status: Up
Name: vmnic0
PHYAddress: 0
Pause Autonegotiate: true
Pause RX: true
Pause TX: true
Supported Ports: TP
Supports Auto Negotiation: true
Supports Pause: true
Supports Wakeon: false
Transceiver:
Virtual Address: 00:50:56:5f:0a:50
Wakeon: None
Alternatively, for ESXi versions 6.5 and above, you could run this command to list out the specifics of all the vmnics:
/usr/lib/vmware/vm-support/bin/nicinfo.sh | less
- To determine the recommended driver for the card, we must obtain the Vendor ID (VID), Device ID (DID), Sub-Vendor ID (SVID), and Sub-Device ID (SDID) using the vmkchdev command:
vmkchdev -l |grep vmnic
002:01.0 8086:100f 15ad:0750 vmkernel vmnic0
In this example, the values are:
VID = 8086
DID = 100f
SVID = 15ad
SDID = 0750
- You can now search the VMware Compatibility Guide (IO devices) for the Vendor ID (VID), Device ID (DID), Sub-Vendor ID (SVID), and Sub-Device ID (SDID). In some cases, you may need to do a text search to narrow down the particular card.
Note: Check the ESXi host version by running this command:
vmware -vl
From the ESXi host version and the network type, you then know the version of the driver to use. Compare this information to the information you received in step 3. It is recommended the driver be up to date.
Driver updates are available on the VMware downloads page, which can be accessed by clicking on the top of list driver. To update the driver, see How to download and install async drivers in ESXi.