How to connect a USB Wi-Fi adapter to a VMware virtual machine

Virtualization offers users extensive opportunities for software testing, process isolation, and running different operating systems on a single physical computer. However, the standard VMware Workstation configuration uses network bridging, or NAT, by default, relying on the host's physical network interface. This creates the illusion of complete network independence, but conceals an important nuance: the virtual machine has no direct access to the hardware. Wi-Fi adapter motherboard or external card.

The situation changes dramatically when you need to test specialized wireless network auditing software, run drivers for a specific model in an isolated environment, or use the adapter to share the internet in modes unavailable to the host. In such cases, you need to pass a physical USB device directly to the guest OS, bypassing the standard VMware network settings. This process requires an understanding of the USB controller architecture and proper driver management to avoid hardware conflicts.

In this article, we'll cover all the steps involved in connecting an external wireless module to a virtual environment. We'll cover not only the standard menu tools but also manual configuration methods that can be helpful in complex situations. We'll also address common errors that occur when the system doesn't detect the device or refuses to activate it because the host is busy.

How USB Relay Works in VMware

The fundamental difference between USB forwarding and a regular network setup is the level of abstraction. When you configure a network via NAT or Bridge, VMware emulates a virtual network card that communicates with the host's physical adapter via a software interface. The virtual machine "thinks" it has its own Ethernet cable, but in reality, the traffic is relayed by the host operating system. USB Passthrough works differently: it actually disconnects the device from the host drivers and transfers control over it directly to the guest system.

For this mechanism to be successfully implemented, it is critical to have a working USB controller in the virtual machine settings. VMware emulates various standards, such as USB 2.0 (EHCI) And USB 3.0 (xHCI)If your Wi-Fi dongle supports high-speed data transfer, but an outdated standard is selected in the VM settings, the device may be detected as unknown or may operate unstable. Modern versions of VMware Workstation automatically detect the optimal controller, but a manual check is always a good idea.

⚠️ Attention: When you connect a USB device to a virtual machine, it is immediately disconnected from the host operating system. If you forward a single network adapter, the host will lose internet connection until the device is disconnected from the VM.

It's important to understand that not all devices are equally friendly to virtualization. Some wireless adapter models require specific timings or interrupts that are difficult to emulate in a virtual environment without packet loss. This is especially true for monitoring and packet injection modes used by security professionals. In such cases, stability depends not only on VMware settings but also on the adapter's chipset.

Preparing the virtual machine and host

Before attempting to connect hardware, you need to ensure that the virtualization platform itself is ready to work with the peripherals. The first step should always be checking the version of VMware Tools. This set of utilities and drivers ensures optimal integration between guest and host systems, improving graphical interface performance and, crucially for our purpose, managing USB devices.

Go to the virtual machine settings and find the hardware section. Ensure the USB controller is enabled. In modern interfaces, this is usually displayed as "USB Controller." Make sure "Connect at power on" is checked if you plan to use the device constantly, or leave it optional for flexibility.

☑️ VMware Readiness Check

Completed: 0 / 4

It's also worth paying attention to the driver status in the host system. If the host has specific software from the adapter manufacturer (for example, utilities for antenna configuration or power modes), it may block access to the device for other programs. Ideally, before forwarding, the host should only have basic drivers that provide minimal functionality, or the device should be completely unaffected.

If you're using a laptop with a built-in Wi-Fi module that can't be physically removed, the task becomes more complicated. Built-in modules are often connected via an interface. PCIe, not USB, even if they look like standard wireless cards. PCIe device passthrough (VT-d) is a much more complex procedure, requiring BIOS support and often leading to host instability. Our instructions are specifically designed for external USB adapters.

Step-by-step instructions: connecting via the VMware menu

The easiest and most reliable way to enable the adapter in the guest environment is to use the virtualizer's built-in menu. This method doesn't require editing configuration files and is suitable for most standard use cases. The steps are intuitive, but require careful selection of the specific device from the list.

