Kokil Thapa - Professional Web Developer in Nepal
Freelancer Web Developer in Nepal with 15+ Years of Experience

Kokil Thapa is an experienced full-stack web developer focused on building fast, secure, and scalable web applications. He helps businesses and individuals create SEO-friendly, user-focused digital platforms designed for long-term growth.

Fix Ubuntu WiFi Problems

By Kokil Thapa | Last reviewed: September 2026

When you need to fix Ubuntu WiFi problems, random advice online usually wastes an hour. You toggle airplane mode, reboot twice, and still see no networks—or a connection that drops every few minutes. I've hit this on client laptops in Kathmandu and on my own Ubuntu 24.04 dev machines after kernel updates. The fix is almost never one magic command. It is a short diagnostic chain: confirm the adapter, check the driver, then fix NetworkManager or Netplan. This guide follows that order, with copy-paste commands that work on current Ubuntu LTS releases. For broader network context, see the Ubuntu network troubleshooting guide.

Why won't Ubuntu detect or connect to WiFi?

Ubuntu WiFi failures fall into a small set of root causes. Hardware switch or BIOS disable is still common on older laptops. The kernel may load the wrong driver—or none at all—for Realtek, Broadcom, or Intel adapters. NetworkManager can hold a stale profile after a router password change. Netplan YAML errors break headless or server installs that use systemd-networkd instead of NetworkManager.

Power management is the silent killer. Many Intel and Realtek chips drop association after suspend because iwlmvm or rtw89 power save kicks in too aggressively. A recent apt upgrade can swap the kernel and leave firmware packages out of sync.

Start with symptoms, not guesses. No networks at all points to driver or RF-kill. Networks visible but no internet points to DNS or gateway. Intermittent dropouts often mean power save or router channel congestion. Match the symptom before you reinstall half the system.

Fix Ubuntu WiFi: Symptom FlowWiFi broken?No networksDriver / RF-killConnect failsProfile / authDrops oftenPower / sleepFix driverReset NM profileDisable PSAlways check rfkill and dmesg first
Decision flow to fix Ubuntu WiFi problems based on whether networks appear, auth fails, or links drop after sleep

If you manage servers or client machines professionally, stable networking is part of the job—not a side quest. Our Linux system administration service covers exactly this kind of production troubleshooting on Ubuntu hosts.

How do you diagnose Ubuntu WiFi problems from the terminal?

Before changing config, collect facts in five minutes. These commands work on Ubuntu 22.04 and 24.04 with NetworkManager, which is the default on desktop installs.

Step 1: Confirm the adapter is visible

ip link show
lspci -knn | grep -A3 -i net
lsusb | grep -i wireless

You want a wlan0 or wlp* interface in UP or DOWN state—not missing entirely. Note the kernel driver on the Kernel driver in use: line. If you see Kernel modules: but no driver in use, that is your problem.

Step 2: Check RF-kill and airplane mode

rfkill list
nmcli radio wifi

Soft blocked means software disabled WiFi. Run rfkill unblock wifi and nmcli radio wifi on. Hard blocked usually means a physical switch or BIOS setting—Ubuntu cannot override that from software alone.

Step 3: Scan and inspect connection state

nmcli dev status
nmcli dev wifi list
nmcli connection show --active
journalctl -u NetworkManager -b --no-pager | tail -50
dmesg | grep -iE 'wlan|wifi|iwl|rtl|brcm' | tail -30

journalctl and dmesg often show firmware load failures before the GUI shows anything useful. Copy error strings into the regex tester if you are parsing long logs for patterns across many machines.

Step 4: Test reachability after connect

ping -c 4 192.168.1.1
ping -c 4 8.8.8.8
resolvectl status

Gateway ping OK but no DNS means a resolver issue—not WiFi hardware. See the Ubuntu DNS configuration guide before you chase drivers.

Ubuntu WiFi StackApps / BrowserNetworkManagerwpa_supplicantKernel driver + firmwareWiFi hardware (PCIe / USB)
Layered Ubuntu WiFi stack—failures at any level block connection even when the desktop icon looks fine

How do you fix Ubuntu WiFi driver and firmware issues?

Missing or wrong drivers cause most "no networks found" cases on fresh installs and after major upgrades. Ubuntu ships many drivers in linux-firmware, but Broadcom and some Realtek chips still need extra packages.

Intel WiFi (common on ThinkPads and Dell laptops)

Intel adapters usually use iwlwifi. If dmesg shows firmware file missing errors, reinstall firmware:

sudo apt update
sudo apt install --reinstall linux-firmware
sudo reboot

