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
dmesgimmediately 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.