The sequence of actions is as follows:

  • 📡 Plug your USB Wi-Fi adapter into a free port on your computer and wait until it is detected by the main system.
  • 💻 Start the virtual machine and wait until the operating system is fully loaded.
  • 🖱️ In the top menu of the VMware window, select VM (or Player), then go to Removable Devices.
  • 🔌 Find your adapter in the list (usually it is identified by the manufacturer's name, for example, Realtek, Ralink or TP-Link) and select the option Connect (Disconnect from Host).

After completing these steps, the operating system inside the virtual machine should emit a sound indicating new hardware is connected. A new device will appear in the guest OS's Device Manager, likely marked with a yellow triangle before the drivers are installed. This is normal, indicating that the pass-through was successful and the hardware is now accessible to the system.

It's worth noting that in some cases the menu may be unavailable (grayed out) if the virtual machine doesn't have input focus or if the USB controller is disabled in the settings. Ensure the virtual machine window is active and double-check the hardware settings. Sometimes, briefly disconnecting and reconnecting the device through the same menu helps.

Troubleshooting driver issues in guest OS

Successfully forwarding a device is only half the battle. The second, often more labor-intensive part, is installing the correct drivers within the virtual machine. The guest operating system doesn't have access to the host drivers, so you'll have to reinstall them, just as if you were connecting the device to a new physical computer.

The installation process may encounter several obstacles. First, there may be no internet connection in the virtual environment (we're trying to set it up or test the adapter). Download the necessary driver installation files to the host in advance and transfer them to the virtual machine via a shared folder (Shared Folders) or by dragging the file with the mouse if the Drag-and-Drop function is enabled.

Problem Probable cause Solution method
Error code 10 (Unable to start) Resource conflict or driver failure Delete the device in the device manager, update the hardware configuration
The device is not detected Insufficient power to the USB port Use a USB hub with external power
Slow connection speed Working in USB 1.1 mode Switch the controller to USB 3.0 in the VM settings
Blue screen (BSOD) when connecting Driver incompatibility with the kernel Use drivers in compatibility mode

Particular attention should be paid to the system architecture. If your virtual machine is 64-bit and drivers are only available for 32-bit systems (or vice versa), the installation will fail. Check the guest OS bitness in the system properties. Also, for older adapters, you may need to manually select the driver from the list in Device Manager by specifying the path to it. .inf file.

What should I do if the driver doesn't install automatically?

In Device Manager, right-click the unknown device -> Update driver -> Browse my computer -> Choose from a list of available drivers. If the adapter is common (for example, based on the RTL8812AU chip), the system may automatically suggest a compatible driver from its database, even without an internet connection.

Setting up operating and monitoring modes

For regular users, the "Client" mode is sufficient for connecting to an access point. However, information security professionals often use VMware to run distributions like Kali Linux or Parrot OS, where monitoring mode is required (Monitor Mode) and packet injection. Standard Windows or Linux drivers installed automatically often do not support these features.

In Linux environments, command-line utilities are used to switch the interface to the desired mode. First, you need to stop any processes that may be occupied by the interface. After that, you can change the adapter's operating mode. This is a critical step in auditing wireless networks.

sudo ip link set wlan0 down

sudo iw dev wlan0 set type monitor

sudo ip link set wlan0 up

In Windows, the situation is more complex, as standard drivers rarely allow switching operating modes on the fly. This often requires installing specialized drivers bundled with penetration testing utilities (for example, Aircrack-ng for Windows or specific driver builds from Realtek). Without these modified drivers, the adapter will only work in managed client mode.

📊 Which Wi-Fi adapter operating mode do you need?
Internet Only (Client)
Access Point (AP) mode
Traffic Monitoring (Monitor)
All modes at once

It's worth remembering that enabling monitoring mode makes the adapter invisible to regular network lists. It begins "listening" to the airwaves on a specific frequency. To return to normal operation, you must reverse the procedure of switching the interface type to managedErrors at this stage are often related to the interface being occupied by other network services of the guest OS.

Common mistakes and how to fix them

Despite the streamlined process, users often encounter situations where the device simply doesn't appear in the list of available devices for forwarding, or the connection succeeds but no data is transferred. One of the most common causes is the host system taking over the device. Windows is very protective of its drivers and can block VMware access.

To resolve this issue, you can temporarily disable the Wi-Fi autoconnect service on the host, or manually disable the device in the host's Device Manager before attempting forwarding. Restarting the service also helps. VMware USB Arbitration ServiceThis is a system service that manages the redistribution of USB devices between the host and guest.

⚠️ Attention: If you're using a laptop with hybrid graphics or a complex USB power-saving system, the adapter may disconnect when the VM goes into the background. Disable the "Auto Protect" feature in VMware settings to avoid connection interruptions.

Another issue is insufficient bus bandwidth. If you're passing an 802.11ac or ax (Wi-Fi 5/6) adapter through USB 2.0 emulation, you won't be able to achieve the advertised speeds. Make sure your configuration file .vmx or the machine settings are set to use xHCI controller. For high-speed adapters, this is a mandatory requirement.

In some cases, antivirus software on the host may block virtual machine attempts to access network interfaces, interpreting this as suspicious activity. Adding VMware processes to the antivirus exceptions often resolves the issue of unexpected shutdowns.

Alternative methods and network bridges

If direct USB forwarding is not possible or causes instability, it is worth considering an alternative - the mode Bridged AdapterIn this case, the VMware virtual network card is bound to the host's physical Wi-Fi adapter. The VM receives its own IP address from the router and operates on the network as a fully-fledged, independent node.

This method is ideal for general surfing, downloading files, and using network services that don't require direct control over the adapter hardware. Configuration is performed via Edit -> Virtual Network Editor, where you need to select Bridged mode and specify a specific physical adapter, rather than "Automatic." This ensures that VM traffic will go over Wi-Fi, not Ethernet, if both are connected simultaneously.

However, this method is unsuitable for tasks requiring low-level access. It can also create isolation issues, as the VM becomes visible on the local network just like other devices. The choice between USB forwarding and network bridging depends solely on your ultimate goals.

FAQ: Frequently Asked Questions

Is it possible to forward a laptop's built-in Wi-Fi module to VMware?

Technically, this is extremely difficult and often impossible using standard means. Integrated modules typically connect via the PCIe bus, while VMware Workstation only redirects USB. PCIe redirection requires BIOS support for VT-d/IOMMU technology and complex configuration, which often leads to host instability. An external USB adapter is recommended.

Why is the Wi-Fi speed in the virtual machine slower than on the host?

A decrease in speed can be caused by several factors: the overhead of USB emulation, the use of the older USB 2.0 standard instead of 3.0, or unoptimized drivers within the guest OS. CPU load also plays a role, as processing network packets in a virtual environment requires computing resources.

How do I return the Wi-Fi adapter back to the host?

To do this, simply disable the device in the virtual machine menu (VM -> Removable Devices -> Disconnect) or simply physically disconnect the USB cable. The host system will automatically detect the device and attempt to reinitialize its drivers. If this doesn't happen, try reconnecting the adapter to a different port.

Does VMware Workstation Player support USB redirection?

Yes, the free version of Player also supports USB device forwarding. The functionality is identical to the paid Workstation Pro version, but the interface may be slightly simplified. The settings path is: Player -> Manage -> Removable Devices.