}

Alfa AWUS036ACH Setup: Monitor Mode & Packet Injection on Kali Linux (2026)

Alfa AWUS036ACH Setup: Monitor Mode & Packet Injection on Kali Linux (2026)

Quick answer: The Alfa AWUS036ACH uses the RTL8812AU chipset. As of kernel 6.14 (shipping with Kali Linux 2026.1), this driver is included in the mainline kernel — plug the adapter in and it works. On older kernels, install the DKMS driver from the aircrack-ng/rtl8812au repository.

The AWUS036ACH is one of the most recommended adapters for WiFi penetration testing because it supports both 2.4 GHz and 5 GHz, delivers high transmit power (up to 2000 mW), and has a mature open-source driver. This guide covers both installation methods, how to enable monitor mode, how to test packet injection, and how to troubleshoot common problems.


About the Alfa AWUS036ACH

Specification Detail
Chipset Realtek RTL8812AU
Frequency bands 2.4 GHz + 5 GHz (dual-band)
Maximum throughput 1300 Mbps (867 Mbps on 5 GHz + 433 Mbps on 2.4 GHz)
Transmit power Up to 2000 mW (varies by region/regulatory domain)
Antenna connectors 2x RP-SMA (two 5 dBi antennas included)
USB USB 3.0
Monitor mode Yes
Packet injection Yes
In-kernel since Linux kernel 6.14 (via rtw88 driver subsystem)

The dual-band capability is particularly useful for auditing modern networks: most WPA2/WPA3 deployments operate on 5 GHz channels, and many cheaper adapters only cover 2.4 GHz.


Method A: Kernel 6.14+ In-Kernel Driver (Plug and Play)

Kali Linux 2026.1 ships with kernel 6.14, which includes RTL8812AU support natively through the rtw88 driver. No compilation or DKMS installation is required.

Step 1: Check your kernel version

uname -r

If the output is 6.14 or higher (e.g., 6.14.0-kali1-amd64), you are on a supported kernel. Proceed to the next step. If you see a version below 6.14, use Method B.

Step 2: Plug in the adapter

Connect the AWUS036ACH to a USB 3.0 port. The kernel will detect it automatically.

Step 3: Verify detection with lsusb

lsusb

Look for a line containing the Realtek USB ID for RTL8812AU:

Bus 001 Device 003: ID 0bda:8812 Realtek Semiconductor Corp. RTL8812AU 802.11a/b/g/n/ac 2T2R DB WLAN Adapter

The vendor ID 0bda is Realtek; the product ID 8812 identifies the RTL8812AU chipset.

Step 4: Verify the driver loaded

dmesg | grep rtw88

You should see output similar to:

[  12.345678] rtw88_8822bu 1-1.2:1.0: Firmware version 9.9.11, H2C version 15
[  12.345679] rtw88_8822bu 1-1.2:1.0: new 1T1R mode

The exact module name may appear as rtw88_8812au or rtw88_8822bu depending on the kernel build. Either confirms the driver is active.

If dmesg shows nothing from rtw88, try:

dmesg | grep -i rtl
dmesg | grep -i usb | tail -20

Step 5: Confirm the wireless interface exists

ip link show

You should see an interface named wlan0 (or wlan1 if another adapter is present). The adapter is ready.


Method B: DKMS Driver for Older Kernels (Below 6.14)

If you are running Kali 2025.x or a Debian system with a kernel older than 6.14, you need the out-of-tree DKMS driver maintained by the aircrack-ng project.

Step 1: Install DKMS and build dependencies

sudo apt update
sudo apt install dkms build-essential linux-headers-$(uname -r) git

The linux-headers-$(uname -r) package provides the kernel headers matching your running kernel. This is required for DKMS to compile the module.

Step 2: Clone the driver repository

git clone https://github.com/aircrack-ng/rtl8812au.git
cd rtl8812au

This is the community-maintained fork of the Realtek driver with monitor mode and injection support enabled. The official Realtek driver does not include these capabilities.

Step 3: Install via DKMS

sudo make dkms_install

DKMS copies the source to /usr/src/, registers the module, and compiles it against your current kernel. It also hooks into the kernel update process, so the module is automatically recompiled when you upgrade your kernel.

Step 4: Load the module

sudo modprobe 88XXau

Verify it loaded:

lsmod | grep 88XXau

Step 5: Verify the interface

ip link show

The wlan0 interface should now appear. If it does not, unplug and replug the adapter after loading the module.


Enable Monitor Mode

Once the adapter is detected (via either method), enabling monitor mode follows the same steps.

Kill conflicting processes

NetworkManager, wpa_supplicant, and DHCP clients will interfere with monitor mode. Kill them first:

sudo airmon-ng check kill

This command identifies and terminates all processes that could conflict with monitor mode operation. You will lose your WiFi connection during this step if you are using the same adapter or another managed interface.

Start monitor mode

sudo airmon-ng start wlan0

Replace wlan0 with your actual interface name if it differs. On success, airmon-ng creates a new interface named wlan0mon:

PHY     Interface   Driver      Chipset
phy0    wlan0       88XXau      Realtek Semiconductor Corp. RTL8812AU

                (mac80211 monitor mode vif enabled for [phy0]wlan0 on [phy0]wlan0mon)
                (mac80211 station mode vif disabled for [phy0]wlan0)

