You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Windows build number: 10.0.19041.84
Dist: Ubuntu 18.04 LTS
I just installed WSL2 on my home computer for the first time and something i notice that i don't see on my work computer is that WSL2 has dramatically lower network speed (wget or git clone tested). Speeds on WSL seem to be about 10-20 kb/s wheras windows download speed seem to be correlating to my ISP spec of 100/10 Mbps or above.
Reacted by Erik B, Rémi Gaudin, ghildebrand, Vincent Rouillé, azumukupoe, Cristiano Passos, strarsis, Maksym, Ivan Kouznetsov, Syntrax and 181 more
Reacted by Tobias Schönberg and Alexandr Solodovnikov
Reacted by Jan Ziniewicz, Dennis Ameling, Thomas Laferriere, Nico, JasonPan, Mark Gaze, Aditya Wibisana, Deepak Jois, Abdalrhman Mohamed, Rahul Arora and 44 more
Edit: After several reboots and adding the related folders as exceptions in Windows Defender as jituanlin 's referred blog pointed out, and then tried removing the exceptions because I wanted to check which folder exception actually helped (so eventually theoretically equivalent to reboots-only, but who knows?), now in WSL Ubuntu Ver. 2 I have down = ~80 Mbit/s & up = ~4 Mbit/s. The upload is still about only 1/10 of the actual limit, but the download is up-to-standard now.
Also, the command speedtest is ~15 Mbit/s faster (download) than speedtest-cli for me.
Old comment: Windows network faster than WSL Ubuntu Ver. 1 which faster than WSL Ubuntu Ver. 2 here:
Windows Ookla on Web browser
down ~88 Mbit/s
up ~38 Mbit/s
WSL Ubuntu Ver. 1 speedtest-cli
down ~32 Mbit/s
up ~4 Mbit/s
WSL Ubuntu Ver. 2 speedtest-cli
down ~3 Mbit/s
up ~4 Mbit/s
Cheers
Reacted by Jean-Daniel, psmldl and Kuznetsov-Artyom
After follow this blog
My network/file access improve more than 5 times speed.
Reacted by Sheldon Nico, Ivan Kouznetsov, Axel Pundang, Peerawat Saikasem, bernardosts, Wellington Rodrigues, Julio Daza, Nguyễn Trí Cường, João Lucas, Joao-victor-a and 1 more
Reacted by CJ Ooi, Alfarish Fizikri, ZeWaka, Gurwinder Singh, Mjatti, Ivan Bulanov, Ivan Vnučec, CrashedSystem, Mohamed ElShahawi, Divyansh Singh and 72 more
Same here. Getting about 7Mbit/s on WSL2 and 30+ in Windows.
Disabling Defender also made no difference for me either.
Reacted by Ankit Shah, Yudai Hayashi, Franklin van Nes, Gagandeep Singh, Toby Cm, Denis Žoljom, Giuseppe Del Campo, KytoSai, Mila Rodriguez, Icaro (Pato) and 3 more
Oddly, I'm getting decent results from the speedtest-cli, but things such as apt update are extremely slow, that is, less than a MB/s, where I'm used to seeing 30-40MB/s on my standard Ubuntu systems...
Speedtest results...
Retrieving speedtest.net configuration...
Testing from Verizon Fios (108.28.56.14)...
Retrieving speedtest.net server list...
Selecting best server based on ping...
Hosted by QTS Data Centers (Dulles, VA) [5.59 km]: 27.576 ms
Testing download speed................................................................................
Download: 427.07 Mbit/s
Testing upload speed......................................................................................................
Upload: 85.70 Mbit/s
Reacted by Gilad Tabul, nbs-jodi, Abdalrhman Mohamed, Rémi Gaudin, Bo Lin, Timor Gruber, didibus, Daniel Porteous (dport), hiiamboris, Ivan Vnučec and 40 more
I just had a crazy hunt with that issue on my Setup. It started with some developers on the team having very slow download speeds while pushing Git changes and downloading docker Container. We using Windows 10 and 11.
Loading a 10 GB test file was in windows around 12 MB while the same link in WSL was around 200KB
I switch from WiFi to LAN, different networks in the Company Infrastructure and even Phone hotspots.
Nothing helped until I used a USB C Ethernet Adapter. Then suddenly it was full speed.
Switching to a USB A Ethernet one. Slow again.
Looking the driver version I saw that USB C was using
Realtek USB FE Family Controller (Version 10.??) while all other (except Wifi) where using
Realtek USB GbE Family Controller (Version 1159)
Some research showed:
10.?? format is the Windows 10 driver
11?? (without the dot) is the Windows 11 driver
FE was using Windows 10 and GBE Windows 11 driver
Updating both to 1157 did nothing
Downgrading both to 10.63 worked.
You can download them from the Realtek site.
But the Wifi is still slow. Downgrading the driver did not help here.
I guess is a issue between windows driver and WSL
For resolve github download network issue i found this guide #6602
setting nameserver 8.8.8.8 (google dns instead of windows incorrect dns ) in /etc/resolve.conf should help.
I also had similar issues recently. For me, only the upload speed was very slow. I tried all the followings with no luck:
switch between connecting to internet via ethernet or wifi
downgrade the ethernet/wifi driver on the host to older versions and update to latest
disable/enable IPv6 on the host ethernet/wifi interfaces
disable/enable LSO of the ethernet/wifi interface on the host via GUI (interface properties -> configure -> advanced)
switch between WSL networking mode NAT and mirrored
disable/enable LSO of the vEthernet* interfaces of the host (powershell Disable-NetAdapterLso / Enable-NetAdapterLso) -- this method actually solved the issue in NAT networking mode, but I couldn't find a way to persist the setting between reboots or even host wifi/ethernet connection changes
on the guest OS (Ubuntu 24.04): adding "TCPSegmentationOffload=false" in the [Link] section of 99-default.link file, so TCP segmentation offload is set to false when the guest OS boots. if you're unsure about the .link file, what it is used for or its whereabouts, I suggest to read first about it: https://manpages.ubuntu.com/manpages/focal/man5/systemd.link.5.html
Reacted by Oleg Yudashkin, Brian Almeida, deslion, Richard Manzoli, EJ Anton Sabal Potot, magodo, haarhoff-frs, Salmaan, laeo, Rafael Galazzi and 3 more
Reacted by Richard Manzoli, Salmaan and Rafael Galazzi
Reacted by Richard Manzoli, Salmaan and Rafael Galazzi
For me this turned out to be an issue with the Virtualbox Host-only network. After disabling those in Control Panel\Network and Internet\Network Connections it was normal.
for anyone still wondering about the issue... I have found out it isn't just WSL2.
I found this roadblock on just straight Ubuntu, no Windows.
Recently updating an Ubuntu installed on a drive (that I haven't used in a while), I found having the same issue, specifically in the Terminal. While using WIFI only.
I have two WIFI things installed, one PCI and one USB. I mean why not - you get faster DL speeds.
I want you to try this - use your phone with USB Tethering for internet.
Following done using Android:
Plug your phone into the computer
(use a data usb-c to USB >=3.0)
You may receive a pop-up to Allow Data or something - Hit 'Allow' or whatever
Go to Settings > Search for Tether
Enable USB Tethering.
I haven't tried Bluetooth tethering
but I suppose that can work...
Only that USB speeds don't have bottlenecks.
Doing this I noticed Terminal DL speeds were normal, or as it should be.
The iwlwifi driver is actually one of those supported by the manufacturer for linux, unlike a lot of other wifi drivers which have been reverse engineered by linux developers, and which don't work optimally at times, so I guess in theory the iwlwifi one should work as well in linux as elsewhere.
...
the speed issue has in some cases been resolved by using one or more driver options which are placed in a file created for the purpose: /etc/modprobe.d/iwlwifi.conf
Some success has occurred using the option: 11n_disable=8 in that created file with the following contents: options iwlwifi 11n_disable=8
If by chance there already is an option somewhere such as: 11n_disable=1, then just change the number to 8 to see if it makes a difference.
Other suggested options include: lar_disable=1 swcrypto=1 bt_coex_active=0, which can be added to the options line to see if they are useful. The process is a bit experimental.
Sometimes the problem has been sourced in the "2.4 GHz vs 5 GHz" issue, which led to the suggested modprobe entry: options cfg80211 cfg80211_disable_40mhz_24ghz=Y
which disables the 40 MHz channels usage on the 2.4GHz band.
fwiw, i generally only have this problem in docker containers now, or in command line linux applications. with recent versions of wsl, anything that is GUI based i get full speed, command line i get around about 300mbps on a 1.2gb link, and in docker, i get up to 150mbps .. (improved from 100mbps cap a few months ago)
If it can help some people, using "MediaTek Wi-FI 6E MT7922 (RZ616) 160MHz PCIe Adapter", I had to revert the update of the driver to an old version to make it work properly with WSL2. With the updated version of the driver, once WSL2 is started, all the computer networks became slow/unstable, the fact that it worked properly using wired connection helped me a lot to understand this.
I also had similar issues recently. For me, only the upload speed was very slow. I tried all the followings with no luck:
* switch between connecting to internet via ethernet or wifi
* downgrade the ethernet/wifi driver on the host to older versions and update to latest
* disable/enable IPv6 on the host ethernet/wifi interfaces
* disable/enable LSO of the ethernet/wifi interface on the host via GUI (interface properties -> configure -> advanced)
* switch between WSL networking mode NAT and mirrored
* disable/enable LSO of the vEthernet* interfaces of the host (powershell Disable-NetAdapterLso / Enable-NetAdapterLso) -- this method actually solved the issue in NAT networking mode, but I couldn't find a way to persist the setting between reboots or even host wifi/ethernet connection changes
* WSL networking mode "mirrored" (.wslconfig)
* using systemd on guest OS (wsl.conf)
* on the guest OS (Ubuntu 24.04): adding "TCPSegmentationOffload=false" in the [Link] section of 99-default.link file, so TCP segmentation offload is set to false when the guest OS boots. if you're unsure about the .link file, what it is used for or its whereabouts, I suggest to read first about it: https://manpages.ubuntu.com/manpages/focal/man5/systemd.link.5.html
Could WSL disable TSO by default on eth0 in NAT mode (or disable LSOv2 on vEthernet (WSL)), and fix hv_netvsc ignoring TCPSegmentationOffload=false in systemd .link files?
Several comments above (Tamas Baroti (@tbaroti), Alexander (@Gordon01), Nicolas HENRY (@nicolashenry), Parijat (@Natzukashi)) hit the same bug: on MediaTek MT7922 (RZ616) driver 3.4.0.x+, multi-segment TSO bursts from WSL2 (NAT mode) wedge the Wi-Fi TX queue, stalling both WSL uploads and host Wi-Fi. Users can't persist a fix because HNS resets vEthernet (WSL) LSO on reboot and hv_netvsc ignores .link TSO settings.
Measured on Win11 26300 + WSL 3.0.5.0 (6.18.58.1) + MT7922:
NAT mode only:mirrored is fine; guest-to-host (172.19.80.1) runs at 240 MB/s with TSO on.
MT7922 driver >= 3.4.0.x:3.3.0.1030 works; 3.4.0.1329+ stalls and spikes host LAN ping to 220-1350 ms.
hv_netvsc ignores .link TSO:TCPSegmentationOffload=false leaves tcp-segmentation-offload: on. Only ethtool works.
Defaulting tso off in NAT mode (keeping gso on) has negligible CPU cost and avoids this out of the box.
Workaround for NAT mode today: roll back MT7922 to 3.3.0.1030 (Catalog ID f754692c-0662-454c-b874-659742cd6e2d), or add /etc/udev/rules.d/90-wsl-tso.rules: ACTION=="add", SUBSYSTEM=="net", KERNEL=="eth*", RUN+="/usr/sbin/ethtool -K %k tso off"
Repro & details
Repro (WSL2 NAT mode, MT7922 >= 3.4.0)
IFACE=$(ip route show default | awk '{for(i=1;i<=NF;i++) if($i=="dev"){print $(i+1); exit}}')
sudo ethtool -K "$IFACE" tso on
head -c 8388608 /dev/urandom > /tmp/8mb.bin
curl -o /dev/null --max-time 20 -X POST --data-binary @/tmp/8mb.bin \
-H 'Content-Type: application/octet-stream' -w '%{speed_upload}\n' \
https://speed.cloudflare.com/__up
# stalls at ~0.01 MB/s; `sudo ethtool -K "$IFACE" tso off` recovers to 20-29 MB/s
Activity
therealkenc commentedon Feb 16, 2020
Screencap
speedtest-clias a starting point.carl-berg commentedon Feb 17, 2020
Okies, here's speedtest on windows, in the browser:

...and here's speedtest from wsl2:

acirulis commentedon Feb 17, 2020
Same here. Especially upload speed was drastically reduced - 36.61 -> 3.85 Mbit/s
guilhermehrcosta commentedon Mar 1, 2020
Hi, same here. My download was drastrically reduced of 200Mbit/s to 2 Mbit/s. Is there a solution?
AndrewGaspar commentedon Mar 7, 2020
I'm hitting this issue, as well. Very frustrating.
kennethnipper commentedon Mar 11, 2020
I'm seeing same issue. Speedtest-cli in bash:

speedtest in Windows:

tin-liu commentedon Mar 14, 2020
Edit: After several reboots and adding the related folders as exceptions in Windows Defender as jituanlin 's referred blog pointed out, and then tried removing the exceptions because I wanted to check which folder exception actually helped (so eventually theoretically equivalent to reboots-only, but who knows?), now in
WSL Ubuntu Ver. 2I havedown = ~80 Mbit/s & up = ~4 Mbit/s. The upload is still about only 1/10 of the actual limit, but the download is up-to-standard now.Also, the command
speedtestis ~15 Mbit/s faster (download) thanspeedtest-clifor me.Old comment:
Windowsnetwork faster thanWSL Ubuntu Ver. 1which faster thanWSL Ubuntu Ver. 2here:down ~88 Mbit/s
up ~38 Mbit/s
down ~32 Mbit/s
up ~4 Mbit/s
down ~3 Mbit/s
up ~4 Mbit/s
Cheers
jituanlin commentedon Mar 14, 2020
After follow this blog
My network/file access improve more than 5 times speed.
rducom commentedon Apr 8, 2020
Same here, really annoying. Disabling AV (defender) doesn't helps

markgaze commentedon May 3, 2020
Same here. Getting about 7Mbit/s on WSL2 and 30+ in Windows.
Disabling Defender also made no difference for me either.
Vildevil commentedon May 15, 2020
Same here :
Windows and WSL :
WSL 2 :
copeland3300 commentedon May 15, 2020
Oddly, I'm getting decent results from the
speedtest-cli, but things such asapt updateare extremely slow, that is, less than a MB/s, where I'm used to seeing 30-40MB/s on my standard Ubuntu systems...Speedtest results...
apt updateresultsoliver-dungey commentedon May 21, 2020
Same issue here, dire network speed in WSL2. Performance with Linux or WSL is fine.
387 remaining items
nielsq commentedon Apr 8, 2025
I just had a crazy hunt with that issue on my Setup. It started with some developers on the team having very slow download speeds while pushing Git changes and downloading docker Container. We using Windows 10 and 11.
Loading a 10 GB test file was in windows around 12 MB while the same link in WSL was around 200KB
I switch from WiFi to LAN, different networks in the Company Infrastructure and even Phone hotspots.
Nothing helped until I used a USB C Ethernet Adapter. Then suddenly it was full speed.
Switching to a USB A Ethernet one. Slow again.
Looking the driver version I saw that USB C was using
Realtek USB FE Family Controller (Version 10.??) while all other (except Wifi) where using
Realtek USB GbE Family Controller (Version 1159)
Some research showed:
10.?? format is the Windows 10 driver
11?? (without the dot) is the Windows 11 driver
FE was using Windows 10 and GBE Windows 11 driver
Updating both to 1157 did nothing
Downgrading both to 10.63 worked.
You can download them from the Realtek site.
But the Wifi is still slow. Downgrading the driver did not help here.
I guess is a issue between windows driver and WSL
AndreiOsipov commentedon Apr 14, 2025
For resolve github download network issue i found this guide #6602
setting nameserver 8.8.8.8 (google dns instead of windows incorrect dns ) in /etc/resolve.conf should help.
tbaroti commentedon Apr 21, 2025
I also had similar issues recently. For me, only the upload speed was very slow. I tried all the followings with no luck:
Then I finally managed to make it work thanks to microsoft/vscode-remote-release#10717 (comment) with the following config:
ravihlb commentedon May 10, 2025
Thank you so much man this also solved it for me. Windows 10 Version 10.0.19045 Build 19045.
Gordon01 commentedon May 23, 2025
In Windows 11 it's very hard to find those settings in GUI. However, this works:
Get LSO settings:
Disable LSO (requires admin privileges):
hedgineer-norm commentedon Jun 1, 2025
For me this turned out to be an issue with the Virtualbox Host-only network. After disabling those in Control Panel\Network and Internet\Network Connections it was normal.
manzoliric commentedon Jul 26, 2025
thank you!
paulo101977 commentedon Aug 16, 2025
It works very well. Thanks!!!!!!!!!!!!!
AmricprogrammerReal commentedon Nov 11, 2025
use awsome linux driver for this thing i increase the internet speed (0V0)
classicrocker883 commentedon Nov 12, 2025
for anyone still wondering about the issue... I have found out it isn't just WSL2.
I found this roadblock on just straight Ubuntu, no Windows.
Recently updating an Ubuntu installed on a drive (that I haven't used in a while), I found having the same issue, specifically in the Terminal. While using WIFI only.
I have two WIFI things installed, one PCI and one USB. I mean why not - you get faster DL speeds.
I want you to try this - use your phone with USB Tethering for internet.
Following done using Android:
(use a data usb-c to USB >=3.0)
I haven't tried Bluetooth tethering
but I suppose that can work...
Only that USB speeds don't have bottlenecks.
Doing this I noticed Terminal DL speeds were normal, or as it should be.
also related - for more info:
https://www.linux.org/threads/how-to-fix-very-slow-download-speed-on-ubuntu-22-04-lts-specially-on-terminal-downloads.46574/
ericblade commentedon Nov 26, 2025
fwiw, i generally only have this problem in docker containers now, or in command line linux applications. with recent versions of wsl, anything that is GUI based i get full speed, command line i get around about 300mbps on a 1.2gb link, and in docker, i get up to 150mbps .. (improved from 100mbps cap a few months ago)
nicolashenry commentedon Jan 16, 2026
If it can help some people, using "MediaTek Wi-FI 6E MT7922 (RZ616) 160MHz PCIe Adapter", I had to revert the update of the driver to an old version to make it work properly with WSL2. With the updated version of the driver, once WSL2 is started, all the computer networks became slow/unstable, the fact that it worked properly using wired connection helped me a lot to understand this.
dropdeadfu commentedon Mar 9, 2026
for me disabling ipv6 on the host network interface solved the issue, at least a workaround
Natzukashi commentedon Apr 2, 2026
Man i want to thank you so much
this was bugging me for so long and you saved me omg.
yukkes commentedon Nov 15, 2026
Could WSL disable TSO by default on
eth0in NAT mode (or disable LSOv2 onvEthernet (WSL)), and fixhv_netvscignoringTCPSegmentationOffload=falsein systemd.linkfiles?Several comments above (Tamas Baroti (@tbaroti), Alexander (@Gordon01), Nicolas HENRY (@nicolashenry), Parijat (@Natzukashi)) hit the same bug: on MediaTek MT7922 (RZ616) driver
3.4.0.x+, multi-segment TSO bursts from WSL2 (NAT mode) wedge the Wi-Fi TX queue, stalling both WSL uploads and host Wi-Fi. Users can't persist a fix because HNS resetsvEthernet (WSL)LSO on reboot andhv_netvscignores.linkTSO settings.Measured on Win11 26300 + WSL 3.0.5.0 (
6.18.58.1) + MT7922:mirroredis fine; guest-to-host (172.19.80.1) runs at 240 MB/s with TSO on.gso_max_size <= 2200) work; 3+ segments (>= 2896) stall at 0.01 MB/s.ethtool -K eth0 tso off(keepinggso on) restores 20-29 MB/s.3.3.0.1030works;3.4.0.1329+ stalls and spikes host LAN ping to 220-1350 ms.hv_netvscignores.linkTSO:TCPSegmentationOffload=falseleavestcp-segmentation-offload: on. Onlyethtoolworks.Defaulting
tso offin NAT mode (keepinggso on) has negligible CPU cost and avoids this out of the box.Workaround for NAT mode today: roll back MT7922 to
3.3.0.1030(Catalog IDf754692c-0662-454c-b874-659742cd6e2d), or add/etc/udev/rules.d/90-wsl-tso.rules:ACTION=="add", SUBSYSTEM=="net", KERNEL=="eth*", RUN+="/usr/sbin/ethtool -K %k tso off"Repro & details
Repro (WSL2 NAT mode, MT7922 >= 3.4.0)
Environment
6.18.58.1-microsoft-standard-WSL2), Ubuntu 26.04PCI\VEN_14C3&DEV_0616&SUBSYS_223C14C3&REV_02Driver bisect (8 MB upload with
tso on)3.3.0.1030-> 19-25 MB/s, host LAN ping 6-9 ms3.4.0.1329,3.5.0.1380,3.6.0.1425-> 0.00-0.01 MB/s (stalls), host LAN ping 222-1352 msRuled out
pktmon: 0 drops in Windows (frames leave Wi-Fi segmented at 1472 B)Disable-NetAdapterRsc, disabling A-MSDU, guest GSO/GRO/MTU 1400, reinstalling the same driver