Working with virtual machines often requires advanced networking capabilities beyond the standard NAT or Bridged mode used by the host's built-in virtual network adapter. Forwarding a physical USB Wi-Fi adapter Direct access to the guest operating system is necessary for testing wireless network security, configuring specific drivers, or using unique hardware features not available through emulation. By default, VMware Workstation or Player virtual machines don't see USB devices connected to the host until you explicitly allow this action through the menu or configuration settings.
In this article, we will examine in detail the process of connecting an external USB Wi-Fi dongle to the virtual environment, we'll discuss the nuances of installing drivers within the guest OS and resolve common compatibility issues. Direct device forwarding makes it inaccessible to the main system (host), transferring full control over the adapter to the virtual machine, which is critical for proper setup of the lab bench.
To get started, ensure the host machine has the latest versions of VMware Tools installed and the USB arbitration service is functioning correctly. Without these components, the guest operating system will not be able to correctly identify and utilize the hardware resources allocated to it by the host.
Preparing the host system and checking compatibility
Before attempting to connect a device to a virtual machine, you must ensure that the virtual machine itself is host system The Wi-Fi adapter is correctly recognized. Open Device Manager in Windows or use the lsusb command in Linux to ensure the hardware is detected correctly and has the latest drivers installed. VMware relies on basic host driver functionality to initially initialize the USB controller.
It is important to understand the difference between network operating modes. Standard mode Bridged Uses the host's MAC address or creates a virtual MAC, passing traffic through the host's physical card, but does not transmit the device itself. For pentesting or deep radio channel diagnostics, this is precisely what is required. USB passthrough, which disables the adapter on the host when connecting to the guest.
⚠️ Important: Make sure that no other programs are running on the host machine that could be taking over the Wi-Fi adapter (for example, ISP connection managers or monitoring utilities), otherwise forwarding to VMware may fail or the device may freeze.
It's also worth checking the USB controller virtualization version in the virtual machine settings. Modern adapters, especially those that support the following standards, Wi-Fi 6 or AC, may require a USB 3.0 (xHCI) controller to provide sufficient throughput and connection stability.
Configuring a USB controller in the virtual machine settings
The first step in the configuration process is to enable USB support in the virtual machine settings. To do this, you must completely shut down the guest OS, as changing hardware settings is often not possible while the machine is running. In the VMware window, go to the menu VM → Settings and find the section related to USB controller.
Here you will need to select the controller type. For most modern adapters, the optimal choice is USB 3.0 (xHCI), as it provides better compatibility with high-speed devices. If your adapter is older or you're experiencing stability issues, you can try switching to USB 2.0 (EHCI), but this may limit data transfer speeds.
Make sure the "Connect at power on" box is checked if you want to automate the process, although for Wi-Fi adapters, manual connection through the menu after system startup is more common.
☑️ Setting up USB in VMware
After applying the settings, start the virtual machine. The software is now ready to accept the external device, and all that remains is to physically connect and forward it.
The process of forwarding a USB Wi-Fi adapter to a guest OS
Connect yours USB Wi-Fi adapter into a free port on the computer. The host system should emit a connection sound and possibly display a notification about the new device. At this point, the adapter is still under the control of the main operating system.
To transfer control of the adapter to a virtual machine, from the top VMware menu, select VM → Removable DevicesIn the list that opens, find the name of your adapter (for example, "Realtek 802.11ac NIC" or "Atheros AR9271"). Hover over the device and select the option. Connect (Disconnect from Host).
VM → Removable Devices → [Name of your Adapter] → Connect (Disconnect from Host)
At this point, you'll notice that the Wi-Fi signal on the host machine has disappeared or the network interface has become disabled, which is normal. The device is now exclusively assigned to the guest OS. A notification about the new hardware connection should appear within the virtual machine, similar to what you would see if you connected it to a physical computer.
What should I do if my device doesn't appear in the list?
If the device doesn't appear in the Removable Devices menu, try reconnecting it to a different USB port, preferably directly to the motherboard, bypassing USB hubs. Also, make sure the VMware USB Arbitration Service is running in Windows (services.msc).
If automatic connection does not work, you can use the Device Manager within the guest OS to find the unknown device and update its configuration, but VMware usually handles the identification itself.
Installing drivers and configuring the network within the virtual machine
After successful forwarding, the guest system will begin searching for drivers. Depending on the operating system installed (Windows, Kali Linux, Ubuntu), this process may be automatic or require manual intervention. Windows often requires downloading drivers from the adapter manufacturer's website to the host machine and transferring them via a shared folder or ISO image.
In Linux distributions such as Kali or Parrot OSMany popular chipsets (Atheros, Ralink) already have built-in support. You can check the adapter's status with the command:
iwconfig
Or a more modern equivalent:
ip link show
If the adapter is detected, you will see a new network interface (for example, wlan0 or wlxmac_address). For full functionality, especially in monitor mode, you may need to install additional packages, such as firmware-realtek or backport-headers.
| Component | Action in the guest OS | Expected result |
|---|---|---|
| Driver | Automatic installation or manual | The advent of wireless interface |
| Opening hours | Configuration via nmcli or iw | Ability to connect to an access point |
| IP Address | Obtaining via DHCP | Having an IP in the same subnet as the router |
| Monitoring | airmon-ng start wlan0 | The interface goes into monitor mode (mon0) |
Please remember that after installing the drivers, you may need to reboot the virtual machine to apply all changes and initialize network services correctly.
Monitor Mode and Security Testing
One of the main reasons why users want to forward a Wi-Fi adapter to VMware is the need to work in the mode Monitor ModeThis mode allows the adapter to capture all packets in the air, not just those addressed to it, which is critical for traffic analysis and security auditing.
Standard VMware virtual network cards don't support this mode, as they emulate a wired connection. A real USB adapter, when passed through, gains direct access to the radio module. To enable this mode in Linux environments, a utility is typically used. aircrack-ng:
sudo airmon-ng start wlan0
If the command succeeds, a new interface is created (eg. wlan0mon), which can be used in Wireshark or KismetIt's important to note that not all adapters support packet injection and monitor mode equally well in a virtual environment due to USB timing issues.
⚠️ Warning: When working in monitor mode and conducting penetration tests, ensure you have written permission from the network owner. Unauthorized interception of traffic is illegal.
For stable operation in monitor mode, we recommend using adapters based on Atheros AR9271 or Realtek RTL8812AU chips, which have proven themselves to be the most compatible with virtual machines.
Diagnosing problems and troubleshooting connection errors
Despite its apparent simplicity, the forwarding process can encounter a number of technical obstacles. A common issue is when the device connects, but after a few seconds, it disconnects or becomes unstable. This may be due to USB port power-saving settings on both the host and the BIOS.
Another common situation: the adapter is visible in the guest's device manager, but is marked as "Device not working properly" (Code 10 or 43). In this case, try removing the device from the device manager and updating the hardware configuration. Switching the host's USB port from the front panel of the case to ports soldered directly to the motherboard also helps.
If you are using Windows on the host and Linux on the guest, make sure that the host's antivirus software is not blocking VMware's low-level access to USB devices, considering it suspicious activity.
Frequently Asked Questions (FAQ)
Is it possible to forward a laptop's built-in Wi-Fi module to VMware?
Technically, this is only possible if the built-in module is connected via USB (which is common on laptops). However, after forwarding, the host machine will lose access to Wi-Fi, leaving you without a network on the main computer unless you use a wired connection (Ethernet) to manage the host.
Why doesn't VMware see my USB Wi-Fi adapter in the list of devices?
Check if the service is running VMware USB Arbitration Service in Windows. Also, make sure the adapter isn't in use by another application on the host. Try reconnecting the device to a different port or restarting the virtualization service.
Will my internet speed decrease when I redirect my adapter?
Speed may be slightly lower than with a native connection due to the overhead of USB virtualization and packet conversion. However, for most tasks, including streaming and testing, the loss is unnoticeable. For maximum speed, use USB 3.0 ports.
Is Wi-Fi adapter forwarding supported in VMware on a Linux host?
Yes, USB support on Linux hosts is excellent. The principle is the same: the device is disconnected from the host and appears in the guest system. On Linux, you sometimes need to add the current user to a group. vmware or plugdev to obtain the necessary access rights.