In response to community feedback, we are excited to announce an update to the popular USB Native Network Driver for ESXi Fling . This release is currently available for ESXi 8.0 Update 3 and adds support for the latest Realtek USB devices: RTL8157 (5GbE) & RTL8156BG (2.5GbE), bringing the total number of supported chipsets to over 25+. A similar update is also planned for ESX 9.0, which will be published hopefully in the next few weeks.
Several of you have asked about specific models compatible with the latest Realtek chipset. Below are the two I am currently using for testing, which you can find the links below. If you have other recommendations that work, feel free to share them in the comments.
- UGREEN USB-A to 2.5GbE (RTL8156BG)
- UGREEN USB-C to 5GbE (RTL8157)
Download Updated USB Native Network Driver for ESXi:
- USB Native Network Driver for ESXi 8.0 Update 3
- USB Native Network Driver for ESX 9.0 (Coming Soon)
Install using Offline Bundle:
esxcli software component apply -d /path/to/the/ESXi803-VMKUSB-NIC-FLING-93415869-component.zip
Install using Free ESXi 8.0 Update3 ISO:
- Please see this blog post for more details.

Hi William,
First, thank you for the great work on the USB NIC Fling and the recent update adding RTL8156BG support!
I'm running ESXi 8.0 Update 3 on an Apple Mac Mini, and I'm trying to get a Realtek RTL8156BG USB 2.5GbE adapter working at 2.5G. Here is my exact situation:
Installed VIB:
vmkusb-nic-fling 1.14-7vmw.803.0.95.93415869
The problem:
The adapter is always claimed by the built-in uether driver instead of vmkusb_nic_fling, and stays stuck at 1G:
vusb0 Pseudo uether Up Up 1000 Full 00:e0:4c:68:00:15 1500 Realtek USB 101001G2.5G LAN
What I tried:
uether does not appear as a loadable module (vmkload_mod -l | grep uether = empty) — it seems baked into the VMkernel
No USB .map file exists for the fling (only ACPI and PCI maps in /etc/vmware/ihv.map.d/)
Created /etc/vmware/ihv.map.d/vmkusb_nic_fling_usb.map with regtype=native,bus=usb,id=0bda8156,driver=vmkusb_nic_fling → file doesn't persist after reboot
Tried USB quirk UQ_NET_IGNORE → device disappears completely, fling doesn't pick it up
No UQ_NET_* quirks exist in the vmkusb module
Hot-plug after boot → still claimed by uether at 1G
The fling binary contains the string uether many times but no 0bda or 8156 VID:PID
Device info:
idVendor 0x0bda Realtek Semiconductor Corp.
idProduct 0x8156
iProduct USB 10/100/1G/2.5G LAN
bcdDevice 31.04 ← this is the BG revision
bcdUSB 3.20
Question: Is there a way to force vmkusb_nic_fling to claim this device instead of uether? Is a USB binding map file planned for the fling, or is there a specific quirk or config needed?
Thanks!
To disable the CDC (uther) driver, you need disable vmkusb, reboot and if the USB Fling is installed, it should now load that module instead
Hi William,
I disabled vmkusb and rebooted:
vmkusb_nic_fling true true
vmkusb false false
But uether is still claiming the device even after a hot-plug:
vusb0 Pseudo uether Up 1000 Full Realtek USB 10/100/1G/2.5G LAN
It seems uether is not part of vmkusb on ESXi 8.0 Update 3 — it appears to be baked directly into the VMkernel since it doesn't show up as a loadable module (vmkload_mod -l | grep uether returns nothing).
Any other suggestions?
I'm using WisdPi USB 5G.
The Realtek 2.5G USB LAN is very stable, but the WisdPi USB 5G communication is very unstable and unusable.
The link-up speed is 5Gbps. Changing the MTU to 1500 or 9000 did not change the behavior.
According to the vmkernel.log, it appears that the vusb0 device is being reset and the port is repeatedly going up and down.
Is this a problem with the FLINGS driver? Is there a solution?
* WisdPi USB 5G
https://www.wisdpi.com/products/wisdpi-usb-3-2-5g-ethernet-adapter-wp-ut5-wired-lan-network-connection-for-mac-os-linux-windows-backward-compatible-on-5g-2-5g-1g-100mbps-ideal-for-gaming
# esxcli software vib list | grep vmkusb
vmkusb-nic-fling 1.14-7vmw.803.0.95.93415869 VMW VMwareCertified 2026-02-24 host
vmkusb 0.1-25vmw.803.0.95.25205845 VMW VMwareCertified 2026-02-26 host
# lsusb | grep Realtek
Bus 002 Device 007: ID 0bda:8156 Realtek Semiconductor Corp. <--- Realtek 2.5G USB LAN
Bus 002 Device 006: ID 0bda:8157 Realtek Semiconductor Corp. <--- WisdPi USB 5G
# esxcli network nic list
Name PCI Device Driver Admin Status Link Status Speed Duplex MAC Address MTU Description
------ ------------ ------ ------------ ----------- ----- ------ ----------------- ---- -----------
vusb0 Pseudo uether Up Up 5000 Full 34:c8:d6:b1:16:19 9000 WisdPi USB 5G Ethernet
vusb1 Pseudo uether Up Up 2500 Full 6c:1f:f7:58:de:3a 9000 Realtek USB 101001G2.5G LAN
# /var/log/vmkernel.log
2026-03-04T19:30:26.145Z In(182) vmkernel: cpu0:1048653)NetqueueBal: 5211: vusb0: device Up notification, reset logical space needed
2026-03-04T19:30:26.145Z In(182) vmkernel: cpu1:1053358)NetSched: 724: vusb0-0-tx: worldID = 1053358 exits
2026-03-04T19:30:26.145Z In(182) vmkernel: cpu0:1048653)Uplink: 12404: vusb0: clear flags 0x4ac0e DEVICE_SCHED_CONNECTED
2026-03-04T19:30:26.145Z In(182) vmkernel: cpu0:1048653)Uplink: 12493: vusb0: set flags 0x4aa0e DEVICE_SCHED_CONNECTED
2026-03-04T19:30:26.145Z In(182) vmkernel: cpu0:1048653)Uplink: 12404: vusb0: clear flags 0x4a80e DEVICE_SCHED_CONNECTED
2026-03-04T19:30:26.145Z In(182) vmkernel: cpu0:1048653)Uplink: 12493: vusb0: set flags 0x4aa06 DEVICE_SCHED_CONNECTED
2026-03-04T19:30:26.145Z In(182) vmkernel: cpu0:1048653)Uplink: 13027: The default queue is not ready for device vusb0.
2026-03-04T19:30:26.145Z In(182) vmkernel: cpu0:1048653)Uplink: 12404: vusb0: clear flags 0x4a806 DEVICE_SCHED_CONNECTED
2026-03-04T19:30:26.145Z In(182) vmkernel: cpu0:1048653)Uplink: 12493: vusb0: set flags 0x4ae06 DEVICE_SCHED_CONNECTED
2026-03-04T19:30:26.145Z In(182) vmkernel: cpu0:1048653)cswitch: VSwitchUplinkPortSetNUMAID:3928: [nsx@6876 comp="nsx-esx" subcomp="vswitch"]Cannot get mem affinity from uplink vusb0[2214592524]: Not supported
2026-03-04T19:30:26.145Z In(182) vmkernel: cpu0:1048653)Uplink: 3392: vusb0: clear flags 0x4ae06 DEVICE_ENS_FLAGS
2026-03-04T19:30:26.145Z In(182) vmkernel: cpu4:1048653)NetqueueBal: 3191: vusb0: rxQueueCount=0, rxFiltersPerQueue=0, txQueueCount=0 rxQueuesFeatures=0x0
2026-03-04T19:30:26.145Z In(182) vmkernel: cpu4:1048653)Uplink: 12404: vusb0: clear flags 0x4ac0e DEVICE_SCHED_CONNECTED
2026-03-04T19:30:26.145Z In(182) vmkernel: cpu4:1048653)Uplink: 12493: vusb0: set flags 0x4aa0e DEVICE_SCHED_CONNECTED
2026-03-04T19:30:26.145Z In(182) vmkernel: cpu4:1048653)Uplink: 12404: vusb0: clear flags 0x4a80e DEVICE_SCHED_CONNECTED
2026-03-04T19:30:26.145Z In(182) vmkernel: cpu4:1048653)Uplink: 12493: vusb0: set flags 0x4aa06 DEVICE_SCHED_CONNECTED
2026-03-04T19:30:26.145Z In(182) vmkernel: cpu4:1048653)Uplink: 13027: The default queue is not ready for device vusb0.
2026-03-04T19:30:26.146Z In(182) vmkernel: cpu4:1048653)Uplink: 12404: vusb0: clear flags 0x4a806 DEVICE_SCHED_CONNECTED
2026-03-04T19:30:26.146Z In(182) vmkernel: cpu4:1048653)Uplink: 12493: vusb0: set flags 0x4ae06 DEVICE_SCHED_CONNECTED
2026-03-04T19:30:26.146Z In(182) vmkernel: cpu4:1048653)cswitch: VSwitchUplinkPortSetNUMAID:3928: [nsx@6876 comp="nsx-esx" subcomp="vswitch"]Cannot get mem affinity from uplink vusb0[2214592524]: Not supported
2026-03-04T19:30:26.146Z In(182) vmkernel: cpu4:1048653)Uplink: 3392: vusb0: clear flags 0x4ae06 DEVICE_ENS_FLAGS
2026-03-04T19:30:26.147Z In(182) vmkernel: cpu0:1053779)NetSched: 724: vusb0-0-tx: worldID = 1053779 exits
2026-03-04T19:30:26.147Z In(182) vmkernel: cpu2:1053780)NetSched: 724: vusb0-0-tx: worldID = 1053780 exits
Please generate a vm-support bundle and provide a download link to bundle
Dear William Lam.
I have sent a support bundle to your GMAIL address.
I use a file sharing service called Filemail.
Please download the file from the URL provided in the email.
Thank you in advance.
I've shared the bundle with Engr and after they quickly took a look, nothing stood out even with resets. We might need to troubleshoot with a live system. If you can send an email, we can try to coordinate a time that would work.