WSL Ubuntu on Windows 11 loses internet connectivity due to misconfigured DNS, stale network interfaces, or firewall blocks. The most effective fix involves resetting the WSL network stack and verifying that the virtual switch allows traffic between the Linux distribution and the host OS. This restores package manager access and general browsing within the terminal environment.
Verify Host Internet Connectivity
Before troubleshooting the Linux subsystem, confirm that the Windows 11 host machine has a working internet connection. If the host cannot resolve domains or load web pages, the issue lies with the physical adapter, router, or ISP rather than WSL. Open PowerShell as Administrator and run
ping 8.8.8.8. If this returns successful replies, your host network is functional. Next, try pinging a domain name like
google.com from PowerShell. Failure here indicates a DNS configuration error on the Windows side.
Check WSL Network Interface Status
Once the host is confirmed online, inspect the internal state of the WSL instance. Launch your Ubuntu terminal and execute
ip addr show. Look for an interface typically named
eth0 or similar. Ensure it has an IP address assigned in the private range (usually starting with 172.x.x.x or 192.168.x.x). If the interface shows no IP or displays a link-local address (169.254.x.x), the DHCP process failed. You can also check the default route by running
ip route. The output should show a default gateway pointing to a valid virtual adapter on your Windows host. Without a correct gateway, packets leave the VM but never reach the outside world.
Reset the WSL Network Stack
Corrupted network configurations are a frequent cause of silent failures. The simplest way to clear these errors is to restart the WSL service entirely. Close all open terminal windows and run the following command in PowerShell:
wsl --shutdown. Wait a few seconds, then launch your Ubuntu distro again. This forces WSL to re-initialize the virtual Ethernet adapter and request a fresh IP lease. In many cases, this single step resolves intermittent connectivity drops caused by stale leases or hung processes. For more complex issues involving moved installations, refer to our guide on
Fixing WSL Not Working After Moving Ubuntu from C to D, which addresses similar infrastructure disruptions.
Configure DNS Resolution Correctly
If you can ping IP addresses like
8.8.8.8 but cannot resolve domain names, your DNS settings are incorrect. WSL often inherits DNS servers from the Windows host, but sometimes these get blocked or become invalid after network changes. Edit the
/etc/wsl.conf file using
sudo nano /etc/wsl.conf. Add the following section to force specific DNS servers:
[network]
generateResolvConf = false
Save the file and shut down WSL with
wsl --shutdown. Then, manually edit the generated resolver file at
/etc/resolv.conf using
sudo nano /etc/resolv.conf. Remove any existing content and add reliable public DNS servers:
nameserver 8.8.8.8
nameserver 8.8.4.4
nameserver 1.1.1.1
Restart WSL and test resolution with
nslookup google.com. This method bypasses faulty host-derived DNS entries and ensures consistent name resolution.
Inspect Windows Firewall and Hyper-V Settings
Sometimes, Windows security features block the virtual switch used by WSL. Check if Hyper-V is enabled, as WSL2 relies on it. Run
systeminfo | findstr /i "hyper-v" in PowerShell. If Hyper-V is listed under roles, ensure that the Virtual Switch is not restricted by third-party antivirus software. Some security suites create custom firewalls that isolate the WSL virtual adapter. Temporarily disable such software to test connectivity. Additionally, verify that the "Private" and "Public" network profiles in Windows Settings allow file and printer sharing, which includes local network discovery for WSL adapters. If you recently imported a distro from another machine, ensure the new path does not trigger permission blocks, as discussed in
Importing Previously Exported WSL Distro: Installing Ubuntu on Windows 11.
Validate Package Manager Access
After applying fixes, test the primary use case: installing packages. Run
sudo apt update. A successful run downloads package lists without hanging or throwing connection errors. If
apt fails while
ping works, the issue may be specific to HTTPS proxies or certificate stores. Ensure no proxy variables are set incorrectly in your shell profile (
.bashrc or
.zshrc). Unset any erroneous
http_proxy or
https_proxy variables if they were copied from a corporate environment where they no longer apply.
Frequently Asked Questions
Why can I ping IPs but not websites?
This symptom confirms a DNS resolution failure rather than a complete network outage. Your WSL instance can reach the gateway and external servers, but it cannot translate domain names to IPs. Updating
/etc/resolv.conf with public DNS servers like Google's 8.8.8.8 usually resolves this immediately.
Does WSL2 require Hyper-V to be fully enabled?
Yes, WSL2 depends on the Hyper-V platform components to manage its lightweight utility VM. While you do not need to enable full Hyper-V management tools, the underlying feature must be active in Windows Features. If Hyper-V is disabled, WSL will fall back to WSL1, which has different networking characteristics and limitations.
How do I check if my WSL version is causing the issue?
Run
wsl -l -v in PowerShell to see the version of each installed distro. WSL2 uses a real Linux kernel and virtual switch networking, whereas WSL1 translates syscalls directly. If you are on WSL1 and experiencing severe network issues, consider upgrading to WSL2 for better isolation and performance, though migration requires exporting and re-importing the distro.
Can third-party antivirus software block WSL internet?
Absolutely. Many endpoint protection tools monitor network traffic and may flag the virtual Ethernet adapter created by WSL as suspicious or untrusted. These tools can drop packets silently. Temporarily disabling real-time scanning or adding an exception for the WSL virtual switch adapter often restores connectivity without compromising overall system security.
What should I do if wsl --shutdown doesn't fix the problem?
If a standard shutdown fails to reset the network state, try restarting the Windows computer entirely. This clears all persistent state in the Hyper-V backend and network drivers. If the problem persists after a reboot, check for Windows Updates that might have introduced bugs in the networking stack, or revert recent driver updates for your physical network adapter.