On kernel 6.x with very new Intel AX cards, ensure your HWE stack is current on 22.04:

sudo apt install linux-generic-hwe-22.04

Realtek USB and PCIe adapters

Realtek RTL88xx series chips may need rtl8812au-dkms or vendor DKMS packages from restricted repos—not random GitHub scripts unless you accept rebuild pain on every kernel update. Prefer Ubuntu packages first:

ubuntu-drivers devices
sudo ubuntu-drivers install

The ubuntu-drivers tool reads PCI IDs and suggests tested packages. This beats guessing from forum posts dated 2019.

Broadcom BCM43xx

Broadcom is the classic Ubuntu WiFi headache. Install the correct variant:

sudo apt install bcmwl-kernel-source
sudo modprobe wl

If wl conflicts with b43, blacklist the open driver:

echo "blacklist b43" | sudo tee /etc/modprobe.d/blacklist-b43.conf
sudo update-initramfs -u
sudo reboot

Official package docs live on Ubuntu network configuration documentation. The Arch Linux wireless wiki is also an excellent cross-distro reference for chip-specific driver names—even when you run Ubuntu.

Adapter familyTypical driverFirst fix to tryCommon pitfall
Intel AX200/AX210iwlwifiReinstall linux-firmwareOld kernel without AX support
Realtek RTL8812AU8812au (DKMS)ubuntu-drivers installRandom GitHub driver breaks on upgrade
Broadcom BCM43xxwl or b43bcmwl-kernel-sourcewl and b43 loaded together
Qualcomm Atherosath9k / ath10kapt update + firmwareCountry code regdom limits channels
USB dongle (unknown)varieslsusb + modinfoUnderpowered USB port on old hardware

On production Laravel hosts I maintain, WiFi is rarely the app server link—but developer laptops feeding those deploys need working wireless. The Ubuntu for developers guide covers keeping a dev environment stable alongside networking fixes.

How do you reset NetworkManager and WiFi profiles?

When networks appear but connection fails—or saved networks loop forever—the profile or NetworkManager state is often corrupt. This happens after router SSID renames, WPA3 rollouts, or botched VPN imports.

Delete and recreate a saved connection

nmcli connection show
nmcli connection delete "Your-SSID-Name"
nmcli dev wifi connect "Your-SSID-Name" password "your-password"

For enterprise WPA2-Enterprise, import certificates again rather than editing stale paths in the keyfile.

Restart NetworkManager cleanly

sudo systemctl restart NetworkManager
sudo nmcli networking off
sudo nmcli networking on

If restart hangs, check for conflicting network stacks. Running systemd-networkd and NetworkManager on the same interface causes fights you will lose. Desktop Ubuntu should use NetworkManager only unless you deliberately switched—see Ubuntu network configuration for coexistence rules.

Regenerate resolv.conf when DNS breaks after WiFi connect

sudo resolvectl flush-caches
sudo systemctl restart systemd-resolved

Split DNS from VPN clients like Tailscale or corporate Cisco AnyConnect can override WiFi resolvers. Disconnect VPN temporarily to isolate the issue.

Reset NetworkManager ProfileList profilesDelete staleRestart NMReconnectBefore: saved WPA2 profilewrong security type after router upgradeAfter: fresh nmcli connectmatches current WPA2 or WPA3 settings
NetworkManager profile reset flow—delete stale saved networks before reconnecting with current router security

How do you configure Netplan for WiFi on Ubuntu Server?

Desktop users rarely touch Netplan. Server and cloud images do. A YAML typo here looks exactly like a dead WiFi chip—you get no wlan0 at boot.