Confirm the monitor interface is up:

iwconfig wlan0mon

Look for Mode:Monitor in the output.

Specify a channel (optional)

By default the adapter listens on the channel it was last associated with. For targeted captures, lock to a specific channel:

sudo iwconfig wlan0mon channel 6

Or use iw for 5 GHz channels:

sudo iw dev wlan0mon set channel 36

Test Packet Injection

Packet injection capability is what makes the AWUS036ACH valuable for auditing. Test it with aireplay-ng:

sudo aireplay-ng --test wlan0mon

A successful result looks like:

09:15:03  Trying broadcast probe requests...
09:15:03  Injection is working!
09:15:05  Found 3 APs

09:15:05  Trying directed probe requests...
09:15:05  XX:XX:XX:XX:XX:XX - channel: 6 - 'NetworkSSID'
09:15:07   30/30: 100%

A 100% rate on directed probe requests confirms full injection capability. Rates below 50% usually indicate driver issues, distance to the AP, or channel congestion — not adapter failure.


Troubleshoot Common Issues

Adapter not detected (lsusb shows nothing)

  • Try a different USB port, preferably USB 3.0 (blue port).
  • Try a direct connection — avoid USB hubs, which can cause power issues with the AWUS036ACH's high-power radio.
  • Check dmesg immediately after plugging in: dmesg | tail -20.
  • On Method B, confirm the module loaded: lsmod | grep 88XXau.

Monitor mode fails: ERROR: could not execute command

This usually means the driver does not support the nl80211 interface expected by airmon-ng. With the DKMS driver, try using iwconfig directly:

sudo ifconfig wlan0 down
sudo iwconfig wlan0 mode monitor
sudo ifconfig wlan0 up

Kernel header mismatch after kernel upgrade

After a kernel update, DKMS should recompile the module automatically. If it did not:

sudo dkms autoinstall

If the required headers are missing:

sudo apt install linux-headers-$(uname -r)
sudo dkms autoinstall

Interface disappears after airmon-ng check kill

This is expected behavior. airmon-ng check kill stops NetworkManager, which manages the interface. After you finish testing, restart NetworkManager:

sudo systemctl start NetworkManager

No networks visible in airodump-ng

If airodump-ng wlan0mon shows no networks on 5 GHz channels, the adapter may be locked to 2.4 GHz. Force 5 GHz band:

sudo airodump-ng --band a wlan0mon

The --band a flag restricts scanning to 5 GHz (802.11a/ac) channels.


Adapter Comparison: AWUS036ACH vs AWUS036NHA vs AWUS036ACHM

Feature AWUS036ACH AWUS036NHA AWUS036ACHM
Chipset RTL8812AU AR9271 MT7612U
Bands 2.4 + 5 GHz 2.4 GHz only 2.4 + 5 GHz
Max speed 1300 Mbps 150 Mbps 867 Mbps
Tx power Up to 2000 mW 1000 mW 500 mW
In-kernel driver Kernel 6.14+ Yes (all kernels) Yes (kernel 5.x+)
Monitor mode Yes Yes Yes
Packet injection Yes Yes Yes
Best for Dual-band audits, 5 GHz networks Maximum compatibility, older kernels Compact dual-band, travel

The AWUS036NHA remains the easiest adapter to get working because the AR9271 driver has been in the mainline kernel for over a decade — it works on any Linux kernel without any setup. See the Alfa AWUS036NHA Kali Linux guide for setup instructions.

The AWUS036ACH is the better choice if you need 5 GHz coverage or higher transmit power. On kernel 6.14+ it is now just as plug-and-play as the NHA.

For a broader comparison of compatible adapters, see the best Kali-compatible USB WiFi adapters guide.


Next Steps

With monitor mode and packet injection confirmed, the AWUS036ACH is ready for a full WPA2 audit. Follow the Aircrack-ng WPA2 handshake tutorial to capture a four-way handshake with airodump-ng, force a client reconnect with aireplay-ng -0, and crack the key with aircrack-ng or a GPU-accelerated tool.


Frequently Asked Questions

Q: Does the Alfa AWUS036ACH work on Kali Linux without any driver installation?

Yes, on Kali Linux 2026.1 (kernel 6.14+). The RTL8812AU driver was merged into mainline Linux in kernel 6.14. On earlier Kali releases you need the DKMS driver from github.com/aircrack-ng/rtl8812au. Check your kernel with uname -r to determine which method applies.

Q: Can the AWUS036ACH capture WPA3 handshakes?

The adapter itself is capable — it supports 802.11ac and can operate on any 2.4/5 GHz channel. WPA3-SAE capture support in the software stack (Aircrack-ng, hcxdumptool) is still maturing as of 2026, but the hardware is not the limiting factor.

Q: Why is packet injection not working even though monitor mode is enabled?

The most common causes are: (1) you are still running NetworkManager or wpa_supplicant — run sudo airmon-ng check kill again; (2) the DKMS driver was not compiled with injection support — ensure you cloned github.com/aircrack-ng/rtl8812au and not the official Realtek driver; (3) regulatory domain restrictions — try setting a permissive domain: sudo iw reg set BO. Test again with sudo aireplay-ng --test wlan0mon.