How to Connect Wi-Fi to Kali Linux in a Virtual Machine: A Complete Guide

Working with Kali Linux on a virtual machine is a standard practice for security testing, but many people face the problem of not having access to Wi-Fi. Virtual environments (VirtualBox, VMware) by default do not transmit wireless adapters to the guest system, limiting themselves to a virtual network bridge via NAT or Host-OnlyAs a result, even experienced users waste hours searching for a solution when the system doesn't see available networks.

In this article we will look at three working connection methods — from simple host redirection to installing drivers for USB adapters. We'll pay special attention to common errors, such as missing interfaces. wlan0 or the inability to scan networks. You will learn how to check hardware compatibility, configure NetworkManager and bypass virtualization limitations without the risk of breaking the main system.

Important: If you are using Kali Linux for pentesting, please remember that Connecting to other people's Wi-Fi networks without permission violates the laws of most countries.All examples in the article are given for working with own networks or testing laboratories.

Why doesn't Kali Linux see Wi-Fi in a virtual machine?

The problem lies in the virtualization architecture. By default, virtual machines do not have direct access to the host's physical devices—including Wi-Fi adaptersInstead, they use virtual network interfaces, which are emulated in software. Here are the key reasons:

  • 🔌 Lack of USB passthrough: The virtual machine does not "see" the physical Wi-Fi adapter, since it is not passed to the guest system.
  • 🖥️ NAT/Host-Only restrictions: These connection modes emulate only a wired network, ignoring wireless interfaces.
  • 🚫 Driver Blocking: Even if you plug in a USB adapter, Kali Linux may not recognize it due to the lack of proprietary drivers (for example, for chips Broadcom or Realtek).
  • 🔄 Conflict with the host: Some adapters (especially Intel AX200/AX210) do not support simultaneous operation in the host and guest systems.

Most users mistakenly try to search for networks through iwlist scan or nmcli dev wifi, not realizing that the virtual machine doesn't physically have a wireless interface. The solution depends on the virtualization method you're using and the hardware installed on the host.

📊 What hypervisor do you use for Kali Linux?
VirtualBox
VMware Workstation
Hyper-V
QEMU/KVM
Another

Method 1: Connecting via USB Wi-Fi adapter (recommended)

The most reliable way is to use an external one USB Wi-Fi adapter, which supports the mode monitor mode (Important for security testing) This method also works on VirtualBox, and on VMware, but requires preliminary configuration.

You will need:

  • 🔌 Compatible USB adapter (we recommend models with chips) Atheros AR9271, Ralink RT5370 or ALFA AWUS036ACH).
  • 📋 Drivers for Kali Linux (usually already included in the kernel, but some chips require additional packages).
  • ⚙️ Virtual machine settings for transferring USB devices.

Setup steps:

  1. Connect the adapter to the host and make sure it is detected in the main system (check via lsusb in the host terminal).
  2. Set up a virtual machine:
    • IN VirtualBox: go to Settings → USB, add a new filter for your adapter and turn it on USB 2.0/3.0.
    • IN VMware: in the VM menu, select Removable Devices → [Your adapter] → Connect.
  • Download Kali Linux and check if the interface appears:
    ip a
    

    iwconfig

    Look for a device like wlan0 or wlp1s0.

  • Install the drivers (if the adapter is not recognized):
    sudo apt update
    

    sudo apt install realtek-rtl88xxau-dkms # For Realtek chips

    sudo apt install firmware-atheros # For Atheros chips

  • Connect to the network through nmtui or iwconfig.
  • Connected the adapter to the host's USB port|

    Added a USB filter to the virtual machine settings|

    I made sure that the adapter is detected in `lsusb`|

    Checked for the presence of the `wlan0` interface in Kali Linux|

    Installed additional drivers if necessary-->

    ⚠️ Attention: Some adapters (eg. TP-Link TL-WN722N versions 3.x) use chips Realtek RTL8188EU, which require manual driver compilation. Check compatibility on the website before purchasing. official Kali documentation.

    Method 2: Bridge via Host Network (without USB Adapter)

    If you don't have an external USB adapter, you can forward the host system's Wi-Fi to the virtual machine via network bridgeThis method is less reliable for pentesting (does not support monitor mode), but is suitable for basic internet access.

    Instructions for VirtualBox:

    1. Open network settings virtual machine and select the mode Network Bridge (Bridged Adapter).
    2. As an interface Please specify your host Wi-Fi adapter (e.g. wlp3s0 or Wi-Fi).
    3. Download Kali Linux and check the network interfaces:
      ip a

      An interface should appear. eth0 (or similar) with an IP address from your local network.

    4. Configure DHCP (if IP is not assigned automatically):
      sudo dhclient eth0

    For VMware:

    1. In the VM settings, select Network Adapter → Bridged: Connected directly to the physical network.
    2. Select your Wi-Fi adapter from the drop-down list.
    3. In Kali Linux, run:
      sudo systemctl restart networking
    Hypervisor Network mode Kali interface Does it support monitor mode?
    VirtualBox Bridged Adapter eth0 ❌ No
    VMware Bridged ens33 ❌ No
    VirtualBox USB Passthrough wlan0 ✅ Yes
    QEMU/KVM PCI Passthrough wlp1s0 ✅ Yes

    ⚠️ AttentionWhen using a bridge, the virtual machine will appear as a separate device on your local network. Some routers may block such connections (especially with non-standard MAC addresses). If an IP address isn't assigned, check your router's DHCP settings or assign a static IP manually.

    Method 3: Sharing Wi-Fi from a Host via Ethernet (Alternative)

    If the previous methods did not work, you can set up access to Wi-Fi via proxying From the host machine. This method is universal, but requires additional settings on the host PC.

    Algorithm of actions:

    1. On the host system (Windows/Linux/macOS) enable Internet sharing:
      • 🪟 Windows: Settings → Network & Internet → Mobile Hotspot (select connection via Wi-Fi, distribute via Ethernet).
      • 🐧 Linux:
        sudo sysctl -w net.ipv4.ip_forward=1
        

        sudo iptables -t nat -A POSTROUTING -o wlp3s0 -j MASQUERADE

        sudo iptables -A FORWARD -i eth0 -o wlp3s0 -j ACCEPT

  • In Kali Linux Configure the network interface to receive IP via DHCP:
    sudo dhclient eth0
  • Check your connection:
    ping 8.8.8.8
    

    curl ifconfig.me

  • This method simulates a connection via a "wire", so monitor mode and other Wi-Fi features will be unavailable. However, it works even in virtual machines without USB passthrough support.

    What to do if the distribution doesn't work?

    1. Check that the host is enabled IP forwarding (cat /proc/sys/net/ipv4/ip_forward should return `1`).

    2. Make sure the host firewall is not blocking traffic between interfaces (sudo iptables -L -v).

    3. In Kali Linux, check that the interface eth0 receives IP from host (ip a).

    4. If you use Windows, disable your antivirus software—it may be blocking network sharing.

    Troubleshooting: Common Errors and How to Fix Them

    Even after proper setup, the connection may not work. Here are common errors and how to fix them:

    • 🔍 wlan0 absent in ip a:
      • Check if the USB adapter is passed to the VM (in VirtualBox (the green indicator next to the USB device should be lit).
      • Update the Kali Linux kernel: sudo apt update && sudo apt full-upgrade -y.
      • Install proprietary drivers: sudo apt install firmware-realtek.
    • 🚫 Operation not permitted when scanning networks:
      • Do it sudo airmon-ng check kill to stop interfering processes.
      • Check if the adapter supports monitor mode: iw list | grep "Supported interface modes".
    • 🔌 No internet when connected to the network:
      • Check the routes: ip routeIf there is no default route, add one: sudo ip route add default via [router_IP].
      • Make sure that the MAC address filter is disabled in your router settings.

    If the adapter is detected, but networks are not scanned, try manually specifying the region:

    sudo iw reg set RU # For Russia
    

    sudo systemctl restart NetworkManager

    Setting up NetworkManager to connect automatically

    By default, Kali Linux uses NetworkManager to manage networks, but it may be disabled or configured incorrectly. To avoid manually connecting each time the VM starts, follow these steps:

    1. Enable NetworkManager (if disabled):
      sudo systemctl enable --now NetworkManager
    2. Add the network to the list of known networks:
      nmcli dev wifi connect "Network_Name" password "password"
    3. Set up auto-connection:
      nmcli connection modify "Network_name" connection.autoconnect yes
    4. Check your connection priority (if there are several networks):
      nmcli connection modify "Network_name" connection.autoconnect-priority 100

    To manage networks through a graphical interface, install GNOME-utilities:

    sudo apt install network-manager-gnome

    After this, a network icon will appear in the upper right corner, through which you can connect to Wi-Fi with one click.

    Security: How to Avoid Breaking Your Network During Testing

    Kali Linux contains tools that can cause damage if not used carefully. disrupt your network or even lead to legal consequences. Follow these rules:

    • 🛡️ Test only your own devices or networks for which you have written permission.
    • 🔄 Use isolated laboratories: For practice, create virtual networks in VirtualBox (mode Host-Only) or use routers in standalone mode.
    • 📡 Limit your transmit power: When working with aireplay-ng or mdk4 use the parameter -x 1 to minimize interference.
    • 🔑 Encrypt your traffic: If you are testing vulnerabilities, use a VPN on the host system to avoid data leakage.

    ⚠️ Attention: Tools like wifite or fern-wifi-cracker Automate attacks on networks. Using them against other people's access points is considered hacking and is punishable by law (in Russia, under Article 272 of the Criminal Code). For legal practice, use testbeds such as Wi-Fi Pineapple or Rogue AP in laboratory conditions.

    If you're just starting to learn about security testing, we recommend starting with legitimate platforms:

    • 🎯 Hack The Box — virtual machines for practice.
    • 📚 TryHackMe — interactive lessons on Wi-Fi security.
    • 🔧 VulnHub — ready-made images of vulnerable systems.

    FAQ: Frequently Asked Questions about Wi-Fi in Kali Linux on a VM

    Is it possible to connect Wi-Fi in Kali Linux without a USB adapter?

    Yes, but with limitations. You can:

    • Use network bridge (Bridged Adapter), but this will only provide Internet access, without the ability to scan networks.
    • Tune Wi-Fi distribution from the host via Ethernet (as described in Method 3).

    For full functionality with Wi-Fi (for example, for airodump-ng) USB adapter is required.

    Kali Linux doesn't detect my USB Wi-Fi adapter. What should I do?

    The problem may be:

    1. Incorrect transfer of USB device in VM. Check the hypervisor settings.
    2. Lack of driversFor chips Realtek RTL8188EU or Broadcom manual installation required:
      sudo apt install dkms git
      

      git clone https://github.com/aircrack-ng/rtl8188eus

      cd rtl8188eus

      sudo make

      sudo make install

      sudo modprobe 8188eu

    3. Conflict with the host systemDisconnect the adapter from the host before transferring it to the VM.
    How to enable monitor mode in Kali Linux on a virtual machine?

    Monitor mode Works only with direct access to the Wi-Fi adapter (via USB passthrough or PCI passthrough in QEMU/KVM). If the adapter is detected as wlan0, execute:

    sudo airmon-ng start wlan0
    

    sudo airodump-ng wlan0mon

    If you get an error ioctl(SIOCSIWMODE) failed: Device or resource busy, stop interfering processes:

    sudo airmon-ng check kill
    Is it possible to use a laptop's built-in Wi-Fi in Kali Linux on a VM?

    Technically possible, but highly not recommended:

    • IN VirtualBox/VMware The built-in adapter is not transmitted to the VM - only through the bridge (Bridged), which does not allow monitor mode.
    • IN QEMU/KVM can be used PCI-passthrough, but this requires:
      • Supports IOMMU in the host BIOS.
      • Disconnecting the adapter from the host system.
      • Manual settings vfio-pci.

    It is much easier and safer to use an external USB adapter.

    After updating Kali Linux, Wi-Fi stopped working. How can I fix it?

    Kernel or NetworkManager updates can break drivers. Try:

    1. Reinstall drivers:
      sudo apt install --reinstall firmware-realtek firmware-atheros
    2. Roll back to the previous kernel version (if the problem appeared after an upgrade):
      sudo apt install linux-image-5.18.0-kali5-amd64 # Replace with your previous version
      

      sudo reboot

    3. Check the download logs:
      dmesg | grep -i wifi
      

      journalctl -u NetworkManager --no-pager | grep -i error