Netplan 1.0 on Ubuntu 24.04 uses /etc/netplan/*.yaml with strict permissions. File mode must be 600. Tabs are forbidden; spaces only.

Example: WPA2-PSK via NetworkManager renderer

network:
  version: 2
  renderer: NetworkManager
  wifis:
    wlp2s0:
      dhcp4: true
      access-points:
        "Office-SSID":
          password: "your-wifi-password"

Apply and debug:

sudo chmod 600 /etc/netplan/01-wifi.yaml
sudo netplan generate
sudo netplan apply
sudo netplan --debug apply

For systemd-networkd renderer with wpa_supplicant, the structure differs. The dedicated Ubuntu Netplan tutorial walks through both renderers with test cases. Netplan reference material is at netplan.readthedocs.io.

On headless installs, keep a USB Ethernet adapter in your bag. One cable saves hours when WiFi config is mid-edit. I've used that trick during remote field deployments where hotel WiFi credentials changed daily.

How do you stop Ubuntu WiFi dropping after sleep or upgrade?

Intermittent WiFi after suspend is so common it deserves its own section. The link comes back in GNOME, then dies sixty seconds later. Or it works until you close the lid.

Disable WiFi power management

sudo iw dev wlp2s0 get power_save
sudo iw dev wlp2s0 set power_save off

Replace wlp2s0 with your interface name from ip link. Make it persistent via a NetworkManager dispatch script or a systemd unit—otherwise reboot resets it.

Create /etc/NetworkManager/conf.d/wifi-powersave-off.conf:

[connection]
wifi.powersave = 2

Value 2 disables power save. Restart NetworkManager after saving.

Fix suspend/resume with Intel iwlwifi

echo "options iwlwifi power_save=0" | sudo tee /etc/modprobe.d/iwlwifi.conf
sudo update-initramfs -u
sudo reboot

After kernel upgrade: rebuild DKMS modules

sudo apt install --reinstall dkms
dkms status
sudo apt autoremove --purge
sudo reboot

Third-party DKMS WiFi drivers break silently when Ubuntu ships a new kernel. If WiFi died right after unattended-upgrades, check dkms status first. Pair this with the Ubuntu security updates guide so you patch safely without surprise downtime.

WiFi Dropout GotchasAfter suspendPower save re-enablediwlmvm firmware hangAfter upgradeDKMS not rebuiltlinux-firmware mismatchStable fix checklistwifi.powersave=2 + iwlwifi power_save=0reinstall DKMS after kernel bump
Fix Ubuntu WiFi dropouts after sleep or kernel upgrade by disabling power save and rebuilding DKMS modules

Router-side checks developers overlook

Not every dropout is Ubuntu. Mixed WPA2/WPA3 transition mode confuses older wpa_supplicant builds. Fixed channel 40 MHz width on crowded bands in dense Kathmandu apartments causes micro-dropouts that look like OS bugs.

Test against a phone hotspot. If Ubuntu is stable on hotspot but not home router, stop editing drivers and fix the AP settings instead.

Live USB verification

Boot an Ubuntu live USB without installing. If WiFi works there but not your installed system, you have a config or driver package problem—not failed hardware. If it fails in live session too, suspect BIOS disablement or dying radio.

Related desktop issues—black screen after resume—share the same suspend stack. The Ubuntu black screen fix guide complements this WiFi workflow when both break after lid-close.

Advanced fixes when standard steps fail

When basics fail, go deeper—but avoid random forum scripts that compile unknown C code as root.

  1. Pin or switch kernel: Hold Shift at boot, pick an older kernel from Advanced options. If WiFi returns, file a bug against the new kernel and stay pinned until fixed.
  2. Regulatory domain: Run sudo iw reg get. Wrong country limits channels. Set permanently with sudo iw reg set NP for Nepal or your ISO code.
  3. MAC randomization clash: Some captive portals reject rotating MACs. Disable per-SSID in NetworkManager connection settings.
  4. Clean install test user: Create a fresh user session to rule out bad GNOME extensions interfering with the network applet.
  5. Hardware log: Run sudo lshw -C network and archive output before RMA—useful when advising clients on warranty claims.

For machines that double as lightweight dev servers, also review Ubuntu server setup and speed up Ubuntu performance so networking fixes sit on a healthy base image.

Ongoing maintenance beats emergency fire drills. Our support and maintenance service includes patch cycles, backup checks, and the kind of "WiFi broke after update" calls small teams cannot staff internally—typically Rs 8,000–15,000/month (~USD 60–110) for a single production VPS or office server, depending on scope.

If you host client sites on Ubuntu—as with the Deployer pipelines I run on shared EC2—network stability on your admin laptop matters less than the server's wired uplink. Still, botched DNS or VPN on your side blocks SSH and deploys. Treat workstation WiFi as part of your hosting and infrastructure workflow, not a personal annoyance alone.

Developers spending hours on connectivity lose billable time fast. Read Ubuntu desktop complete guide for a sane default install that avoids half these issues. Harden the box with Ubuntu security hardening without breaking legitimate wireless management APIs.

Learn more about how I work at about me or browse the home page for other Linux and Laravel resources aimed at builders in Nepal and abroad.

Key Takeaways

  • Run rfkill list, lspci -knn, and dmesg before reinstalling anything—symptoms map to driver, profile, or power-save layers.
  • Use ubuntu-drivers install and linux-firmware reinstall for Broadcom and Intel chips before third-party DKMS scripts from forums.
  • Delete stale NetworkManager profiles with nmcli connection delete when auth fails after router security changes.
  • Set wifi.powersave = 2 and iwlwifi power_save=0 when WiFi drops after suspend or lid-close.
  • Validate Netplan YAML with netplan --debug apply on server installs—typos mimic dead hardware.
  • Test against a phone hotspot and live USB to separate Ubuntu config bugs from router or failing radio hardware.

People Also Ask

Why does Ubuntu show WiFi networks but fail to connect?

Usually the saved NetworkManager profile has the wrong password, outdated WPA type, or a captive portal blocked by custom DNS. Delete the profile and reconnect with nmcli dev wifi connect. If failure is instant, check journalctl -u NetworkManager for secrets or 802.1X errors pointing to certificate or EAP misconfiguration.

How do I enable WiFi when Ubuntu says "No WiFi adapter found"?

First run rfkill unblock all and verify BIOS wireless is enabled. If lspci shows the adapter but no kernel driver binds, install the matching driver via ubuntu-drivers devices or the chip-specific package like bcmwl-kernel-source. USB adapters may need a powered hub if lsusb flickers in and out.

Does Ubuntu 24.04 have more WiFi problems than 22.04?

Not inherently—but 24.04 ships newer kernels and firmware that expose bugs on older Broadcom and Realtek hardware sooner. LTS point releases also enable HWE stacks that change driver behavior. Pinning a known-good kernel temporarily is valid while you wait for fixed linux-firmware packages.

Can I fix Ubuntu WiFi without reinstalling the OS?

Yes, in nearly all cases. Full reinstall rarely fixes driver issues that ubuntu-drivers, firmware reinstall, or profile reset would solve in thirty minutes. Reinstall only after live USB proves the same hardware fails everywhere—and even then, BIOS or hardware service is the real fix.

Get reliable Ubuntu systems without the WiFi guesswork

You can fix Ubuntu WiFi problems systematically: diagnose the stack bottom-up, apply the driver or NetworkManager fix that matches your symptom, then harden against sleep and upgrade regressions. Keep a terminal checklist bookmarked next to the network troubleshooting guide and server install posts you already use for production work. If your team needs hands-on help—workstations, VPS images, or office Linux—contact us and we will trace the failure properly instead of swapping random packages until something sticks.

Frequently Asked Questions

Run nmcli dev wifi list and lspci -knn | grep -A3 Network, reinstall the correct driver if missing, restart NetworkManager with sudo systemctl restart NetworkManager, and disable WiFi power save when connections drop after sleep.

Ubuntu WiFi failures usually trace to a few root causes: a hardware switch or BIOS setting disabling wireless, the kernel loading the wrong driver or none at all for Realtek, Broadcom, or Intel chips, a stale NetworkManager profile after a router password change, Netplan YAML errors on server installs, aggressive power management after suspend, or firmware packages falling out of sync after an apt upgrade. Match symptoms first—no networks means driver or RF-kill; visible networks with no internet points to DNS or gateway; intermittent dropouts often mean power save or router channel congestion.

Start with ip link show and lspci -knn | grep -A3 -i net to confirm a wlan0 or wlp interface exists and note the kernel driver in use. Run rfkill list and nmcli radio wifi to check soft or hard blocks. Scan with nmcli dev wifi list, inspect active connections, and review journalctl -u NetworkManager -b and dmesg for firmware load failures. After connecting, ping your gateway and 8.8.8.8—gateway OK but no DNS means a resolver issue, not a hardware fault. These steps work on Ubuntu 22.04 and 24.04 with NetworkManager.

Usually the saved NetworkManager profile holds a wrong password, outdated WPA type, or custom DNS that blocks captive portals. Delete the stale profile with nmcli connection delete and reconnect using nmcli dev wifi connect. If failure is instant, check journalctl -u NetworkManager for secrets or 802.1X errors pointing to certificate or EAP misconfiguration on enterprise WPA2-Enterprise networks. Router-side mixed WPA2 and WPA3 transition mode can also confuse older wpa_supplicant builds—test against a phone hotspot to isolate the problem.

First run rfkill unblock all and confirm wireless is enabled in BIOS. If lspci shows the adapter but no kernel driver binds, install the matching package via ubuntu-drivers devices or a chip-specific driver like bcmwl-kernel-source for Broadcom. For Intel adapters, reinstall linux-firmware and reboot. USB dongles that flicker in lsusb may need a powered hub on underpowered ports. If the interface is entirely missing from ip link show after these steps, suspect a hard RF-kill switch or failing hardware.

Intel chips usually use iwlwifi—reinstall linux-firmware with sudo apt install --reinstall linux-firmware and reboot. On Ubuntu 22.04 with newer AX cards, install linux-generic-hwe-22.04 for current kernel support. Realtek RTL88xx adapters may need DKMS packages from ubuntu-drivers install rather than random GitHub scripts. Broadcom BCM43xx is the classic headache: install bcmwl-kernel-source, run sudo modprobe wl, and blacklist b43 if both drivers conflict. Always prefer ubuntu-drivers install over forum-posted scripts that break on every kernel update.

List saved profiles with nmcli connection show, delete the broken one with nmcli connection delete "Your-SSID-Name", then reconnect with nmcli dev wifi connect using the current password. Restart NetworkManager cleanly with sudo systemctl restart NetworkManager. If DNS breaks after reconnect, run sudo resolvectl flush-caches and sudo systemctl restart systemd-resolved. Disconnect VPN clients like Tailscale or Cisco AnyConnect temporarily—split DNS from VPN can override WiFi resolvers and mimic a dead connection even when the link is up.

Netplan on Ubuntu 24.04 uses files in /etc/netplan with mode 600, spaces only, no tabs. For desktop-style setups, set renderer: NetworkManager under network version 2, define your wlp interface under wifis with dhcp4: true, and add access-points with SSID and password. Apply with sudo netplan generate, sudo netplan apply, and debug typos using sudo netplan --debug apply. A YAML error here looks exactly like a dead WiFi chip at boot. Keep a USB Ethernet adapter handy on headless installs for recovery when credentials change mid-edit.

Disable WiFi power management with sudo iw dev wlp2s0 set power_save off, replacing wlp2s0 with your interface from ip link. Make it persistent by creating /etc/NetworkManager/conf.d/wifi-powersave-off.conf with wifi.powersave = 2 under [connection], then restart NetworkManager. For Intel iwlwifi chips, add options iwlwifi power_save=0 in /etc/modprobe.d/iwlwifi.conf, run sudo update-initramfs -u, and reboot. Without persistence, reboot resets power save and the dropout returns within sixty seconds of resume.

A recent apt upgrade can swap the kernel and leave firmware packages or third-party DKMS WiFi drivers out of sync. Check dmesg and journalctl for firmware file missing errors, reinstall linux-firmware, and run dkms status to see if modules like rtl8812au failed to rebuild. Reinstall with sudo apt install --reinstall dkms, review dkms status output, autoremove stale packages, and reboot. If WiFi returns on an older kernel from Advanced boot options, pin that kernel temporarily and report the regression rather than chasing random forum compile scripts.

Ongoing support covering patch cycles, backup checks, and post-update WiFi failures typically runs Rs 8,000–15,000 per month (~USD 60–110) for a single production VPS or office server, depending on scope.

Install the proprietary driver with sudo apt install bcmwl-kernel-source, load it with sudo modprobe wl, and reboot. If wl conflicts with the open b43 driver, blacklist b43 by adding blacklist b43 to /etc/modprobe.d/blacklist-b43.conf, run sudo update-initramfs -u, and reboot again. Broadcom BCM43xx is among the most common Ubuntu WiFi headaches on older laptops. The ubuntu-drivers install command reads PCI IDs and suggests tested packages, which is safer than guessing driver names from outdated forum posts.

Yes. Boot an Ubuntu live USB without installing. If WiFi works in the live session but not your installed system, you have a config or driver package problem—not failed hardware. If it fails in live mode too, suspect BIOS wireless disablement or a dying radio. Pair this with a phone hotspot test: stable on hotspot but not home router means fix AP settings like mixed WPA2/WPA3 mode or crowded 2.4 GHz channels rather than reinstalling half your system.

After WiFi connects, ping your gateway with ping -c 4 192.168.1.1, then ping 8.8.8.8. Gateway OK but external IP fails means a routing or ISP issue; both fail means the link may not be fully up. If IP ping works but browsing does not, run resolvectl status—DNS is broken, not WiFi hardware. Flush caches with sudo resolvectl flush-caches and restart systemd-resolved. VPN split DNS from Tailscale or corporate clients can override resolvers; disconnect VPN temporarily to confirm before editing drivers.

Hold Shift at boot and select an older kernel from Advanced options—if WiFi returns, stay pinned until the new kernel is fixed. Check regulatory domain with sudo iw reg get; wrong country limits channels, so set yours with sudo iw reg set NP for Nepal. Disable MAC randomization per SSID if captive portals reject rotating MACs. Create a fresh user session to rule out bad GNOME extensions. Run sudo lshw -C network and archive output before warranty claims. Avoid random forum scripts that compile unknown C code as root on production machines.

Share this article

0 Comments

Leave a comment

Your email is not published. Comments appear once they have been read. Sign in to have your details filled in.

Quick Contact Options
Choose how you want to connect me: